Browse Source

Fixed automatic updates

22000.318.37.0_b926359
Valentin Radu 4 years ago
parent
commit
b926359df2
  1. 15
      ExplorerPatcher/updates.c

15
ExplorerPatcher/updates.c

@ -71,11 +71,11 @@ BOOL IsUpdateAvailableHelper(char* url, char* szCheckAgainst, DWORD dwUpdateTime
INTERNET_OPEN_TYPE_PRECONFIG, INTERNET_OPEN_TYPE_PRECONFIG,
NULL, NULL,
NULL, NULL,
INTERNET_FLAG_ASYNC 0 //INTERNET_FLAG_ASYNC
)) ))
{ {
InternetSetOptionA(hInternet, INTERNET_OPTION_CONNECT_TIMEOUT, &dwUpdateTimeout, sizeof(DWORD)); //InternetSetOptionA(hInternet, INTERNET_OPTION_CONNECT_TIMEOUT, &dwUpdateTimeout, sizeof(DWORD));
if (InternetSetStatusCallbackA(hInternet, IsUpdateAvailableHelperCallback) != INTERNET_INVALID_STATUS_CALLBACK) //if (InternetSetStatusCallbackA(hInternet, IsUpdateAvailableHelperCallback) != INTERNET_INVALID_STATUS_CALLBACK)
{ {
HINTERNET hConnect = InternetOpenUrlA( HINTERNET hConnect = InternetOpenUrlA(
hInternet, hInternet,
@ -90,13 +90,13 @@ BOOL IsUpdateAvailableHelper(char* url, char* szCheckAgainst, DWORD dwUpdateTime
INTERNET_FLAG_NO_CACHE_WRITE, INTERNET_FLAG_NO_CACHE_WRITE,
&params &params
); );
if (!hConnect && GetLastError() == ERROR_IO_PENDING) /*if (!hConnect && GetLastError() == ERROR_IO_PENDING)
{ {
if (WaitForSingleObject(params.hEvent, dwUpdateTimeout) == WAIT_OBJECT_0) if (WaitForSingleObject(params.hEvent, dwUpdateTimeout) == WAIT_OBJECT_0)
{ {
hConnect = params.hInternet; hConnect = params.hInternet;
} }
} }*/
if (hConnect) if (hConnect)
{ {
if (szCheckAgainst) if (szCheckAgainst)
@ -122,6 +122,9 @@ BOOL IsUpdateAvailableHelper(char* url, char* szCheckAgainst, DWORD dwUpdateTime
} }
else else
{ {
#ifdef UPDATES_VERBOSE_OUTPUT
printf("[Updates] Failed. Read %d bytes.\n");
#endif
if (lpFail) *lpFail = TRUE; if (lpFail) *lpFail = TRUE;
} }
} }
@ -129,7 +132,7 @@ BOOL IsUpdateAvailableHelper(char* url, char* szCheckAgainst, DWORD dwUpdateTime
{ {
WCHAR wszPath[MAX_PATH]; WCHAR wszPath[MAX_PATH];
ZeroMemory(wszPath, MAX_PATH * sizeof(WCHAR)); ZeroMemory(wszPath, MAX_PATH * sizeof(WCHAR));
SHGetFolderPathW(NULL, SPECIAL_FOLDER, NULL, SHGFP_TYPE_CURRENT, wszPath); SHGetFolderPathW(NULL, SPECIAL_FOLDER_LEGACY, NULL, SHGFP_TYPE_CURRENT, wszPath);
wcscat_s(wszPath, MAX_PATH, _T(APP_RELATIVE_PATH)); wcscat_s(wszPath, MAX_PATH, _T(APP_RELATIVE_PATH));
BOOL bRet = CreateDirectoryW(wszPath, NULL); BOOL bRet = CreateDirectoryW(wszPath, NULL);
if (bRet || (!bRet && GetLastError() == ERROR_ALREADY_EXISTS)) if (bRet || (!bRet && GetLastError() == ERROR_ALREADY_EXISTS))

Loading…
Cancel
Save