Каталог сохраненных игр можно найти с помощью функции SHGetKnownFolderPath () , доступной в Windows Vista и Windows Server 2008.
Обратите внимание, что аргумент FOLDERID_SavedGames
является ссылкой на C ++.Замените на &FOLDERID_SavedGames
для вызова из кода C.
Успешно протестировано на первом онлайн-компиляторе MSVC, который я смог найти:
https://rextester.com/l/cpp_online_compiler_visual
#define WINVER 0x0600
#define _WIN32_WINNT 0x0600
#include <stdio.h>
#include <shlobj.h>
#include <objbase.h>
#pragma comment(lib, "shell32.lib")
#pragma comment(lib, "ole32.lib")
int main(void)
{
PWSTR path = NULL;
HRESULT r;
r = SHGetKnownFolderPath(FOLDERID_SavedGames, KF_FLAG_CREATE, NULL, &path);
if (path != NULL)
{
printf("%ls", path);
CoTaskMemFree(path);
}
return 0;
}