begin process at 2008 07 20 23:17:41
1 213 505 membres
406 nouveaux aujourd'hui
14 167 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : aidez moi [ Archives / Au secours ] (supergrey)

aidez moi le 10/03/2004 22:55:30

supergrey
J'ai pris ce code sur msdn et j'arrive pas a le faire marcher ca me dit que GlobalUnlock ne peut pas convertir de 'void *' vers 'char *'


HWND hwnd=GetClipboardOwner();
HGLOBAL hglb;
LPSTR lpstr;
if (OpenClipboard(hwnd))
{
hglb = GetClipboardData(CF_TEXT);
lpstr = GlobalLock(hglb);


GlobalUnlock(hglb);
CloseClipboard();
}


Merci !

Re : aidez moi le 10/03/2004 23:31:37

BruNews
(Admin CS)
void* ou char*, c'est idem toujours un pointeur 32 bits, suffit de mettre un cast.
Tu es tetu, je te dis ou c'est dans Petzold, ben nenni.
On y croit pas.

ciao...
BruNews, Admin CS, MVP Visual C++

Re : aidez moi le 11/03/2004 09:00:17

supergrey
Petzold??? c'est quoi?
J'ai regardé tes source et j'arrive pas a les faire marcher.
'cast' c'est quoi?

Re : aidez moi le 11/03/2004 09:16:31

vbnul
Un cast sert à convertir des types, dans ton cas tu dois utiliser (char*) :
GlobalUnlock((char*)hglb);

vbnul

Re : aidez moi le 11/03/2004 09:30:50

BruNews
(Admin CS)
Petzold, une reference de win32, auteur de cela:
http://brunews.free.fr/brunews/download/CP5.zip
http://brunews.free.fr/brunews/download/CP5Sources.zip

Je t'avais meme indique le chapitre 12.

ciao...
BruNews, Admin CS, MVP Visual C++

Re : aidez moi le 11/03/2004 10:36:49

supergrey
J'ai trouvé c'est bon. Ce que j'attendais c'était ca:


char buff[32768];

if(OpenClipboard(NULL))
{
strcpy(buff, (char*)GetClipboardData(CF_TEXT));
CloseClipboard();
}


je pense que ca pourra servir a d'autre.

Re : aidez moi le 19/03/2004 15:03:58

totodude
Bonjour tout le monde,

j'essaie moi aussi d'utiliser le clipboard dans une application, mais je commence à desespéré.

je voudrais réaliser une application qui réalise une impression écran et découpe un tableau sur l'image ainsi enregistrée.

pour ca
1) je réalise mon impression écran

keybd_event(VK_SNAPSHOT,1,0,0);

2) j'ouvre mon clipboard

::OpenClipboard(NULL);

3) je récupère ce qu'il y a dedans
HBITMAP* hClip = (HBITMAP*)GetClipboardData(CF_BITMAP);

4) je découpe l'image
CImage cImage;
cImage.Attach(*hClip);
HDC hImage=NULL;
cImage.Draw(hImage, 100, 100, 100, 100);

5) je remet dans le clipboard
EmptyClipboard();
SetClipboardData(CF_BITMAP, hImage);


6) je referme
CloseClipboard();

mon prog ne marche pas, j'ai beau cherché pourquoi j'y arrive pas.
quelqu'un aurait une solution ou une suggestion pour m'aider ??? merci infiniment

Cheers ;)
tom


Classé sous : hwnd, lpstr, hglb, globalunlock

Participer à cet échange

Livres en rapport

Pub



Appels d'offres

Dessins techniques
Budget : 60€
Animation Flash - Doma...
Budget : 370€
Application flash medi...
Budget : 1 000€

Snippets en rapport

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Boutique

Boutique de goodies CodeS-SourceS