【问题标题】:WinRT - Start an application on Windows boot?WinRT - 在 Windows 启动时启动应用程序?
【发布时间】:2011-09-29 16:45:57
【问题描述】:

我正在为 Windows 8 开发新的 WinRT (.NET 4.5) 框架中的 Metro 风格应用程序,我想知道应用程序是否可以通过某种方式(通过注册表或其他方式)注册当 Windows 启动时,它自己也会启动。

我无法在其他任何地方找到有关此的任何信息,仅适用于 Windows 7 或更低版本的普通样式应用程序。

【问题讨论】:

  • @TomTom:WinRT 是不同于 Win32 的 API。问题是您是否可以通过 WinRT 控制这些事情,而不是如何通过通用 Windows 应用程序来控制这些事情。 :)
  • @TomTom:不,不是。如果您打算在 ARM CPU 或平板电脑上运行,则不会。它存在于传统的 x86 桌面 Windows 机器上,但如果您计划使用 WinRT,它可能是允许您的应用程序在 Win32 不可用的平台上运行。 (顺便说一句,内核与它无关。Win32也不是内核)
  • @jalf:是什么让你认为 Windows ARM 上没有 Win32 API?
  • @Gabe - 在我职业生涯的一个非常悲伤的时刻,我编写了宾果游戏调度软件。我们不得不在按钮上使用颜色而不是文字,因为很多志愿者助手无法阅读/或处理这些文字。这种人需要被排除在其他一切之外。 FWIW,一个支持电话会是这样的,“你是红-绿-绿-红-绿-蓝吗?”
  • @Gabe:这就是我对他们声明的理解。我可能是错的。但请记住,Microsoft 肯定希望 为主要的 ARM 目标(平板电脑)重写应用程序。他们想强迫你在那里使用 Metro,他们想避免在他们闪亮的新平台上匆忙移植 Win32 应用程序。他们不会将 IE 或 Office 按原样移植到 ARM,因为它们需要重写才能在基于触摸的平台上正常工作。

标签: c# .net windows-8 windows-runtime


【解决方案1】:

没有办法让 Metro 风格的应用程序在启动时启动。用户必须从开始屏幕调用应用程序。 Metro 风格的应用程序不能是服务,因此在启动时启动它们似乎不是正确的方法,就像在启动时启动 Microsoft Word 或 Adob​​e Photoshop 一样。

【讨论】:

    【解决方案2】:

    Microsoft 的 Metro 风格应用的目标是用户始终处于控制之中。因此,Metro 风格的应用程序无法在机器启动时自行激活。此外,传统的 Win32/.NET 桌面代码无法与 Metro 风格的应用程序交互,因此无法在后台启动 Metro 风格的应用程序。

    也就是说,如果您的应用已将自己注册为渲染其自己的图块的处理程序,那么它会定期调用并被要求重新渲染其图块的内容,以便它应该始终能够显示其最新状态/当用户查看他们的起始页时向他们提供新闻/信息。

    【讨论】:

    • 你是如何做到这一点的:“也就是说,如果你的应用程序已经将自己注册为处理程序以渲染它自己的磁贴,那么它会定期调用并被要求重新呈现它的磁贴内容”
    【解决方案3】:

    我认为您可以将所有启动程序作为公开适当 WinRT 级别连接的服务运行。然后用户只需要启动客户端应用程序。

    也很好分离。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-23
      • 2016-08-12
      • 1970-01-01
      相关资源
      最近更新 更多