我编写了一个调用 System.IO.Path.GetTempPath()
函数的程序。我阅读的所有文档 (like this one)表示该函数应返回从此列表中找到的第一条路径:
- TMP环境变量指定的路径。
- TEMP 环境变量指定的路径。
- USERPROFILE 环境变量指定的路径。
- Windows 目录。
我已经将 TMP
和 TEMP
环境变量都定义为 %USERPROFILE%\AppData\Local\Temp
,但是调用GetTempPath()
总是返回我的 %USERPROFILE%
目录,而不是我为 TMP
和 TEMP
定义的值.如何获得返回我定义的临时目录的函数?
最佳答案
这是一个环境设置。 http://msdn.microsoft.com/en-us/library/77zkk0b6.aspx
var tmp = Environment.GetEnvironmentVariable("tmp");
更新: 我转到命令提示符并做了
SET TMP=C:\Temp
然后我从命令提示符启动了 visual studio。 现在我的环境已经更新,visual studio 可以看到它。上面的代码(以及你的)对我有用。它显示了更新的环境设置。
所以我相信你必须杀死资源管理器或注销才能让新环境永久可见。
关于c# - Path.GetTempPath() 总是返回 %USERPROFILE%,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17708623/