Esme Povirk (@madewokherd) commented about dlls/uiautomationcore/tests/uiautomation.c:
- startup.cb = sizeof(startup);
- SET_EXPECT_MULTI(winproc_GETOBJECT_UiaRoot, 22);
- /* Only sent on Win7. */
- SET_EXPECT(winproc_GETOBJECT_CLIENT);
- CreateProcessA(NULL, cmdline, NULL, NULL, FALSE, 0, NULL, NULL, &startup, &proc);
- while (MsgWaitForMultipleObjects(1, &proc.hProcess, FALSE, INFINITE, QS_ALLINPUT) != WAIT_OBJECT_0)
- {
struct Provider *prov;
MSG msg = { 0 };
while (PeekMessageW(&msg, 0, 0, 0, PM_REMOVE))
{
switch (msg.message)
{
case WM_UIA_TEST_RESET_EVENT_PROVIDERS:
Since this is using the WM_USER range, the hwnd theoretically needs to be checked in case there are system windows making use of the same range. Probably easiest to use the WM_APP range instead.