Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int GetRegistryStringValue(HKEY h_sub_key, WCHAR* value_name, wstring *result)
- {
- DWORD cbData = 8;
- Debug *debug = Debug::GetInstance();
- LPDWORD type = NULL;
- //Get the size and type of the key
- int err = RegQueryValueEx(h_sub_key, value_name, NULL, type, NULL, &cbData);
- if (err != ERROR_SUCCESS)
- {
- debug->DebugMessage(Error::GetErrorMessageW(err));
- return err;
- }
- result->resize(cbData / sizeof(WCHAR));
- LPWSTR res = new WCHAR[(cbData + sizeof(L'\0')) / sizeof(WCHAR)];
- err = RegQueryValueEx(h_sub_key, value_name, NULL, NULL, (LPBYTE) &res[0], &cbData);
- if(err != ERROR_SUCCESS)
- {
- debug->DebugMessage(Error::GetErrorMessageW(err));
- return err;
- }
- res[cbData / sizeof(WCHAR)] = L'\0';
- result = new wstring(res);
- return ERROR_SUCCESS;
- }
Add Comment
Please, Sign In to add comment