Подтвердить что ты не робот

В частности, получение пути TEMP системы в С#

Я использую метод System.IO.Path.GetTempPath() для извлечения временной папки из переменных среды. Тем не менее, я считаю, что это всегда будет возвращать переменную TEMP или TMP для текущего пользователя, если она существует, иначе она вернет переменную System TEMP или TMP.

Есть ли способ всегда получать переменную System TEMP?

Мне известно о нескольких других вопросах SO о методе Path.GetTempPath(), где ответы ссылаются на документацию из MSDN о том, как этот метод решает, что возвращать. Я знаю о поведении этого метода из MSDN, и я спрашиваю, есть ли другой способ гарантировать, что я получаю временную папку системы.

4b9b3361

Ответ 1

Возможно, вы ищете метод Environment.GetEnvironmentVariable.

Это использование дает пользователю папку% TEMP%:

Environment.GetEnvironmentVariable("TEMP");

таких как C:\Users\MyUserName\AppData\Local\Temp

И это дает вам папку системы % TEMP%:

Environment.GetEnvironmentVariable("TEMP", EnvironmentVariableTarget.Machine);

например C:\WINDOWS\TEMP