2017-01-17 5 views
0

私は、My.Computer.Filesystemがexeがインストールされた場所を指していると想定していました。ほとんどの場合、その前提が成り立っています。ただし、C:\ Windows \ System32を指していることがあり、権限のためにコードが失敗することがあります。My.Computer.Filesystemはどこにポイントしますか?

だから、それは本当にどこを指しているのですか?

+1

'My.Computer.FileSystem'は、ファイルとディレクトリの処理に使用されるプロパティとメソッドを保持するクラスを指していますが、特定のパスを指しません。より具体的に、問題が発生しているコードを共有してください。 –

+0

ファイル名へのパスを追加すると、どこに書き込まれたのか疑問に思うことはありません – Plutonix

+0

exeは常に同じ場所にインストールされているとは限りません。 – user3850146

答えて

2

代わりApplication.StartupPathとともに相対パス使用Path.Combine()を用いる

おかげ。後者は、.exeが開始されたディレクトリを取得します。

My.Computer.FileSystem.WriteAllText(Path.Combine(Application.StartupPath, "done.txt"), "0", False, Encoding.ASCII) 
関連する問題