我做了什么
我已经使用这样的命令行成功打包了一个桌面应用程序:
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”