1

我做了什么

我已经使用这样的命令行成功打包了一个桌面应用程序:

DesktopAppConverter.exe -Installer "_setup.bat" -InstallerArguments "<log_folder>" -Destination "c:\packaged_app" -PackageName "MyPackageName" -Publisher "CN=MyPublisher" -AppId "MyApp" -AppDisplayName "MyApp" -AppDescription "MyApp" -PackageDisplayName "MyApp" -PackagePublisherDisplayName "MyPublisher" -Version 1.2.3.4 -Verbose

要在本地测试应用程序,我已使用以下 PowerShell cmdlet 成功安装了该程序包,如本 MSDN 页面所述:

Add-AppxPackage –Register AppxManifest.xml

然后我尝试通过单击其开始菜单项来启动该应用程序。

错误症状

弹出一个错误对话框,如下所示:

C:\packaged_app\MyPackageName\PackageFiles\MyApp\my.exe

无效的参数。

显示的路径是正确的。

Windows 事件日志具有相应的条目:

%4: 无法为程序包 %1 创建进程,因为在准备激活时遇到错误。%5

事件日志条目的完整 XML(省略了 EventPayload 数据):

Log Name:      Microsoft-Windows-AppModel-Runtime/Admin
Source:        Microsoft-Windows-AppModel-Runtime
Date:          10/19/2017 3:51:08 PM
Event ID:      203
Task Category: None
Level:         Error
Keywords:      DesktopAppXProcess
User:          SYSTEM
Computer:      DESKTOP-5ODUDQ0
Description:
%4: Cannot create the process for package %1 because an error was encountered while preparing for activation. %5
Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-AppModel-Runtime" Guid="{f1ef270a-0d32-4352-ba52-dbab41e1d859}" />
    <EventID>203</EventID>
    <Version>0</Version>
    <Level>2</Level>
    <Task>0</Task>
    <Opcode>0</Opcode>
    <Keywords>0x2000000000000004</Keywords>
    <TimeCreated SystemTime="2017-10-19T13:51:08.634936000Z" />
    <EventRecordID>874</EventRecordID>
    <Correlation />
    <Execution ProcessID="1204" ThreadID="4232" />
    <Channel>Microsoft-Windows-AppModel-Runtime/Admin</Channel>
    <Computer>DESKTOP-5ODUDQ0</Computer>
    <Security UserID="S-1-5-18" />
  </System>
  <ProcessingErrorData>
    <ErrorCode>15005</ErrorCode>
    <DataItemName>PackageName</DataItemName>
    <EventPayload></EventPayload>
  </ProcessingErrorData>
</Event>

我试过的

我已将参数添加-Sign -MakeAppX到 DesktopAppConverter 命令行。安装生成的证书和 .appx 包后,我已经能够从其开始菜单项成功启动该应用程序。

但是根据这个 MSDN 页面,这对于本地测试来说不是必需的:

您可以运行您的应用程序以在本地对其进行测试,而无需获取证书并对其进行签名。

由于应用程序相当大(大约 100 MiB),我希望避免每次更改时都必须重新打包和退出应用程序。

系统详情

  • Windows 10 x64 build 15063.674,在 VirtualBox 中运行
  • DAC 基础镜像:“BaseImage-15063-UPDATE.wim”
4

1 回答 1

0

我能够通过将 Windows 更新到最新版本(内部版本 16299.19)来解决该问题。

更新后,我使用“BaseImage-16299.wim”作为 DAC 基本映像完全重新安装了 DAC。

于 2017-10-26T15:39:33.427 回答