C#.NET FrameworkをProgram Filesフォルダ上で実行すると、不明のエラー
Program Filesフォルダ配下で、EXE、DLLのみで実行はできるが、途中でエラーになる。ファイル名または、親フォルダ名を変えると実行できる。再起動しても何しても変わらない。
なんだこら。
ファイアウォールやアンチウイルスが原因なら実行すらできない筈。実際、ファイアウォールを切ったり、アンチウイルスを無効にしても状況は変わらない。もしかするとアンチウイルスが完全に無効になっていないという事も考えらたので削除してみたのだが、やはり変わらず。
表示させているエラーの内容をよく読むと、
C:\Users\username\AppData\Local にEXEコンパイル時の日本語表記のフォルダでエラーが発生している。
との事。確かに該当フォルダがあった。
原因はキャッシュ
こりゃぁ~、・・・バーチャルストア関係のキャッシュか。じゃぁ、消しましょうかね。
そのフォルダ毎削除すると、何事もなかったように実行出来た。
Program Filesフォルダのセキュリティー設定は強固な為、システムが実行時にテンポラリを自動作成し、そこで実行していたのだと推測。
そして、テスト時にフォルダセキュリティーか実行時エラーか何かでキャッシュが残ってしまい、これが再起動しても消えず、実行に災いをしていたらしい。フォルダ名を変更すると実行できるという所からは確かに推測できるな。
でも、上書きとかしないのかな。
.NET Framework仕様の不勉強を棚に上げて言うのもなんだが、ちょっと困ったというお話でした。
コメントを残す