Ich versuche Handle zu SHELLDLL_DefView zu erhalten.WinApi - So erhalten Sie SHELLDLL_DefView
Also, ich habe diesen Code.
HWND hProgman = FindWindow(L"Progman", NULL);
HWND hWnd = FindWindowEx(hProgman, 0, L"SHELLDLL_DefView", NULL);
Eveyrtihing funktioniert OK, bis ich in Windows-Desktop brackground zu Diashow ändern. Wenn ich dann mit spy ++ Hierarchie der Fenster suche, hat SHELLDLL_DefView ein anderes Elternteil. Jetzt ist es # 32769 (Desktop) -> WorkerW -> SHELLDLL_DefView. Also kann ich es nicht finden. Problem ist, dass, wenn ich versuche,
HWND desktop = GetDesktopWindow();
HWND hWnd = FindWindowEx(desktop , 0, L"WorkerW", NULL);
HWND hWnd = FindWindowEx(hWnd, 0, L"SHELLDLL_DefView", NULL);
als SHELLDLL_DefView nicht gefunden wird. ArbeiterW ja.
Kann jemand helfen?
Warum müssen Sie das finden? Die Shell verfügt über eine umfangreiche Automatisierungsschnittstelle. Haben Sie festgestellt, dass es Ihren Anforderungen nicht entspricht? – IInspectable
Ich muss Handle zu SHELLDLL_DefView –
* "Ich muss X finden, weil ich X finden muss" * ist keine Antwort auf die Frage, warum Sie denken, dass Sie tun. – IInspectable