System.IO.Path.GetTempPath()
メソッドを使用して、環境変数から一時フォルダーを取得しています。ただし、これにより、現在のユーザーのTEMP変数またはTMP変数が常に返されることがわかりました。存在しない場合は、システムTEMP変数またはTMP変数が返されます。
常にシステムTEMP変数を取得する方法はありますか?
私は、Path.GetTempPath()メソッドに関するSO)に関する他のいくつかの質問を知っています。ここで、回答は、このメソッドが何を返すかを決定する方法について、MSDNからのドキュメントを参照しています。この方法はMSDNからのものであり、システム一時フォルダーを確実に取得する別の方法があるかどうかを尋ねています。
おそらくあなたは Environment.GetEnvironmentVariable メソッドを探しています。
この使用法により、ユーザーの%TEMP%フォルダーが得られます。
Environment.GetEnvironmentVariable("TEMP");
c:\ Users\MyUserName\AppData\Local\Tempなど
そしてこれはあなたにシステムの%TEMP%フォルダーを与えます:
Environment.GetEnvironmentVariable("TEMP", EnvironmentVariableTarget.Machine);
c:\ WINDOWS\TEMPなど