【问题标题】:Windows IOT: Failed to start package BlinkyHeadlessWindows IOT:无法启动包 BlinkyHeadless
【发布时间】:2016-01-28 13:11:34
【问题描述】:

我已经在 Windows IOT 和 Raspberry PI 2 上工作了一段时间,但我所有的工作都是通过 Visual Studio 2015 完成的。事情进展顺利,直到我想在没有 Visual Studio(独立模式)的情况下运行应用程序,那时事情开始让我发疯了。

该应用程序在调试中运行良好,但是当我进入 IOT Web 界面以独立运行它时,我总是收到“无法启动包 BlinkyHeadlessVB...”。 我正在为 BlinkyHeadless 运行来自 Microsoft 的样本的精确副本。

我尝试在发布模式下构建并部署,结果相同(通过 VS 很好,但无法自行启动)。 Raspberry PI 以无头模式运行。 我什至尝试选中“不启动,但在启动时调试我的代码”框,同样的事情,无法从 Web 界面运行它。 我还尝试构建 appx 文件并通过 Web 界面安装它,同样的事情。

我快疯了,尤其是错误说它失败了,没有任何解释(至少我找不到)。

我觉得我错过了一些简单的东西(而且可能很愚蠢)。

有人有什么想法吗?我用谷歌搜索了几个小时,但找不到可行的解决方案。

非常感谢您的帮助..

环境详情:

主机:Windows 10

IDE:带有更新 1 的 Visual Studio 2015 社区版

设备:Raspberry PI 2 B 型

设备操作系统:Windows IOT v10.0.10586

项目试图运行:BlinkyHeadlessVB

【问题讨论】:

    标签: visual-studio-2015 uwp raspberry-pi2 windowsiot


    【解决方案1】:

    我解决了这个问题。 我将发布解决方案以防其他人遇到此问题,希望对他们有所帮助。

    第一个错误,我使用 ManualResetEvent 来阻止 BackgroundTask 退出。我应该使用 BackgroundTaskDeferral。例如:

    Private deferral As BackgroundTaskDeferral
    Public Sub Run(taskInstance As IBackgroundTaskInstance) Implements IBackgroundTask.Run
            deferral = taskInstance.GetDeferral
            'Your startup code
    End Sub
    

    然后,即使添加了延迟,它也不是从 Web 界面启动的,我已经通过 PowerShell(使用 enter-pssession)连接到 PI,并将我的应用程序设置为启动应用程序。

    1. 删除了默认启动应用:

      iotStartup 移除无头 zwave

    2. 将我的应用设置为默认启动:

      iotStartup 启动 headless myApp

    3. 重启 它会在 Web 界面的应用程序页面中列为正在运行的应用程序。

    希望能帮助到那里的人..

    菲拉斯

    【讨论】:

    • 但在问题中,您说的是“我正在为 BlinkyHeadless 运行来自 Microsoft 的样本的精确副本”。你怎么可能在“精确副本”中使用ManualResetEvent ???
    猜你喜欢
    • 2019-04-04
    • 1970-01-01
    • 2022-12-07
    • 1970-01-01
    • 1970-01-01
    • 2016-11-12
    • 2019-01-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多