|
|
|
|
@ -455,28 +455,27 @@ int WINAPI wWinMain(
@@ -455,28 +455,27 @@ int WINAPI wWinMain(
|
|
|
|
|
{ |
|
|
|
|
BeginExplorerRestart(); |
|
|
|
|
} |
|
|
|
|
Sleep(100); |
|
|
|
|
|
|
|
|
|
GetSystemDirectoryW(wszPath, MAX_PATH); |
|
|
|
|
wcscat_s(wszPath, MAX_PATH, L"\\taskkill.exe"); |
|
|
|
|
SHELLEXECUTEINFOW sei; |
|
|
|
|
ZeroMemory(&sei, sizeof(SHELLEXECUTEINFOW)); |
|
|
|
|
sei.cbSize = sizeof(sei); |
|
|
|
|
sei.fMask = SEE_MASK_NOCLOSEPROCESS; |
|
|
|
|
sei.hwnd = NULL; |
|
|
|
|
sei.hInstApp = NULL; |
|
|
|
|
sei.lpVerb = NULL; |
|
|
|
|
sei.lpFile = wszPath; |
|
|
|
|
sei.lpParameters = L"/f /im explorer.exe"; |
|
|
|
|
sei.hwnd = NULL; |
|
|
|
|
sei.nShow = SW_SHOWMINIMIZED; |
|
|
|
|
if (ShellExecuteExW(&sei) && sei.hProcess) |
|
|
|
|
{ |
|
|
|
|
WaitForSingleObject(sei.hProcess, INFINITE); |
|
|
|
|
CloseHandle(sei.hProcess); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
Sleep(100); |
|
|
|
|
GetSystemDirectoryW(wszPath, MAX_PATH); |
|
|
|
|
wcscat_s(wszPath, MAX_PATH, L"\\taskkill.exe"); |
|
|
|
|
SHELLEXECUTEINFOW sei; |
|
|
|
|
ZeroMemory(&sei, sizeof(SHELLEXECUTEINFOW)); |
|
|
|
|
sei.cbSize = sizeof(sei); |
|
|
|
|
sei.fMask = SEE_MASK_NOCLOSEPROCESS; |
|
|
|
|
sei.hwnd = NULL; |
|
|
|
|
sei.hInstApp = NULL; |
|
|
|
|
sei.lpVerb = NULL; |
|
|
|
|
sei.lpFile = wszPath; |
|
|
|
|
sei.lpParameters = L"/f /im explorer.exe"; |
|
|
|
|
sei.hwnd = NULL; |
|
|
|
|
sei.nShow = SW_SHOWMINIMIZED; |
|
|
|
|
if (ShellExecuteExW(&sei) && sei.hProcess) |
|
|
|
|
{ |
|
|
|
|
WaitForSingleObject(sei.hProcess, INFINITE); |
|
|
|
|
CloseHandle(sei.hProcess); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
HWND hWnd = FindWindowW(L"ExplorerPatcher_GUI_" _T(EP_CLSID), NULL); |
|
|
|
|
if (hWnd) |
|
|
|
|
@ -720,7 +719,19 @@ int WINAPI wWinMain(
@@ -720,7 +719,19 @@ int WINAPI wWinMain(
|
|
|
|
|
|
|
|
|
|
if (!hEvent0 || !hEvent1 || FAILED(hr)) |
|
|
|
|
{ |
|
|
|
|
StartExplorerWithDelay(1000); |
|
|
|
|
if (!hShellTrayWnd) |
|
|
|
|
{ |
|
|
|
|
MessageBoxW( |
|
|
|
|
NULL, |
|
|
|
|
L"" _T(PRODUCT_NAME) L" has been installed successfully. Start Explorer to have it load up.", |
|
|
|
|
_T(PRODUCT_NAME), |
|
|
|
|
MB_ICONINFORMATION | MB_OK | MB_DEFBUTTON1 |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
StartExplorerWithDelay(1000); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
else |
|
|
|
|
{ |
|
|
|
|
|