summaryrefslogtreecommitdiff
path: root/wince
diff options
context:
space:
mode:
authorSimon Howard2009-06-13 15:36:20 +0000
committerSimon Howard2009-06-13 15:36:20 +0000
commitd91e3e86736f710265629e56dc77c1dec0b425e7 (patch)
tree96a63dc34618bbdc6700b2bba4bb5d35cb4aa898 /wince
parent0f5de61b743fdf05335436c1c71b4b488870483f (diff)
parentd4863b4c4ac47766b5fd3b8b0949be7af792e3d0 (diff)
downloadchocolate-doom-d91e3e86736f710265629e56dc77c1dec0b425e7.tar.gz
chocolate-doom-d91e3e86736f710265629e56dc77c1dec0b425e7.tar.bz2
chocolate-doom-d91e3e86736f710265629e56dc77c1dec0b425e7.zip
Merge from trunk.
Subversion-branch: /branches/raven-branch Subversion-revision: 1601
Diffstat (limited to 'wince')
-rw-r--r--wince/env.c37
1 files changed, 32 insertions, 5 deletions
diff --git a/wince/env.c b/wince/env.c
index 72af2212..c90b4c8d 100644
--- a/wince/env.c
+++ b/wince/env.c
@@ -40,17 +40,44 @@ static void SetEnvironment(char *env_string, wchar_t *wvalue)
putenv(value);
}
+static int ReadOwnerName(wchar_t *value, DWORD len)
+{
+ HKEY key;
+ DWORD valtype;
+
+ if (RegOpenKeyExW(HKEY_CURRENT_USER,
+ L"\\ControlPanel\\Owner", 0,
+ KEY_READ, &key) != ERROR_SUCCESS)
+ {
+ return 0;
+ }
+
+ valtype = REG_SZ;
+
+ if (RegQueryValueExW(key, L"Name", NULL, &valtype,
+ (LPBYTE) value, &len) != ERROR_SUCCESS)
+ {
+ return 0;
+ }
+
+ // Close the key
+
+ RegCloseKey(key);
+
+ return 1;
+}
+
void PopulateEnvironment(void)
{
wchar_t temp[MAX_PATH];
- DWORD buf_len;
// Username:
- buf_len = UNLEN;
- GetUserNameExW(NameDisplay, temp, &buf_len);
- SetEnvironment("USER=", temp);
- SetEnvironment("USERNAME=", temp);
+ if (ReadOwnerName(temp, MAX_PATH))
+ {
+ SetEnvironment("USER=", temp);
+ SetEnvironment("USERNAME=", temp);
+ }
// Temp dir: