带有InstallShield安装程序的Desktop App Converter - W_DISCOVERED_EXE_NOT_FOUND

时间:2016-10-20 14:30:41

标签: winforms installshield desktop-bridge project-centennial desktop-app-converter

我正在尝试将我的桌面应用程序Computator.NET(用WinForms编写)转换为UWP,它正在使用InstallShield安装程序,但DAC似乎找不到可执行文件。看起来它认为exe文件是一些临时安装程序文件。该过程的记录如下:

  

警告:DesktopAppConverter:警告' W_PACKAGE_DEPENDENCY_ADDED':A   依赖于框架包' Microsoft.VCLibs.140.00.UWPDesktop'   已添加到AppxManifest.xml中。看到   ' http://go.microsoft.com/fwlink/?LinkId=821959'作为指导   在本地部署之前安装软件包。否则,如果这样   出错,从中依赖项中删除相应的条目   在打包和部署应用程序之前的AppxManifest.xml。   警告:DesktopAppConverter:警告' W_DISCOVERED_EXE_NOT_FOUND':   发现的快捷方式表示app可执行文件应该是   ' \ Windows \ {安装FA089B43-0451-420A-968B-DCC3C55644C7} _8C37B49DBB16422C8EF917F2AEA02293.exe&#39 ;,   但找不到此文件。警告:DesktopAppConverter:警告   ' W_DISCOVERED_EXE_NOT_FOUND':发现的快捷方式表示该应用   可执行文件应该   ' \ Windows \ {安装FA089B43-0451-420A-968B-DCC3C55644C7} _A9A8E5CA913F4E1EB7F6ACDB86DAFB8B.exe&#39 ;,   但找不到此文件。警告:DesktopAppConverter:警告   ' W_DISCOVERED_EXE_NOT_FOUND':发现的快捷方式表示该应用   可执行文件应该是' \ Windows \ SysWOW64 \ msiexec.exe',但是这个文件   无法找到。警告:DesktopAppConverter:警告   ' W_EXE_NOT_DISCOVERED':应用程序可执行文件不能   从任何捷径确定。在您修复之前,MakeAppx将失败   AppxManifest.xml中的应用程序可执行属性警告:   DesktopAppConverter:警告' W_INSTALL_PATH_NOT_DISCOVERED':   Converter无法确定您的应用程序的安装路径。请   使用-AppInstallPath参数将app二进制文件移到VFS之外。   警告:DesktopAppConverter:警告   ' W_CANNOT_MAKEAPPX_WITHOUT_EXE':无法创建appx包而不用   设置应用程序可执行文件' AppxManifest.xml中的属性。   请设置应用程序可执行文件'中的财产   手动调用makeappx之前的AppxManifest.xml。警告摘要:   W_PACKAGE_DEPENDENCY_ADDED对框架包的依赖   ' Microsoft.VCLibs.140.00.UWPDesktop'被加入了   AppxManifest.xml。请参阅' http://go.microsoft.com/fwlink/?LinkId=821959'   有关在本地部署之前安装软件包的指导。   否则,如果这是错误的,请从中删除相应的条目   打包和部署之前在AppxManifest.xml中的依赖关系   你的申请。

     

W_DISCOVERED_EXE_NOT_FOUND发现的快捷方式表示该应用   可执行文件应该   ' \ Windows \ {安装FA089B43-0451-420A-968B-DCC3C55644C7} _8C37B49DBB16422C8EF917F2AEA02293.exe&#39 ;,   但是找不到这个文件。

     

W_DISCOVERED_EXE_NOT_FOUND发现的快捷方式表示该应用   可执行文件应该   ' \ Windows \ {安装FA089B43-0451-420A-968B-DCC3C55644C7} _A9A8E5CA913F4E1EB7F6ACDB86DAFB8B.exe&#39 ;,   但是找不到这个文件。

     

W_DISCOVERED_EXE_NOT_FOUND发现的快捷方式表示该应用   可执行文件应该是' \ Windows \ SysWOW64 \ msiexec.exe',但是这个文件   无法找到。

     

W_EXE_NOT_DISCOVERED应用程序可执行文件不能   从任何捷径确定。在您修复之前,MakeAppx将失败   AppxManifest.xml中的Application Executable属性

     

W_INSTALL_PATH_NOT_DISCOVERED转换器无法确定您的   应用程序的安装路径。请使用-AppInstallPath参数   将app二进制文件移到VFS之外。

     

W_CANNOT_MAKEAPPX_WITHOUT_EXE无法创建appx包   设置应用程序可执行文件' AppxManifest.xml中的属性。   请设置应用程序可执行文件'中的财产   在手动调用makeappx之前的AppxManifest.xml。

我使用相当简单的命令运行Dekstop App Converter:

  

DesktopAppConverter.exe -Installer C:\ Computator.NET \ Computator.NET.Installer.v2.1.0.beta.exe -InstallerArguments" / S" -Destination C:\ Computator.NET \ Appx -PackageName" Computator.NET" -Publisher" CN = Pawel Troka" -Version 2.1.0.0 -MakeAppx

1 个答案:

答案 0 :(得分:0)

似乎这个问题是因为InstallShield安装程序的工作方式。 幸运的是,有一种简单的方法可以解决这个问题 - 我们需要将路径传递给可执行文件,就像-AppExecutable "path_to_your_exe_file_after_installation"

一样

所以我的最终命令看起来像这样:

  

DesktopAppConverter.exe -Installer   C:\ Computator.NET \ Computator.NET.Installer.v2.1.0.beta.exe   -InstallerArguments“/ S”-Destination C:\ Computator.NET \ Appx -PackageName“Computator.NET”-Publisher“CN = Pawel Troka”-Version 2.1.0.0 -MakeAppx -AppExecutable“C:\ Program Files(x86)\ Computator.NET \ Computator.NET.exe“ - 签名

请注意,我还添加了-MakeAppx-Sign个参数,这是因为我希望它可以进行测试 - 只需将证书auto-generated.cer安装到Trusted Root Certification Authorities之后转换和我的appx已准备好在我的开发人员计算机上安装和测试。

This tutorial在此过程中非常有帮助,this article对我有所帮助。