読者です 読者をやめる 読者になる 読者になる

Pandora Pocket

MS系の備忘録と日記。三日坊主。

ユーザーアカウント制御に対応していないソフトが出力するファイルの保存先

備忘録 パソコン

よく忘れるので備忘録。

Windows Vista以降ではセキュリティ強化の機能としてユーザーアカウント制御(以下UAC)が備わってます。
システムが管理する場所に怪しいソフトが介入しないようにする強力な機能なわけですが、これに対応してないソフト(というか管理者権限がないソフト?)がProgram FilesやWindowsフォルダ配下にファイルを出力しようとすると、OSが別の場所にファイルを保存して、仮想的にそちらを参照するようにさせます。

私の場合TVTestをProgram Files内に置いているんですが、TVTestの設定ファイルであるTVTest.iniをエディタでいじったのにもかかわらずTVTestが認識してくれず、首を傾げた結果がUACによるファイルの仮想化でした。

C:\Program Files\プログラムのフォルダ名 C:\Users(ユーザー名)\AppData\Local\VirtualStore\Program Files\プログラムのフォルダ名 (64bit環境の場合はProgram FilesではなくてProgram Files(x86)

上のフォルダにファイルが出力されてます。これをいじらないといけなかったようで。
どうしてもProgramFiles内にファイルを置きたいのであればそのフォルダにフルコントロールの権限を与えておけばよいようです。
UACの意味がなくなるような気もしますが(

参考

Windows Vista,7 & 8のUAC対策について