直接上代碼,只需要將窗體的Parent設置爲這個函數的返回值即可。
HWND FindDTWindow()
{
HWND hWnd = ::FindWindow(_T("Progman"), _T("Program Manager"));
DWORD dResult = 0;
SendMessageTimeout(hWnd,
0x052C,
0,
NULL,
SMTO_NORMAL,
1000,
&dResult);
HWND hwndWorkW = NULL;
do
{
hwndWorkW = ::FindWindowEx(NULL, hwndWorkW, L"WorkerW", NULL);
if (NULL == hwndWorkW)
{
continue;
}
HWND hView = ::FindWindowEx(hwndWorkW, NULL, L"SHELLDLL_DefView", NULL);
if (NULL == hView)
{
continue;
}
HWND h = ::FindWindowEx(NULL, hwndWorkW, L"WorkerW", NULL);
while (NULL != h)
{
SendMessage(h, WM_CLOSE, 0, 0);
h = ::FindWindowEx(NULL, hwndWorkW, L"WorkerW", NULL);
}
break;
} while (true);
return hWnd;
}