Бьюсь весь день. Задача послать комбинацию окну Ctrl+C - в ответ приложение заполнит буфер обмена. 1) для начала сделал так PostMessage(h,WM_SYSCOMMAND,SC_RESTORE,0); SetForegroundWindow(h); keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL, 0), 0, 0); keybd_event(Ord('C'), MapVirtualKey(Ord('C'), 0), 0, 0); keybd_event(Ord('C'), 0, KEYEVENTF_KEYUP, 0); keybd_event(VK_CONTROL, MapVirtualKey(VK_CONTROL,0), KEYEVENTF_KEYUP, 0); все работает. но хотелось бы без SetForegroundWindow Сет трейд инпут - не заработал, не предлагать. 2) Сейчас подргужаю в приложение свою DLL proc DllEntry hInstDLL, reason, reserved .if [reason]=DLL_PROCESS_ATTACH invoke CreateThread,0,0,main,0,0,0 .endif mov eax,TRUE ret endp main: call [adres] jmp main adres dd XXXXXXXXh где adres - адрес функции которая вызывается при обработке Ctrl+C но к сожалению нормально отрабатывает вызов только один раз. второй вызов функции происходит намного дольше, а на деле это выглядит как зависание ГУИ. Есть мысли почему такое может быть?
Такое уточнение В отладчике нахожу вызов функции и зацикливаю - функция выполняется без проблем много раз. в своем же коде call [adres] call [adres] Второй раз функця выполняеся намного дольше, вешает гуи