跳转至

Auto Exec

AutoExecSandboxie Ini 中的一个沙箱设置。它指定了一组命令,这些命令会在沙箱每次被初始填充时执行。

示例:

   .
   .
   .
   [DefaultBox]
   AutoExec=regedit /s c:\defaultbox.reg
   AutoExec=cmd /c del /f "%windir%\system32\someExploitableDLL.dll"

第一个示例展示了如何使用 AutoExec 以某种方式填充沙箱注册表。第二个示例则展示了如何使用 AutoExec 删除不需要的 DLL 文件。在这两种情况下,所有定制操作都只发生在沙箱内部。

对于同一个沙箱,可以指定多个 AutoExec 设置。列出的命令会依次执行。这些命令(无论是一条还是多条)在某个特定沙箱的生命周期内只会执行 一次。如果希望 Sandboxie 再次执行这些命令,必须删除该沙箱。

即使命令执行失败,也不会再次执行,除非删除该沙箱。

目前,对于该设置,没有对应的 Sandboxie Control 配置选项

技术细节

每个 AutoExec 命令在被 Sandboxie 执行时,都会被记录到该沙箱的注册表中,具体路径为 HKEY_CURRENT_USER\Software\SandboxieAutoExec

如果某个命令已经被记录在沙箱注册表中,则不会再次执行。因此,清除沙箱会删除所有已记录的 AutoExec 命令,这样在下次有任何程序以沙箱模式启动时,这些命令会再次被执行。同时,也可以通过手动从该沙箱注册表键中删除相应命令,使其再次执行。