【问题标题】:Startup apps don't start until logging off and on启动应用程序在注销和重新启动之前不会启动
【发布时间】:2019-11-18 00:09:44
【问题描述】:

已解决。 (见我的回答。)

我有几个使用桌面桥的启动应用程序。在过去,他们曾经工作得很好。现在,可能在某些 Windows 更新之后,重新启动后,当我第一次登录时它们不会启动,甚至不会出现在任务管理器的启动选项卡中。在我注销并重新登录后,它们会立即启动,并且还会出现在任务管理器中。

更多信息

他们都使用desktop:Extension Category="windows.startupTask"。 在登录选项中,我已将“使用我的登录信息自动...”关闭关闭

编辑

在 2019 年 7 月的最后一次 Windows 更新后问题自行解决。

编辑 2

说得太早了。问题又回来了。并且它不会(总是?)在注销和重新启动后自行解决。似乎几分钟后(远远超过startup delay 的 10 秒)它们确实(有时?)出现在启动列表中(但也许只有在我手动启动它们之后?)。

【问题讨论】:

  • 你用的是什么版本的Win10?另外,清单中的操作系统目标是什么?
  • 1903 和 1809..

标签: c# uwp windows-store-apps win-universal-app desktop-bridge


【解决方案1】:

您是否验证过 MSDN 中关于 StartupTask 类的文档?那里有几个示例,以及有关如何正确执行此操作的说明。也许您的应用清单中缺少某些内容?看看这个:MSDN Windows ApplicationModel StartupTask

编辑

从页面的“备注”部分,也许这个注释会有所帮助

“应用程序必须将 windows.startup 扩展类别添加到其应用程序 包清单,以便在启动时或用户时激活 登录。添加此扩展程序本身不会自动 导致应用启动。

UWP 应用必须从 UI 线程调用 RequestEnableAsync 才能触发 用户同意对话框。如果用户同意,UWP 应用将启动 在启动或用户登录时。请注意,UWP 启动应用程序将启动 最小化。”

【讨论】:

  • 来自您的链接:If RequestEnableAsync is called from a packaged desktop app, no user-consent dialog is shown. Desktop apps can set their startup tasks to Enabled in the manifest, in which case they do not need to call RequestEnableAsync.。此外,正如我现在意识到我需要添加问题一样,这在某些 Windows 更新之前可以正常工作。
【解决方案2】:

找出原因很困难,因为问题似乎以随机方式出现。有时会自行解决,有时不会...

原因是半外因造成的。我有一个注册为启动应用程序但没有“安装”的应用程序。它仍在开发中,并在 Visual Studio 中运行。登录时,它的驱动器无法立即使用。一旦该驱动器可用,该驱动器和其他启动应用程序就会被添加到启动列表中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-10-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多