В Gecko 2.0 (Firefox 4) как вы взаимодействуете с (отправляете сообщения Windows) вкладке, которая в данный момент не сфокусирована? - PullRequest
0 голосов
/ 09 марта 2011

Скажите, что вы автоматизируете Firefox, и вы хотите делать сумасшедшие вещи, такие как эмуляция простого нажатия клавиш «return», но в окне вкладок, которое в данный момент не находится в фокусе / active / ontop.

Использование идей вhttps://developer.mozilla.org/en/Code_snippets/Finding_Window_Handles вы можете получить hwnd, а затем сделать что-то вроде

::PostMessage(hWND, WM_KEYDOWN, VK_RETURN, 0);
::PostMessage(hWND,WM_CHAR,VK_RETURN,0);
::PostMessage(hWND, WM_KEYUP, VK_RETURN, 0);

Однако по той же ссылке в Gecko 2.0 (Firefox 4 и др.) Больше не будет собственного hwnd для Windowsпредставление каждой вкладки.

Имея различные действия по автоматизации, которые я хочу предпринять, я пытаюсь выяснить, есть ли какой-нибудь альтернативный способ отправки сообщений Windows на вкладку, которая в данный момент не сфокусирована?

или потребуется большая перезапись, чтобы заменить эти действия другим, более «родным» процессом?

1 Ответ

1 голос
/ 16 марта 2011

Если вы хотите взаимодействовать с Firefox вне процесса, то единственный поддерживаемый мне способ - это API-интерфейсы специальных возможностей.

Если вы пишете расширение, вы можете просто создать событие нажатия клавишис соответствующим ключом или символьным кодом и отправьте его соответствующему элементу.

...