代码之家  ›  专栏  ›  技术社区  ›  Yoopergeek

如果Windows Update强制重新启动,如何重新启动应用程序?

  •  14
  • Yoopergeek  · 技术社区  · 15 年前

    在办公室,当我晚上离开时,我很少注销或重新启动。我只需锁定我的工作站,然后回家,把我所有的开发工具都留在那里。

    如果Windows Update在午夜滚动并重新启动我的计算机,我只是有点恼火,因为当我第二天早上重新登录时,我运行的任何MS Office应用程序或Visual Studio实例都将自动重新启动,打开我可能正在处理的任何文件/项目/解决方案。

    我的问题是: 如何使我的Windows窗体应用程序(C)执行此操作?如果系统自动重新启动,我的应用程序是否可以“注册”重新启动?

    4 回复  |  直到 15 年前
        1
  •  8
  •   Rob    15 年前

    认为 这个 RegisterApplicationRestart win32 api函数可能是您所追求的,它是重新启动管理器api的一部分。

        2
  •  4
  •   Jacob Adams    15 年前

    如果您有Windows Vista或Windows 7,则可以使用托管重新启动和恢复API。该页面上的链接还指向一些有用的博客条目。

    http://channel9.msdn.com/posts/DanielMoth/Windows-Vista-Restart-amp-Recovery-APIs-from-managed-code/

        3
  •  2
  •   Thomas Levesque    15 年前

    一种简单的方法是向以下注册表项添加一个条目:

    HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
    

    只需创建一个包含应用程序路径的值(可选包括命令行参数)。该应用程序将在下次启动时运行,然后该值将被删除。

        4
  •  0
  •   Brian    15 年前

    步骤1:找出区分Windows触发的重新启动和标准重新启动的方法。一种解决方案是尝试预处理 messages .对于Windows触发的重新启动,它们可能是不同的…或者至少在某些情况下,它们在Vista中是不同的:/

    步骤2:如果检测到是Windows触发的重新启动,请添加一个计划的一次性任务。