Signed-off-by: Michael Stefaniuc mstefani@winehq.org --- dlls/gameux/gameexplorer.c | 67 +++++++++--------------------------- dlls/gameux/gamestatistics.c | 57 +++++++++--------------------- 2 files changed, 32 insertions(+), 92 deletions(-)
diff --git a/dlls/gameux/gameexplorer.c b/dlls/gameux/gameexplorer.c index 8b62c72f389..5fdacacf4b2 100644 --- a/dlls/gameux/gameexplorer.c +++ b/dlls/gameux/gameexplorer.c @@ -80,12 +80,6 @@ HRESULT GAMEUX_buildGameRegistryPath(GAME_INSTALL_SCOPE installScope, LPCGUID gameInstanceId, LPWSTR* lpRegistryPath) { - static const WCHAR sGameUxRegistryPath[] = {'S','O','F','T','W','A','R','E','\', - 'M','i','c','r','o','s','o','f','t','\','W','i','n','d','o','w','s','\', - 'C','u','r','r','e','n','t','V','e','r','s','i','o','n','\','G','a','m','e','U','X',0}; - static const WCHAR sGames[] = {'G','a','m','e','s',0}; - static const WCHAR sBackslash[] = {'\',0}; - HRESULT hr = S_OK; HANDLE hToken = NULL; PTOKEN_USER pTokenUser = NULL; @@ -99,8 +93,7 @@ HRESULT GAMEUX_buildGameRegistryPath(GAME_INSTALL_SCOPE installScope, /* this will make freeing it easier for user */ *lpRegistryPath = NULL;
- lstrcpyW(sRegistryPath, sGameUxRegistryPath); - lstrcatW(sRegistryPath, sBackslash); + lstrcpyW(sRegistryPath, L"SOFTWARE\Microsoft\Windows\CurrentVersion\GameUX\");
if(installScope == GIS_CURRENT_USER) { @@ -141,7 +134,7 @@ HRESULT GAMEUX_buildGameRegistryPath(GAME_INSTALL_SCOPE installScope, } else if(installScope == GIS_ALL_USERS) /* build registry path without SID */ - lstrcatW(sRegistryPath, sGames); + lstrcatW(sRegistryPath, L"Games"); else hr = E_INVALIDARG;
@@ -153,7 +146,7 @@ HRESULT GAMEUX_buildGameRegistryPath(GAME_INSTALL_SCOPE installScope,
if(SUCCEEDED(hr)) { - lstrcatW(sRegistryPath, sBackslash); + lstrcatW(sRegistryPath, L"\"); lstrcatW(sRegistryPath, sInstanceId); } } @@ -197,17 +190,6 @@ HRESULT GAMEUX_buildGameRegistryPath(GAME_INSTALL_SCOPE installScope, */ static HRESULT GAMEUX_WriteRegistryRecord(struct GAMEUX_GAME_DATA *GameData) { - static const WCHAR sApplicationId[] = - {'A','p','p','l','i','c','a','t','i','o','n','I','d',0}; - static const WCHAR sConfigApplicationPath[] = - {'C','o','n','f','i','g','A','p','p','l','i','c','a','t','i','o','n','P','a','t','h',0}; - static const WCHAR sConfigGDFBinaryPath[] = - {'C','o','n','f','i','g','G','D','F','B','i','n','a','r','y','P','a','t','h',0}; - static const WCHAR sTitle[] = - {'T','i','t','l','e',0}; - static const WCHAR sDescription[] = - {'D','e','s','c','r','i','p','t','i','o','n',0}; - HRESULT hr, hr2; LPWSTR lpRegistryKey; HKEY hKey; @@ -228,27 +210,27 @@ static HRESULT GAMEUX_WriteRegistryRecord(struct GAMEUX_GAME_DATA *GameData) if(SUCCEEDED(hr)) { /* write game data to registry key */ - hr = HRESULT_FROM_WIN32(RegSetValueExW(hKey, sConfigApplicationPath, 0, + hr = HRESULT_FROM_WIN32(RegSetValueExW(hKey, L"ConfigApplicationPath", 0, REG_SZ, (LPBYTE)(GameData->sGameInstallDirectory), (lstrlenW(GameData->sGameInstallDirectory)+1)*sizeof(WCHAR)));
if(SUCCEEDED(hr)) - hr = HRESULT_FROM_WIN32(RegSetValueExW(hKey, sConfigGDFBinaryPath, 0, + hr = HRESULT_FROM_WIN32(RegSetValueExW(hKey, L"ConfigGDFBinaryPath", 0, REG_SZ, (LPBYTE)(GameData->sGDFBinaryPath), (lstrlenW(GameData->sGDFBinaryPath)+1)*sizeof(WCHAR)));
if(SUCCEEDED(hr)) - hr = HRESULT_FROM_WIN32(RegSetValueExW(hKey, sApplicationId, 0, + hr = HRESULT_FROM_WIN32(RegSetValueExW(hKey, L"ApplicationId", 0, REG_SZ, (LPBYTE)(sGameApplicationId), (lstrlenW(sGameApplicationId)+1)*sizeof(WCHAR)));
if(SUCCEEDED(hr)) - hr = HRESULT_FROM_WIN32(RegSetValueExW(hKey, sTitle, 0, + hr = HRESULT_FROM_WIN32(RegSetValueExW(hKey, L"Title", 0, REG_SZ, (LPBYTE)(GameData->bstrName), (lstrlenW(GameData->bstrName)+1)*sizeof(WCHAR)));
if(SUCCEEDED(hr)) - hr = HRESULT_FROM_WIN32(RegSetValueExW(hKey, sDescription, 0, + hr = HRESULT_FROM_WIN32(RegSetValueExW(hKey, L"Description", 0, REG_SZ, (LPBYTE)(GameData->bstrDescription ? GameData->bstrDescription : GameData->bstrName), (lstrlenW(GameData->bstrDescription ? GameData->bstrDescription : GameData->bstrName)+1)*sizeof(WCHAR)));
@@ -282,11 +264,6 @@ static HRESULT GAMEUX_ProcessGameDefinitionElement( IXMLDOMElement *element, struct GAMEUX_GAME_DATA *GameData) { - static const WCHAR sName[] = - {'N','a','m','e',0}; - static const WCHAR sDescription[] = - {'D','e','s','c','r','i','p','t','i','o','n',0}; - HRESULT hr; BSTR bstrElementName;
@@ -296,10 +273,10 @@ static HRESULT GAMEUX_ProcessGameDefinitionElement( if(SUCCEEDED(hr)) { /* check element name */ - if(lstrcmpW(bstrElementName, sName) == 0) + if(lstrcmpW(bstrElementName, L"Name") == 0) hr = IXMLDOMElement_get_text(element, &GameData->bstrName);
- else if(lstrcmpW(bstrElementName, sDescription) == 0) + else if(lstrcmpW(bstrElementName, L"Description") == 0) hr = IXMLDOMElement_get_text(element, &GameData->bstrDescription);
else @@ -323,7 +300,6 @@ static HRESULT GAMEUX_ProcessGameDefinitionElement( */ static HRESULT GAMEUX_ParseGameDefinition(IXMLDOMElement *gamedef, struct GAMEUX_GAME_DATA *game_data) { - static const WCHAR gameidW[] = {'g','a','m','e','I','D',0}; IXMLDOMNodeList *props; VARIANT var; HRESULT hr; @@ -331,7 +307,7 @@ static HRESULT GAMEUX_ParseGameDefinition(IXMLDOMElement *gamedef, struct GAMEUX
TRACE("(%p, %p)\n", gamedef, game_data);
- attr = SysAllocString(gameidW); + attr = SysAllocString(L"gameID"); if (!attr) return E_OUTOFMEMORY;
@@ -397,9 +373,6 @@ static DWORD WINAPI GAMEUX_ParseGDFBinary(void *thread_param) { struct parse_gdf_thread_param *ctx = thread_param; struct GAMEUX_GAME_DATA *GameData = ctx->GameData; - static const WCHAR sRes[] = {'r','e','s',':','/','/',0}; - static const WCHAR sDATA[] = {'D','A','T','A',0}; - static const WCHAR sSlash[] = {'/',0};
HRESULT hr = S_OK; WCHAR sResourcePath[MAX_PATH]; @@ -412,11 +385,9 @@ static DWORD WINAPI GAMEUX_ParseGDFBinary(void *thread_param) TRACE("(%p)->sGDFBinaryPath = %s\n", GameData, debugstr_w(GameData->sGDFBinaryPath));
/* prepare path to GDF, using res:// prefix */ - lstrcpyW(sResourcePath, sRes); + lstrcpyW(sResourcePath, L"res://"); lstrcatW(sResourcePath, GameData->sGDFBinaryPath); - lstrcatW(sResourcePath, sSlash); - lstrcatW(sResourcePath, sDATA); - lstrcatW(sResourcePath, sSlash); + lstrcatW(sResourcePath, L"/DATA/"); lstrcatW(sResourcePath, ID_GDF_XML_STR);
CoInitialize(NULL); @@ -662,9 +633,6 @@ static HRESULT GAMEUX_LoadRegistryString(HKEY hRootKey, * Helper function, updates stored data about game with given InstanceID */ static HRESULT GAMEUX_UpdateGame(LPGUID InstanceID) { - static const WCHAR sConfigGDFBinaryPath[] = {'C','o','n','f','i','g','G','D','F','B','i','n','a','r','y','P','a','t','h',0}; - static const WCHAR sConfigApplicationPath[] = {'C','o','n','f','i','g','A','p','p','l','i','c','a','t','i','o','n','P','a','t','h',0}; - HRESULT hr; GAME_INSTALL_SCOPE installScope; LPWSTR lpRegistryPath; @@ -697,11 +665,11 @@ static HRESULT GAMEUX_UpdateGame(LPGUID InstanceID) {
/* first, read required data about game */ hr = GAMEUX_LoadRegistryString(HKEY_LOCAL_MACHINE, lpRegistryPath, - sConfigGDFBinaryPath, &lpGDFBinaryPath); + L"ConfigGDFBinaryPath", &lpGDFBinaryPath);
if(SUCCEEDED(hr)) hr = GAMEUX_LoadRegistryString(HKEY_LOCAL_MACHINE, lpRegistryPath, - sConfigApplicationPath, &lpGameInstallDirectory); + L"ConfigApplicationPath", &lpGameInstallDirectory);
/* now remove currently existing registry key */ if(SUCCEEDED(hr)) @@ -730,9 +698,6 @@ HRESULT GAMEUX_FindGameInstanceId( GAME_INSTALL_SCOPE installScope, GUID* pInstanceId) { - static const WCHAR sConfigGDFBinaryPath[] = - {'C','o','n','f','i','g','G','D','F','B','i','n','a','r','y','P','a','t','h',0}; - HRESULT hr; BOOL found = FALSE; LPWSTR lpRegistryPath = NULL; @@ -769,7 +734,7 @@ HRESULT GAMEUX_FindGameInstanceId(
if(SUCCEEDED(hr)) hr = GAMEUX_LoadRegistryString(hRootKey, lpName, - sConfigGDFBinaryPath, &lpValue); + L"ConfigGDFBinaryPath", &lpValue);
if(SUCCEEDED(hr)) { diff --git a/dlls/gameux/gamestatistics.c b/dlls/gameux/gamestatistics.c index 7189261a4f6..1696ee1e76a 100644 --- a/dlls/gameux/gamestatistics.c +++ b/dlls/gameux/gamestatistics.c @@ -102,13 +102,6 @@ static HRESULT GAMEUX_createStatsDirectory(LPCWSTR lpFilePath) */ static HRESULT GAMEUX_updateStatisticsFile(struct GAMEUX_STATS *stats) { - static const WCHAR sStatistics[] = {'S','t','a','t','i','s','t','i','c','s',0}; - static const WCHAR sCategory[] = {'C','a','t','e','g','o','r','y',0}; - static const WCHAR sIndex[] = {'I','n','d','e','x',0}; - static const WCHAR sStatistic[] = {'S','t','a','t','i','s','t','i','c',0}; - static const WCHAR sName[] = {'N','a','m','e',0}; - static const WCHAR sValue[] = {'V','a','l','u','e',0}; - HRESULT hr = S_OK; IXMLDOMDocument *document = NULL; IXMLDOMElement *root = NULL, *statisticsElement = NULL; @@ -131,7 +124,7 @@ static HRESULT GAMEUX_updateStatisticsFile(struct GAMEUX_STATS *stats)
if(SUCCEEDED(hr)) { - bstrStatistics = SysAllocString(sStatistics); + bstrStatistics = SysAllocString(L"Statistics"); if(!bstrStatistics) hr = E_OUTOFMEMORY; } @@ -141,35 +134,35 @@ static HRESULT GAMEUX_updateStatisticsFile(struct GAMEUX_STATS *stats)
if(SUCCEEDED(hr)) { - bstrCategory = SysAllocString(sCategory); + bstrCategory = SysAllocString(L"Category"); if(!bstrCategory) hr = E_OUTOFMEMORY; }
if(SUCCEEDED(hr)) { - bstrIndex = SysAllocString(sIndex); + bstrIndex = SysAllocString(L"Index"); if(!bstrIndex) hr = E_OUTOFMEMORY; }
if(SUCCEEDED(hr)) { - bstrStatistic = SysAllocString(sStatistic); + bstrStatistic = SysAllocString(L"Statistic"); if(!bstrStatistic) hr = E_OUTOFMEMORY; }
if(SUCCEEDED(hr)) { - bstrName = SysAllocString(sName); + bstrName = SysAllocString(L"Name"); if(!bstrName) hr = E_OUTOFMEMORY; }
if(SUCCEEDED(hr)) { - bstrValue = SysAllocString(sValue); + bstrValue = SysAllocString(L"Value"); if(!bstrValue) hr = E_OUTOFMEMORY; } @@ -318,24 +311,17 @@ static HRESULT GAMEUX_buildStatisticsFilePath( LPCWSTR lpApplicationId, LPWSTR lpStatisticsFile) { - static const WCHAR sBackslash[] = {'\',0}; - static const WCHAR sStatisticsDir[] = {'\','M','i','c','r','o','s','o','f','t', - '\','W','i','n','d','o','w','s','\','G','a','m','e','E','x','p', - 'l','o','r','e','r','\','G','a','m','e','S','t','a','t','i','s', - 't','i','c','s','\',0}; - static const WCHAR sDotGamestats[] = {'.','g','a','m','e','s','t','a','t','s',0}; - HRESULT hr;
hr = SHGetFolderPathW(NULL, CSIDL_LOCAL_APPDATA, NULL, SHGFP_TYPE_CURRENT, lpStatisticsFile);
if(SUCCEEDED(hr)) { - lstrcatW(lpStatisticsFile, sStatisticsDir); + lstrcatW(lpStatisticsFile, L"\Microsoft\Windows\GameExplorer\GameStatistics\"); lstrcatW(lpStatisticsFile, lpApplicationId); - lstrcatW(lpStatisticsFile, sBackslash); + lstrcatW(lpStatisticsFile, L"\"); lstrcatW(lpStatisticsFile, lpApplicationId); - lstrcatW(lpStatisticsFile, sDotGamestats); + lstrcatW(lpStatisticsFile, L".gamestats"); }
return hr; @@ -357,9 +343,6 @@ static HRESULT GAMEUX_getAppIdFromGDFPath( LPCWSTR GDFBinaryPath, LPWSTR lpApplicationId) { - static const WCHAR sApplicationId[] = - {'A','p','p','l','i','c','a','t','i','o','n','I','d',0}; - HRESULT hr; GAME_INSTALL_SCOPE installScope; GUID instanceId; @@ -393,8 +376,7 @@ static HRESULT GAMEUX_getAppIdFromGDFPath( hr = HRESULT_FROM_WIN32(RegOpenKeyExW(HKEY_LOCAL_MACHINE, lpRegistryPath, 0, KEY_READ | KEY_WOW64_64KEY, &hKey)); if(SUCCEEDED(hr)) { - hr = HRESULT_FROM_WIN32(RegGetValueW(hKey, - NULL, sApplicationId, RRF_RT_REG_SZ, + hr = HRESULT_FROM_WIN32(RegGetValueW(hKey, NULL, L"ApplicationId", RRF_RT_REG_SZ, NULL, lpApplicationId, &dwLength)); RegCloseKey(hKey); } @@ -416,13 +398,6 @@ static HRESULT GAMEUX_getAppIdFromGDFPath( */ static HRESULT GAMEUX_loadStatisticsFromFile(struct GAMEUX_STATS *data) { - static const WCHAR sStatistics[] = {'S','t','a','t','i','s','t','i','c','s',0}; - static const WCHAR sCategory[] = {'C','a','t','e','g','o','r','y',0}; - static const WCHAR sIndex[] = {'I','n','d','e','x',0}; - static const WCHAR sStatistic[] = {'S','t','a','t','i','s','t','i','c',0}; - static const WCHAR sName[] = {'N','a','m','e',0}; - static const WCHAR sValue[] = {'V','a','l','u','e',0}; - HRESULT hr = S_OK; IXMLDOMDocument *document = NULL; IXMLDOMElement *root = NULL, *categoryElement = NULL, *statisticElement = NULL; @@ -446,42 +421,42 @@ static HRESULT GAMEUX_loadStatisticsFromFile(struct GAMEUX_STATS *data)
if(SUCCEEDED(hr)) { - bstrStatistics = SysAllocString(sStatistics); + bstrStatistics = SysAllocString(L"Statistics"); if(!bstrStatistics) hr = E_OUTOFMEMORY; }
if(SUCCEEDED(hr)) { - bstrCategory = SysAllocString(sCategory); + bstrCategory = SysAllocString(L"Category"); if(!bstrCategory) hr = E_OUTOFMEMORY; }
if(SUCCEEDED(hr)) { - bstrIndex = SysAllocString(sIndex); + bstrIndex = SysAllocString(L"Index"); if(!bstrIndex) hr = E_OUTOFMEMORY; }
if(SUCCEEDED(hr)) { - bstrStatistic = SysAllocString(sStatistic); + bstrStatistic = SysAllocString(L"Statistic"); if(!bstrStatistic) hr = E_OUTOFMEMORY; }
if(SUCCEEDED(hr)) { - bstrName = SysAllocString(sName); + bstrName = SysAllocString(L"Name"); if(!bstrName) hr = E_OUTOFMEMORY; }
if(SUCCEEDED(hr)) { - bstrValue = SysAllocString(sValue); + bstrValue = SysAllocString(L"Value"); if(!bstrValue) hr = E_OUTOFMEMORY; }