Без прав администратора предполагается, что вы можете писать в папки внутри папки учетной записи пользователя.
C: \ Users \% USERNAME% \
Вы можете писать в документы, изображения и музыкальные папки c, AppData \ Roaming или AppData \ Local \ et c ...
Как уже упоминалось в комментариях, SHGetKnownFolderPath является предпочтительным методом для получить эти пути к папкам, вот простой пример:
#include <windows.h>
#include <iostream>
#include <shlobj_core.h>
int main()
{
PWSTR path = nullptr;
SHGetKnownFolderPath(FOLDERID_Documents, 0, 0, &path);
std::cout << path << std::endl;
std::getchar();
return 0;
}