Я использую GetEnvironmentString()
для получения переменных окружения программы.
Каждая программа имеет такой результат в первом:
=::=::\
Я не знаю, что это значит?
Вот код:
LPWCH lpEnvString=GetEnvironmentStringsW();
LPWSTR lpszVariable=(LPWSTR)lpEnvString;
while (*lpszVariable)
{
wprintf(L"%s\n",lpszVariable);
lpszVariable+=wcslen(lpszVariable)+1;
}
FreeEnvironmentStringsW(lpEnvString);
Также, если мы начнем перечислять такие переменные, мы увидим такие вещи, как:
=::=::\
=C:=C:\Users\username\value
=ExitCode=00000001
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\artik\AppData\Roaming
CommonProgramFiles=C:\Program Files (x86)\Common Files
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
CommonProgramW6432=C:\Program Files\Common Files
...
С другой стороны, getenv("=ExitCode")
или getenv("=C:")
возвращает NULL.
Можете ли вы предоставить надлежащую документацию по этой "функции",
например getenv()
игнорирует такие строки и как следует обрабатывать такие значения?