7

ファイルのリストをフェッチして一時的な場所に保存する別の実行可能ファイルを呼び出す Web サービスがあります。これは Web サービスによって読み取られます。

システムの一時フォルダーを使用すると思ったのですがSystem.IO.Path.GetTempPath、関数を使用して一時フォルダーを取得し、ここにファイルを保存できることがわかりました。しかし、この関数によって返された出力を確認すると、

C:\Users\ユーザー名\AppData\Local\Temp\15\

パスの末尾の \15 が気になります。これは、GetTempPath によって返される一時フォルダーが一定ではなく、変化し続けるということですか? 実行可能ファイルによって出力された一時ファイルからWebサービスを読み取る必要があるため、一定である必要があります

4

2 に答える 2

3

ドキュメントには次のように記載されています。

このメソッドは、次の順序で環境変数の存在を確認し、最初に見つかったパスを使用します。

1.TMP 環境変数で指定されたパス。

  1. TEMP 環境変数で指定されたパス。

  2. USERPROFILE 環境変数で指定されたパス。

  3. Windows ディレクトリ。

したがって、環境を変更しない限り、結果は安定しています。

(対話型ログオンを行わなかったサービス アカウントとして実行すると、環境の変更が発生する可能性があります)。既定の %SystemRoot%\Temp フォルダーがあります。誰かがこのサービス アカウントでサーバーにログオンすると、プロファイルが作成され、一時パスが変更されます)。

于 2012-06-26T16:22:19.410 に答える