[bcb]czy SendMessage, keyb_event jakies inne?

0

czy jest jeszcze jakas inna metoda symulowania wciskania klawiszy ? dwie poprzednie dzialaja, jednak aplikacja w ktorej chce uruchomic swoj program "blokuje" je i z wcisniecia klawisza nici :(

0

zainteresu sie hookiem systemowym journal_record i journal_palyback czy jakos tak...

0
sopociek napisał(a)

czy jest jeszcze jakas inna metoda symulowania wciskania klawiszy ? dwie poprzednie dzialaja, jednak aplikacja w ktorej chce uruchomic swoj program "blokuje" je i z wcisniecia klawisza nici :(

Wydaje mi się, że jeżeli SendMessage nie działa, to już nic nie zadziała, ponieważ Windows jest oparty właśnie na systemie komunikatów, które bezpośrednio (np. za pomocą SendMesage, PostMessage) sa wysyłane do okien, lub też pośrdnio (za pomocą obudowujacych to funkcji keyb_event, SendInput) są wysyłane.
O co chodzi z tym blokowaniem, może cos robisz źle. Jeżeli aplikacja reaguje na "normalne" naciśnięcie klawisza to powinna też reagować na komunikaty.

0

Aplikacja nie ma możliwości zablokowania SendMessage, keyb_event, ani innych tego typu funkcji, bo system dzięki nim modyfikuje bufor wejściowy systemu. Gdyby blokowała je - blokowałaby wejście z klawiatury całkowicie.

Nigdy o czymś takim nie słyszałem, by dało się to zablokować..

0

z tego co ja sie na tym znam to jedna aplikacja nie moze kazac drugiej 'wcisnac klawisz' za pomoca zwyklego PostMessage. trzeba uzyc hookow.

0
vixen03 napisał(a)

z tego co ja sie na tym znam to jedna aplikacja nie moze kazac drugiej 'wcisnac klawisz' za pomoca zwyklego PostMessage. trzeba uzyc hookow.

To znaczy, że nie orientujesz się zbytnio w temacie. Nie trzeba używać żadnych hooków, które zresztą służą do przechwytywania komunikatów a nie do ich wysyłania.

0

gwoli scislosci:

Win32 Developer's Refernce napisał(a)

The JournalPlaybackProc hook procedure is a callback function that inserts mouse and keyboard messages into the system message queue. Typically, an application uses this hook procedure to play back a series of mouse and keyboard messages recorded previously by the JournalRecordProc hook procedure

0

SendInput wystarczy. Na 100% (sam ostatnio dużo z tym pisałem i nie znalazłem, by dało się to "zablokować").

keyb_event to pochodna tej funkcji. Też możesz jej swobodnie używać. Żadne hook'i nie są Ci potrzebne.

1 użytkowników online, w tym zalogowanych: 0, gości: 1