我终于成功将我的桌面应用程序转换为带有桌面应用程序转换器的AppX,并使用Franklin Chen的洞察力进行签名。
一步一步,我接近完成。但我现在正陷入一个新障碍(希望是最后一个障碍)。我试着按照这个建议去做 https://blogs.msdn.microsoft.com/vcblog/2016/07/07/using-visual-c-runtime-in-centennial-project/
我在我的机器上安装了vc_uwpdesktop.110.exe,vc_uwpdesktop.120.exe和vc_uwpdesktop.140.exe。
但仍然没有快乐。当我尝试安装AppX时,收到以下错误消息:
Ask the developer for a new app package. This
package may conflict with a package already
installed, or it depends on things not installed
here (package dependencies), or is made for a
different architecture (0x80073CF3)
20161015 - 更多信息:
我尝试按照说明使用add-appxpackage。
PS C:\Windows\system32> add-appxpackage –register C:\output\CheckWriterIII\PackageFiles\AppxManifest.xml
以下是命令行中的结果:
add-appxpackage:使用HRESULT部署失败:0x80073CF3,程序包失败更新,依赖性或冲突验证。 Windows无法安装包CheckWriterIII_3.2.0.0_x86__eqr0y32pbpypt因为这个包依赖于一个无法实现的框架 被发现。提供框架" Microsoft.VCLibs.120.00.UWPDesktop"由CN = Microsoft Corporation,O = Microsoft发布 公司,L = Redmond,S =华盛顿,C = US",中性或x86处理器架构,最低版本12.0.40652.5, 用这个包来安装。名称为" Microsoft.VCLibs.120.00.UWPDesktop"的框架目前安装的是:{} 注意:有关其他信息,请在事件日志中查找[ActivityId] 147c2bae-26c2-0005-268c-7c14c226d201或使用命令 line Get-AppxLog -ActivityID 147c2bae-26c2-0005-268c-7c14c226d201 在行:1个字符:1 + add-appxpackage -register C:\ output \ CheckWriterIII \ PackageFiles \ AppxM ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:WriteError:(C:\ output \ Check ... ppxManifest.xml:String)[Add-AppxPackage],IOException + FullyQualifiedErrorId:DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.AddAppxPackageCommand
按照指示,我提取了日志:
PS C:\ Windows \ system32> Get-AppxLog -ActivityID 147c2bae-26c2-0005-268c-7c14c226d201
时间ID消息 ---- - ------- 10/15/2016 5:41:58 PM 301调用过程是powershell.exe 10/15/2016 5:41:58 PM 603开始部署在程序包上注册操作 使用主要参数:AppxManifest.xml和 选项:DevelopmentModeOption。请参阅http://go.microsoft.com/fwlink/?LinkId=235160以获取帮助 诊断应用程序部署问题。 10/15/2016 5:41:58 PM 10002创造弹性 文件 C:\ ProgramData \微软\的Windows \ AppRepository \ 76c1ec66-a626-417f,是 73-95fd9ce4b88f_S-1-5-21-2501171662-860024267-76414939-1001_1.rslc 注册操作 包CheckWriterIII_3.2.0.0_x86__eqr0y32pbpypt。 10/15/2016 5:41:58 PM
607部署在包上注册操作 CheckWriterIII_3.2.0.0_x86__eqr0y32pbpypt已经 已退出并正在为用户DESKTOP-V1EBBS5 \ mitch运行。 10/15/2016 5:41:58 PM 613
将uri添加到Uris列表中: C:\输出\ CheckWriterIII \ PackageFiles \ AppxManifest.xml。 2016年10月15日 5:41:58 PM 628 Windows无法安装软件包 CheckWriterIII_3.2.0.0_x86__eqr0y32pbpypt因为这个 包依赖于无法找到的框架。提供框架 " Microsoft.VCLibs.120.00.UWPDesktop"发表于" CN = Microsoft 公司,O =微软 公司,L = Redmond,S =华盛顿,C = US",具有中性或x86处理器架构和 最低版本12.0.40652.5,以及此软件包安装。带有名称的框架 " Microsoft.VCLibs.120.00.UWPDesktop"目前安装的是:{} 10/15/2016 5:41:58 PM 605最后一个成功的州 达到索引。在到达下一个之前发生了故障 国家已解决。 hr:0x80073CF3 10/15/2016 5:41:58 PM 401部署注册操作 目标卷C:在包上 来自:(AppxManifest.xml)的CheckWriterIII_3.2.0.0_x86__eqr0y32pbpypt 失败了,错误 0x80073CF3。有关诊断应用的帮助,请参阅http://go.microsoft.com/fwlink/?LinkId=235160 部署问题。 10/15/2016 5:41:58 PM 404 AppX部署操作失败 包装CheckWriterIII_3.2.0.0_x86__eqr0y32pbpypt 错误0x80073CF3。此故障的特定错误文本是:Windows无法安装 包CheckWriterIII_3.2.0.0_x86__eqr0y32pbpypt因为这个包依赖 在...上 无法找到的框架。提供框架 " Microsoft.VCLibs.120.00.UWPDesktop"发表于" CN = Microsoft 公司,O =微软 公司,L = Redmond,S =华盛顿,C = US",具有中性或x86处理器架构和 最低版本12.0.40652.5,以及此软件包安装。带有名称的框架 " Microsoft.VCLibs.120.00.UWPDesktop"目前安装的是:{}
现在我不明白为什么它找不到Microsoft.VCLibs.120.00.UWPDesktop。我已经下载并安装了vc_uwpdesktop.120.exe 12.0.40653.00并对其进行了双重验证,不仅仅是在程序和功能中,而是在它应该是的磁盘上。
答案 0 :(得分:3)
感谢您的更新。这证实了问题所在。它实际上是在你的原帖中描述的,但它非常微妙:
我在我的机器上安装了vc_uwpdesktop.110.exe,vc_uwpdesktop.120.exe和vc_uwpdesktop.140.exe。
不幸的是,这并不符合您的想法。它安装了.appx文件,可用于重新分发框架依赖项。它实际上并没有自己安装框架依赖项。
要安装它们,您必须找到它们安装的.appx文件(或至少120 x86版本)并确保它们也已安装。您可以直接使用App安装程序,单独使用Add-AppxPackage(并提前),或者,我相信,通过在-DependencyPath参数中引用框架依赖项,将其作为程序包安装的一部分。
有问题的.appx文件的路径看起来像这样;根据需要调整您的案例的版本号和平台。只要确保你没有意外地使用没有" Desktop"以它的名字。
C:\ Program Files(x86)\ Microsoft SDKs \ Windows Kits \ 10 \ ExtensionSDKs \ Microsoft.VCLibs.Desktop。 110 \ 14.0 \ Appx \ Retail \ x86
在此处安装或引用正确的软件包后,您的主软件包应成功安装(或注册)。