Bonjour, je cherche a coller le contenu du press_papier on utilisant keybd_event ou postmessage
Bonjour, je cherche a coller le contenu du press_papier on utilisant keybd_event ou postmessage
Simuler un Ctrl+V ! ... un sujet de 2006, à tenter ... mais je suppose que l'avais déjà trouvé avant de poser la question, quel est ton problème ?
Il te manque le Handle ?
WM_PASTE faut juste l'envoyer et avant d'avoir dans le presse-papier, selon le control ciblé, il ira chercher ce qu'il lui faut, un Edit par exemple ne prend que le CF_TEXT
C'est directement le Handle du Control et non celui de l'application/fenêtre
Si tu peux envoyer le texte directement comme dans le sujet Envoyer une chaine a une application externe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SendMessage(HwndEdit, WM_SETTEXT, 0, Longint(lpString)); // lpString est un PChar SendMessage(HwndEdit, CM_TEXTCHANGED, 0, 0); // HwndEdit FindWindow fourni via le nom, faut connaitre comme est fichu l'application cible
Enfin ça doit être un truc comme ça
Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 keybd_event(VK_CTRL, 0, 0, 0); keybd_event(0x4C, 0, 0, 0); keybd_event(0x4C, 0, KEYEVENTF_KEYUP, 0); keybd_event(VK_CTRL, 0, KEYEVENTF_KEYUP, 0);
la version plus ambitieuse, je te laisse traduire le C
Code c++ : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 void Paste() { INPUT inputs[4] = {}; ZeroMemory(inputs, sizeof(inputs)); inputs[0].type = INPUT_KEYBOARD; inputs[0].ki.wVk = VK_LWIN; inputs[1].type = INPUT_KEYBOARD; inputs[1].ki.wVk = 'L'; inputs[2].type = INPUT_KEYBOARD; inputs[2].ki.wVk = 'L'; inputs[2].ki.dwFlags = KEYEVENTF_KEYUP; inputs[3].type = INPUT_KEYBOARD; inputs[3].ki.wVk = VK_LWIN; inputs[3].ki.dwFlags = KEYEVENTF_KEYUP; UINT uSent = SendInput(ARRAYSIZE(inputs), inputs, sizeof(INPUT)); }
Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !![]()
Attention Troll Méchant !
"Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
L'ignorance n'excuse pas la médiocrité !
L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
Il faut avoir le courage de se tromper et d'apprendre de ses erreurs
Partager