Zrobiłem już aplikację, która wysyła polecenia do aktywowanego okna. Chcę móc korzystać z komputera podczas mojego procesu, ponieważ gdy tylko przełączę fokus na inne okno, naciśnięcia klawiszy wysyłane za pomocą klawiszy wysyłania zostaną przeniesione do okna, które właśnie przełączyłem.Jak wysłać naciśnięcia klawiszy do okna bez konieczności aktywowania go za pomocą interfejsu API systemu Windows?
Obecnie używam FindWindow, IsIconic i ShowWindow z Windows API. Muszę sprawdzić, czy okno jest tam z FindWindow i ustawić mój obiekt na konkretne okno, które jest zwracane z tym wywołaniem, wtedy sprawdzam, czy jest on zminimalizowany z IsIconic i wywołuje ShowWindow, jeśli tak jest, i wreszcie muszę zadzwonić Interakcja.AppAktywuj, aby ustawić ostrość na to okno. Wszystko to odbywa się, zanim jeszcze wyślę kluczowe pociągnięcia. Wygląda na to, że powinien istnieć sposób wysyłania naciśnięć klawiszy bez konieczności wyświetlania okna i aktywowania go. Najważniejsze, że podczas gdy moja aplikacja uruchamia naciśnięcia klawiszy, nic nie mogę zrobić na moim komputerze.
Z jakiego systemu operacyjnego korzystasz? –
Używam systemu Windows Vista. Korzystam również ze środowiska .NET 3.5 SP1 z Visual Studio 2008 w języku C#. – SlipToFall
Istnieją powody, dla których nie można skierować klawiatury na nic poza aktywnym oknem. Są trochę subtelne, ale są tam. –