有没有办法让 Windows 8 延迟加载开始屏幕,直到所有启动程序都加载完毕?

use*_*565 11 desktop boot delay windows-8

目前,Windows 8 将在我的启动程序加载前 10-15 秒进入开始屏幕。由于这些包括我的触摸板驱动程序以及伽马校正程序,我希望它们在此之前加载。有没有办法做到这一点 - 要么延迟 Windows 8 显示开始屏幕,要么在到达登录屏幕之前以某种方式运行这些程序?

Tam*_*man 8

创建一个启动脚本,计算机将等待这些完成。因此,您可以实现一个简单的睡眠或等待两个程序都存在的东西,也许有一个超时以防止脚本挂起并且不允许您登录。

如何编写带有超时的批处理脚本?

为了让脚本等待,传统的技巧是 ping 一个不存在的 IP。

ping 192.192.192.192 -n 1 -w 10000 > nul
Run Code Online (Sandbox Code Playgroud)

此命令将尝试发送一个 ping 并让它在 10 秒内超时,因为 10000 毫秒是 1000 毫秒的 10 倍。我们将其通过管道传输到nul不会显示输出,这可能不是必需的,因为您正在执行启动脚本,但为了完整起见,将其放在此处。

正如 Bob 在评论中提到的,由于 Windows Vista,您还可以改为使用:

timeout /T 10 > nul
Run Code Online (Sandbox Code Playgroud)

可以在此处找到有关此变体的更多信息。

如何编写等待进程结束的批处理脚本?

另一种方法是使用此批处理脚本等待进程完成。

您需要将设置命令放在顶部,并且从:STOPPROC脚本底部的(包括该行)开始的所有内容,但不要包括这些-----------行。

然后,在中间,您可以调用call :STOPPROC notepad.exe将等待每个后续进程关闭的调用。

如何让计算机运行我的启动脚本?

请参阅我之前发布的此链接,其中详细解释了它:

  1. 打开本地组策略编辑器。

  2. 在控制台树中,单击Scripts (Startup/Shutdown)。路径是Computer Configuration\Windows Settings\Scripts (Startup/Shutdown)

  3. 在结果窗格中,双击Startup

  4. 在“启动属性”对话框中,单击“添加”

  5. 在“添加脚本”对话框中,执行以下操作:

    • 在“脚本名称”框中,键入脚本的路径,或单击“浏览”以在域控制器上的 Netlogon 共享文件夹中搜索脚本文件。

    • 在“脚本参数”框中,键入所需的任何参数,与在命令行中键入的方式相同。例如,如果您的脚本包含名为 //logo(显示横幅)和 //I(交互模式)的参数,请键入//logo //I

  6. 在“启动属性”对话框中,指定所需的选项:

    • <组策略对象> 的启动脚本:列出当前分配给选定组策略对象 (GPO) 的所有脚本。如果您分配多个脚本,则会按照您指定的顺序处理这些脚本。要在列表中向上移动脚本,请单击它,然后单击向上。要在列表中向下移动脚本,请单击它,然后单击向下

    • 添加:打开添加脚本对话框,您可以在其中指定要使用的任何其他脚本。

    • 编辑:打开编辑脚本对话框,您可以在其中修改脚本信息,例如名称和参数。

    • 删除:从启动脚本列表中删除选定的脚本。

    • 显示文件:显示存储在选定 GPO 中的脚本文件。

有没有另一种不涉及等待的方法?

老实说,您可能会考虑不这样做,而只是在开始屏幕上使用键盘。当我已经可以使用键盘启动程序时,我会在登录屏幕上等待更长时间......

请务必查看Windows8Fanatic的答案,以尽量减少延迟。