Předmět Autor Datum
msdn.microsoft.com a najdi si WM_KEYDOWN
MM.. 17.10.2007 16:45
MM..
... prip. si najdi aj fciu SendInput, alebo keybd_event, ale vpodstate by mal stacit aj WM_KEYDOWN a…
MM.. 17.10.2007 16:59
MM..
V podstatě takto jsem to zkoušel. Tam je problém, že se nějakým způsobem musí nastavit i lParam (dru…
HNUSAq 17.10.2007 17:07
HNUSAq
Ty nevies ani citat? Nie, nastavenie lparam ani wparam problem nie je. problem je ze nevies co robis…
MM.. 17.10.2007 17:14
MM..
http://www.devguru.com/Technologies/wsh/quickref/ws hshell_SendKeys.html Pokud jsi to chtěl pro jin…
host 17.10.2007 16:54
host
Ahoj, tam je problém, že SendInput či SendKeys ty klávesy předávají jen aplikaci, která ma focus. Já…
HNUSAq 17.10.2007 17:05
HNUSAq
tak od teba by som SW nechcel ani zadarmo. Preco si najprv nepozres MSDN a neprecitas si trochu o ke…
MM.. 17.10.2007 17:10
MM..
Nechtěj :)) ale i přesto Ti moc děkuju. Pomohl jsi mi, už to funguje ;-)
HNUSAq 17.10.2007 17:21
HNUSAq
Este nieco kedze si pisal ze to posielas aplikacii ktora nema focus (som to predtym nejak prehliadol… poslední
MM.. 17.10.2007 17:27
MM..

Ahoj,
tam je problém, že SendInput či SendKeys ty klávesy předávají jen aplikaci, která ma focus.
Já pomocí PostMessage posílám ty zprávy jiné aplikaci (ke které mám handle).

Našel jsem řešení v Delphi (http://www.delphitricks.com/source-code/windows/sim ulate_the_pressing_of_keyboard_keys.html), fce PostKeyExHWND, akorát bych to potřeboval dostat do VB. Potřebuji vlastně jen nějak přijít na to, jaké wParam a lParam mám poslat. Zkoušel jsem je "odkoukat" pomocí Spy++, ale nepodařilo se mi je zopakovat. Ještě budu laborovat.
Při nejhorším udělám delphi app, která jen provede požadované stisky kláves a ukončí se :-D

tak od teba by som SW nechcel ani zadarmo.
Preco si najprv nepozres MSDN a neprecitas si trochu o keyboard input? Stav klaves alt atd sa neposiela cez wparam a lparam ale vo Win su viacere mechanizmy ktore to beru do uvahy (najprv na systemovej a potom na aplikacnej urovni) a preto to nie je tak easy ako by si si to predstavoval.
Ak su obe aplikacie tvoje, tak to nerob cez klavesy ptz to je nebezpecne, ale cez posielanie napr. WM_USER+neco, alebo posielanim priamo menu commandov (WM_COMMAND)
Alebo si pozri tu fciu SendInput

Este nieco kedze si pisal ze to posielas aplikacii ktora nema focus (som to predtym nejak prehliadol), tak SendInput nemozes pouzit (to by malo byt pre cely system), ale mohlo by ti este pomoct GetKeyboardState a SetKeyboardState, to je podla MSDN thread-specific, ak by ti to neslo urobit posielanim WM_KEYDOWN.

Zpět do poradny Odpovědět na původní otázku Nahoru