以下のシナリオをどのように達成できるか、
1)いくつかのコードを実行する必要があるexeは1つだけである必要があります
2)また、追加/削除プログラムにエントリを追加する必要があります
3)プログラムの追加/削除からエントリをアンインストールするとき、アンインストールを完了するためにいくつかの関数/APIを呼び出す必要があります。
必要な「いくつかの関数/API の呼び出し」が次回の再起動時にファイルを削除するのと同じくらい簡単な場合は、ここで説明するように「再起動時に削除」にします。
Windows レジストリ エディター バージョン 5.00 [HKEY_CLASSES_ROOT*\shell\Delete on reboot\command] @="CMD /E:OFF /C REG ADD >HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Currentversion\RunOnce /v \"Del %1 >OnNextReboot \" /d ^\"cmd.exe /c DEL /F /Q \\"%1\\"\" /f\"" [HKEY_CLASSES_ROOT*\shell\Open] [HKEY_CLASSES_ROOT\Folder\shell\Delete on reboot \command] @="CMD /E:OFF /C REG ADD >HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Currentversion\RunOnce /v \"Del %1 >OnNextReboot\" /d ^\"cmd.exe /c RD / S /Q \\"%1\\"\" /f\""
再起動時にレジストリ エントリを削除するには、これを使用します (説明はこちら):
[HKEY_CLASSES_ROOT*\shell\Delete on reboot\command] @="CMD /E:OFF /C REG ADD >HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Currentversion\RunOnce /v \"Del %1 >OnNextReboot\" /d ^ \"cmd.exe /c DEL /F /Q \\"%1\\"\" /f\"" [HKEY_CLASSES_ROOT*\shell\Open] [HKEY_CLASSES_ROOT\Folder\shell\Delete on reboot\command] @= "CMD /E:OFF /C REG ADD >HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Currentversion\RunOnce /v \"Del %1 >OnNextReboot\" /d ^\"cmd.exe /c RD /S /Q \\ "%1\\"\" /f\""