07/02/23 19:19:46
漏れの自作プログラムの中に、ある条件下でレジストリの HKEY_CLASSES_ROOT 配下に書き込みを行うものがある。
そのプログラムが HKEY_CLASSES_ROOT 配下への書き込みを行うまでは、何度起動してもUACのダイアログは
出なかったんだが、一度書き込みを行ってからは毎回ダイアログが出るようになった。
「危険な動作を行うプログラム」ってことをVistaが学習したんだろうな。
じゃあ、その学習内容はどこにあるんだろうかと、レジストリを検索してみたところ、
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
に記録されていることがわかった。
ここに実行ファイルのフルパス名で作成されている値を削除したら、UACのダイアログは出なくなった。