check 'User Shell Folders' key in addition to 'Shell Folders'

This commit is contained in:
yeranya 2023-12-29 00:34:57 -08:00 committed by 20dka
parent 2397f45d3f
commit 29445f65ce

View File

@ -42,12 +42,14 @@ std::string GetGamePath() {
if (Path.empty()) {
sk = R"(SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders)";
openRes = RegOpenKeyEx(HKEY_CURRENT_USER, sk, 0, KEY_ALL_ACCESS, &hKey);
if (openRes != ERROR_SUCCESS) {
fatal("Cannot get Local Appdata directory!");
}
if (openRes == ERROR_SUCCESS) goto GotAppDataDir;
openRes = RegOpenKeyEx(HKEY_CURRENT_USER, sk.insert(51, "User "), 0, KEY_ALL_ACCESS, &hKey);
if (openRes != ERROR_SUCCESS) fatal("Cannot get Local Appdata directory");
GotAppDataDir:
Path = QueryKey(hKey, 5);
Path += "\\BeamNG.drive\\";
}
std::string Ver = CheckVer(GetGameDir());
Ver = Ver.substr(0, Ver.find('.', Ver.find('.') + 1));
Path += Ver + "\\";