| Autor |
Beitrag |
Diamond
      
Beiträge: 64
Erhaltene Danke: 1
Windows 7 Prof, OS X 10.8
Delphi XE Architect, XCode 4.4
|
Verfasst: Do 17.04.08 10:48
hi
hab hier mal so ne kleine prozedur:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| Const DIK_M : integer = $32; DIK_O : integer = $18; DIK_RSHIFT : integer = $36; var flag : integer; begin keybd_event(0, DIK_RSHIFT,flag,0); Sleep(100); keybd_event(0, DIK_M,flag,0); Sleep(100); keybd_event(0, DIK_M,KEYEVENTF_KEYUP,0); keybd_event(0, DIK_RSHIFT,KEYEVENTF_KEYUP, 0); Sleep(100); keybd_event(0, DIK_O,flag,0); Sleep(100); keybd_event(0, DIK_O,KEYEVENTF_KEYUP,0); |
geschrieben werden sollten die buchstaben so: Mo
geschrieben werden die buchstaben aber: MO
in diesem fall soll es nicht das schlimmste sein aber ich hab eigentlich vor noch andere programme in dieser richtug zu schreiben wo es durchaus mal auf sowas ankommt ;)
hab da n problem mit "KEYEVENTF_KEYUP" drin denk ich
tastatureingaben sollen global in allen anwendungen laufen deshalb keine VKs
programmiere mit delphi 7
hab gelesen keybd_event soll veraltet sein, find auch nichts in der delphihilfe drüber
aber denk nicht dass es daran liegt, da er die tasten ja alle drückt... nur nicht wieder loslässt.
|
|
Diamond 
      
Beiträge: 64
Erhaltene Danke: 1
Windows 7 Prof, OS X 10.8
Delphi XE Architect, XCode 4.4
|
Verfasst: Do 17.04.08 13:57
sprachlos?
sorry leute aber is echt wichtig..
hab ich da nen programmierfehler drin, funktioniert es nicht mit den anweisungen oder ist das ein bug in delphi 7?
thx
|
|
SAiBOT
      
Beiträge: 323
Erhaltene Danke: 6
XP SP2; 7
D7; D2009
|
Verfasst: Sa 26.04.08 08:11
versuchs mit PostMessage, dabei benötigst du allerdings das Handle!
Bsp:
Delphi-Quelltext 1: 2:
| PostMessage(FindWindow(nil,PChar(ParamStr(0))), WM_CHAR, Ord('M'),0); PostMessage(FindWindow(nil,PChar(ParamStr(0))), WM_CHAR, Ord('o'),0); |
|
|
toms
      
Beiträge: 1099
Erhaltene Danke: 2
|
Verfasst: Sa 26.04.08 08:32
|
|
Jakob_Ullmann
      
Beiträge: 1747
Erhaltene Danke: 15
Win 7, *Ubuntu GNU/Linux*
*Anjuta* (C, C++, Python), Geany (Vala), Lazarus (Pascal), Eclipse (Java)
|
Verfasst: Sa 26.04.08 22:31
Ich würde es einfach so machen - wenn schon mit keybd_event:
Delphi-Quelltext 1: 2: 3: 4: 5: 6:
| keybd_event(VK_SHIFT, 0, 0, 0); keybd_event(Ord('M'), 0, 0, 0); keybd_event(Ord('M'), 0, KEYEVENTF_KEYUP, 0); keybd_event(VK_SHIFT, 0, KEYEVENTF_KEYUP, 0); keybd_event(Ord('O'), 0, 0, 0); keybd_event(Ord('O'), 0, KEYEVENTF_KEYUP, 0); |
|
|
Diamond 
      
Beiträge: 64
Erhaltene Danke: 1
Windows 7 Prof, OS X 10.8
Delphi XE Architect, XCode 4.4
|
Verfasst: Di 29.04.08 10:45
thx für die antworten
habs noch geschafft es selbst zu lösen über folgenden befehl
Delphi-Quelltext 1: 2: 3: 4:
| keybd_event(VK_SHIFT, DIK_SHIFT,0,0); keybd_event(VK_M, DIK_M, 0,0); keybd_event(VK_M, DIK_M, KEYEVENTF_KEYUP,0); keybd_event(VK_SHIFT, DIK_SHIFT, KEYEVENTF_KEYUP,0); |
so lässt er dann doch noch die tasten wieder los ^^
|
|
|