【发布时间】:2017-02-14 22:13:05
【问题描述】:
我正在尝试使用 Desktop App Converter,但它经常失败并出现 E_CREATING_ISOLATED_ENV_FAILED 错误。
有意义的内部异常是System.IO.DirectoryNotFoundException
内部异常[3]: System.IO.DirectoryNotFoundException:系统找不到指定的路径。 (HRESULT 异常:0x80070003)
从日志文件中,我得到了以下信息。
很可能问题出在这两行(请参见下文)。
设置转换环境 [2016-09-30T14:23:26] 将 D:\MyApp 的内容复制到 C:\DesktopAppConverter\ccba45a0-1360-478d-b9e2-66d32dbedc0d\shared\installer 以与隔离环境共享 [2016-09-30T14:23:26] 将 KnownFolderDump.exe 及其依赖项复制到 C:\DesktopAppConverter\ccba45a0-1360-478d-b9e2-66d32dbedc0d\shared\dac\bin
我调查了以 GUID 命名的文件夹,发现里面没有“SHARED”文件夹。因此,没有 MyApp 的内容,也没有 KnownFolderDump.exe。 “dac”文件夹存在,但在“output”下,而不是在“shared”下。
“dac”文件夹是空的。异常 System.IO.DirectoryNotFoundException 证实了我的结论。问题是如何解决这个问题?
每次转换都会出现问题。
我无法尝试提前创建文件夹,因为每次转换器都会生成并使用新的 GUID。
我尝试了两种不同的安装程序(InnoSetup 和一个由 7zip 生成的普通自解压存档)。我还尝试了两个不同的应用程序:WPF/.NET 4.0 和一个普通的 Win32 应用程序,除了系统库之外没有其他依赖项:kernel32、user32、gdi32 和 msvcr90.dll)。
7zip 自解压存档也依赖于 ole32、shell32、oleaut32 和 msvcrt.dll msvcr90.dll)。
感谢您的建议!
【问题讨论】:
-
你检查过Prepare your desktop app for conversion to UWP吗?并非所有桌面应用都可以转换为 UWP 应用。
-
我已经检查了这些要求,谢谢你的链接!但是,所有这些要求都针对应用程序而不是安装程序。但转换器使用安装程序作为起点。我检查了由 InnoSetup 创建的安装程序的依赖项。它是在 Delphi 上编写的,不直接链接到任何 C 运行时。现在我要试试to manually convert 我的应用程序。
-
我通过将新的 14393 Enterprise 版本(来自 Windows Insider 程序)安装到 Hyper-V 虚拟机暂时解决了这个问题。转换器在那个新鲜的环境中工作没有任何问题。
标签: .net winapi uwp desktop-bridge desktop-app-converter