* PROGRAMMER: Eric Kohl
*/
-#include "precomp.h"
+#include <precomp.h>
+
+#define NDEBUG
+#include <debug.h>
+
typedef struct _FOLDERDATA
{
DWORD dwLength;
PFOLDERDATA lpFolderData;
HKEY hKey;
+ LONG Error;
/* Load profiles directory path */
if (!LoadStringW(hInstance,
return FALSE;
}
- if (RegOpenKeyExW (HKEY_LOCAL_MACHINE,
- L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\ProfileList",
- 0,
- KEY_ALL_ACCESS,
- &hKey))
+ Error = RegOpenKeyExW (HKEY_LOCAL_MACHINE,
+ L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\ProfileList",
+ 0,
+ KEY_ALL_ACCESS,
+ &hKey);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
+ SetLastError((DWORD)Error);
return FALSE;
}
/* Store profiles directory path */
dwLength = (wcslen (szBuffer) + 1) * sizeof(WCHAR);
- if (RegSetValueExW (hKey,
- L"ProfilesDirectory",
- 0,
- REG_EXPAND_SZ,
- (LPBYTE)szBuffer,
- dwLength))
+ Error = RegSetValueExW (hKey,
+ L"ProfilesDirectory",
+ 0,
+ REG_EXPAND_SZ,
+ (LPBYTE)szBuffer,
+ dwLength);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
RegCloseKey (hKey);
+ SetLastError((DWORD)Error);
return FALSE;
}
}
dwLength = (wcslen (szBuffer) + 1) * sizeof(WCHAR);
- if (RegSetValueExW (hKey,
- L"DefaultUserProfile",
- 0,
- REG_SZ,
- (LPBYTE)szBuffer,
- dwLength))
+ Error = RegSetValueExW (hKey,
+ L"DefaultUserProfile",
+ 0,
+ REG_SZ,
+ (LPBYTE)szBuffer,
+ dwLength);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
RegCloseKey (hKey);
+ SetLastError((DWORD)Error);
return FALSE;
}
}
/* Set default 'Shell Folders' values */
- if (RegOpenKeyExW(HKEY_USERS,
- L".Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders",
- 0,
- KEY_ALL_ACCESS,
- &hKey))
+ Error = RegOpenKeyExW(HKEY_USERS,
+ L".Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders",
+ 0,
+ KEY_ALL_ACCESS,
+ &hKey);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
+ SetLastError((DWORD)Error);
return FALSE;
}
}
dwLength = (wcslen(szBuffer) + 1) * sizeof(WCHAR);
- if (RegSetValueExW(hKey,
- lpFolderData->lpValueName,
- 0,
- REG_SZ,
- (LPBYTE)szBuffer,
- dwLength))
+ Error = RegSetValueExW(hKey,
+ lpFolderData->lpValueName,
+ 0,
+ REG_SZ,
+ (LPBYTE)szBuffer,
+ dwLength);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
RegCloseKey(hKey);
+ SetLastError((DWORD)Error);
return FALSE;
}
}
wcscat(szBuffer, L"\\media\\fonts");
dwLength = (wcslen(szBuffer) + 1) * sizeof(WCHAR);
- if (RegSetValueExW(hKey,
- L"Fonts",
- 0,
- REG_SZ,
- (LPBYTE)szBuffer,
- dwLength))
+ Error = RegSetValueExW(hKey,
+ L"Fonts",
+ 0,
+ REG_SZ,
+ (LPBYTE)szBuffer,
+ dwLength);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
RegCloseKey(hKey);
+ SetLastError((DWORD)Error);
return FALSE;
}
RegCloseKey(hKey);
/* Set default 'User Shell Folders' values */
- if (RegOpenKeyExW(HKEY_USERS,
- L".Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders",
- 0,
- KEY_ALL_ACCESS,
- &hKey))
+ Error = RegOpenKeyExW(HKEY_USERS,
+ L".Default\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders",
+ 0,
+ KEY_ALL_ACCESS,
+ &hKey);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
+ SetLastError((DWORD)Error);
return FALSE;
}
}
dwLength = (wcslen(szBuffer) + 1) * sizeof(WCHAR);
- if (RegSetValueExW(hKey,
- lpFolderData->lpValueName,
- 0,
- REG_EXPAND_SZ,
- (LPBYTE)szBuffer,
- dwLength))
+ Error = RegSetValueExW(hKey,
+ lpFolderData->lpValueName,
+ 0,
+ REG_EXPAND_SZ,
+ (LPBYTE)szBuffer,
+ dwLength);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
RegCloseKey(hKey);
+ SetLastError((DWORD)Error);
return FALSE;
}
}
return FALSE;
}
- if (RegOpenKeyExW(HKEY_LOCAL_MACHINE,
- L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\ProfileList",
- 0,
- KEY_ALL_ACCESS,
- &hKey))
+ Error = RegOpenKeyExW(HKEY_LOCAL_MACHINE,
+ L"SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\ProfileList",
+ 0,
+ KEY_ALL_ACCESS,
+ &hKey);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
+ SetLastError((DWORD)Error);
return FALSE;
}
dwLength = (wcslen(szBuffer) + 1) * sizeof(WCHAR);
- if (RegSetValueExW(hKey,
- L"AllUsersProfile",
- 0,
- REG_SZ,
- (LPBYTE)szBuffer,
- dwLength))
+ Error = RegSetValueExW(hKey,
+ L"AllUsersProfile",
+ 0,
+ REG_SZ,
+ (LPBYTE)szBuffer,
+ dwLength);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
RegCloseKey (hKey);
+ SetLastError((DWORD)Error);
return FALSE;
}
}
/* Set common 'Shell Folders' values */
- if (RegOpenKeyExW(HKEY_LOCAL_MACHINE,
- L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders",
- 0,
- KEY_ALL_ACCESS,
- &hKey))
+ Error = RegOpenKeyExW(HKEY_LOCAL_MACHINE,
+ L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders",
+ 0,
+ KEY_ALL_ACCESS,
+ &hKey);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
+ SetLastError((DWORD)Error);
return FALSE;
}
}
dwLength = (wcslen(szBuffer) + 1) * sizeof(WCHAR);
- if (RegSetValueExW(hKey,
- lpFolderData->lpValueName,
- 0,
- REG_SZ,
- (LPBYTE)szBuffer,
- dwLength))
+ Error = RegSetValueExW(hKey,
+ lpFolderData->lpValueName,
+ 0,
+ REG_SZ,
+ (LPBYTE)szBuffer,
+ dwLength);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
RegCloseKey(hKey);
+ SetLastError((DWORD)Error);
return FALSE;
}
}
RegCloseKey(hKey);
/* Set common 'User Shell Folders' values */
- if (RegOpenKeyExW(HKEY_LOCAL_MACHINE,
- L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders",
- 0,
- KEY_ALL_ACCESS,
- &hKey))
+ Error = RegOpenKeyExW(HKEY_LOCAL_MACHINE,
+ L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\User Shell Folders",
+ 0,
+ KEY_ALL_ACCESS,
+ &hKey);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
+ SetLastError((DWORD)Error);
return FALSE;
}
}
dwLength = (wcslen(szBuffer) + 1) * sizeof(WCHAR);
- if (RegSetValueExW(hKey,
- lpFolderData->lpValueName,
- 0,
- REG_EXPAND_SZ,
- (LPBYTE)szBuffer,
- dwLength))
+ Error = RegSetValueExW(hKey,
+ lpFolderData->lpValueName,
+ 0,
+ REG_EXPAND_SZ,
+ (LPBYTE)szBuffer,
+ dwLength);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
RegCloseKey(hKey);
+ SetLastError((DWORD)Error);
return FALSE;
}
}
}
/* Store it */
- if (RegOpenKeyExW (HKEY_LOCAL_MACHINE,
- L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion",
- 0,
- KEY_ALL_ACCESS,
- &hKey))
+ Error = RegOpenKeyExW (HKEY_LOCAL_MACHINE,
+ L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion",
+ 0,
+ KEY_ALL_ACCESS,
+ &hKey);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
+ SetLastError((DWORD)Error);
return FALSE;
}
dwLength = (wcslen (szProfilesPath) + 1) * sizeof(WCHAR);
- if (RegSetValueExW (hKey,
- L"ProgramFilesDir",
- 0,
- REG_SZ,
- (LPBYTE)szProfilesPath,
- dwLength))
+ Error = RegSetValueExW (hKey,
+ L"ProgramFilesDir",
+ 0,
+ REG_SZ,
+ (LPBYTE)szProfilesPath,
+ dwLength);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
RegCloseKey (hKey);
+ SetLastError((DWORD)Error);
return FALSE;
}
DWORD dwLength;
PFOLDERDATA lpFolderData;
HKEY hFoldersKey;
+ LONG Error;
DPRINT("UpdateUsersShellFolderSettings() called\n");
DPRINT("User profile path: %S\n", lpUserProfilePath);
- if (RegOpenKeyExW(hUserKey,
- L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders",
- 0,
- KEY_ALL_ACCESS,
- &hFoldersKey))
+ Error = RegOpenKeyExW(hUserKey,
+ L"SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Explorer\\Shell Folders",
+ 0,
+ KEY_ALL_ACCESS,
+ &hFoldersKey);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
+ SetLastError((DWORD)Error);
return FALSE;
}
DPRINT("%S: %S\n", lpFolderData->lpValueName, szBuffer);
dwLength = (wcslen(szBuffer) + 1) * sizeof(WCHAR);
- if (RegSetValueExW(hFoldersKey,
- lpFolderData->lpValueName,
- 0,
- REG_SZ,
- (LPBYTE)szBuffer,
- dwLength))
+ Error = RegSetValueExW(hFoldersKey,
+ lpFolderData->lpValueName,
+ 0,
+ REG_SZ,
+ (LPBYTE)szBuffer,
+ dwLength);
+ if (Error != ERROR_SUCCESS)
{
- DPRINT1("Error: %lu\n", GetLastError());
+ DPRINT1("Error: %lu\n", Error);
RegCloseKey(hFoldersKey);
+ SetLastError((DWORD)Error);
return FALSE;
}
}