0
私は、My.Computer.Filesystemがexeがインストールされた場所を指していると想定していました。ほとんどの場合、その前提が成り立っています。ただし、C:\ Windows \ System32を指していることがあり、権限のためにコードが失敗することがあります。My.Computer.Filesystemはどこにポイントしますか?
だから、それは本当にどこを指しているのですか?
私は、My.Computer.Filesystemがexeがインストールされた場所を指していると想定していました。ほとんどの場合、その前提が成り立っています。ただし、C:\ Windows \ System32を指していることがあり、権限のためにコードが失敗することがあります。My.Computer.Filesystemはどこにポイントしますか?
だから、それは本当にどこを指しているのですか?
代わりApplication.StartupPath
とともに相対パス使用Path.Combine()
を用いる
おかげ。後者は、.exeが開始されたディレクトリを取得します。
My.Computer.FileSystem.WriteAllText(Path.Combine(Application.StartupPath, "done.txt"), "0", False, Encoding.ASCII)
'My.Computer.FileSystem'は、ファイルとディレクトリの処理に使用されるプロパティとメソッドを保持するクラスを指していますが、特定のパスを指しません。より具体的に、問題が発生しているコードを共有してください。 –
ファイル名へのパスを追加すると、どこに書き込まれたのか疑問に思うことはありません – Plutonix
exeは常に同じ場所にインストールされているとは限りません。 – user3850146