c++ - Windows 启动时的第二次自动运行

标签 c++ windows winapi

我的程序需要 2 次系统重启才能完成其工作。 我想使用 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce 注册表项来自动运行我的程序。 操作顺序:

  • 将自身写入RunOnce键
  • 重启
  • 自动运行并做一些事情。
  • 将自身写入RunOnce键
  • 重启
  • 完成作业

但是MSDN article说:“从这些键中的任何一个运行的程序在执行期间不应写入键”。

如何在第二次重启后自动启动我的程序?

第一次重启后:如果因为程序已经从 RunOnce 运行而禁止写入 RunOnce,我的程序如何要求系统在重启后自动运行它?

最佳答案

最简单的解决方案是将自动运行指向一个批处理文件。您可以在重新启动之间随意更改批处理文件。

更好的解决方案当然是至少消除这 2 次重启中的一次。即使您要安装新的文件系统驱动程序,重新启动一次也足够了。

关于c++ - Windows 启动时的第二次自动运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29255120/

相关文章:

windows - Go 编译器可以安装在 Windows 上吗?

c++ - CALLBACK 关键字在 Win-32 C++ 应用程序中意味着什么?

c# - 捕获外部进程输出

c++ - 当变量不在全局范围内并在自定义函数中使用时,如何在 C++ 中设置变量的值?

c++ - 如何获取数组的以 10 为底的对数?

windows - 安装 Windows 8 SDK 时出错

c++ - 来自 boost/serialization/vector #include 的链接器错误

c++ - 如何读取 stdin 以 qt 结尾?

c++ - .rc 文件中的 TEXTINCLUDE 部分重复

c++ - 将 SID 转换为字符串