问题标签 [desktop-bridge]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
120 浏览

uwp - 对于由 Desktop App Converter 转换的应用程序,计划任务不会运行

我已使用 DAC 转换了一个桌面应用程序,但计划任务失败。任务已成功创建,但无法运行并出现错误 2147942405。我该如何解决?

0 投票
2 回答
649 浏览

uwp - 桌面应用程序转换器中的警告

我有一个小型阅读器应用程序(.NET4.6.1),旨在通过桌面应用程序转换器转换为 UWP。我使用的命令如下(.msi):

DesktopAppConverter.exe -Installer C:\install\Setup1.msi -Destination C:\output -PackageName "MyApp" -Publisher "CN=MyPublisher" -Version 0.0.0.1 -Verbose

我还尝试了 .exe 安装程序:

DesktopAppConverter.exe -Installer C:\install\Setup1.exe -InstallerArguments "/S" -Destination C:\output -PackageName "MyApp" -Publisher "CN=MyPublisher" -Version 0.0.0.1 -Verbose

但每次我收到以下三个警告:

警告摘要:W_EXE_NOT_DISCOVERED 无法从任何快捷方式确定应用程序可执行文件。MakeAppx 将失败,直到您修复 AppxManifest.xml 中的 Application Executable 属性

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

W_NO_ICONS_EXTRACTED 图标提取失败。改为使用占位符资产。请检查更多详细信息:“使用“2”参数调用“ExtractAndSaveIcons”的异常:“系统找不到指定的文件”。

以上两个安装程序(.msi 和 .exe)在我的计算机上运行良好,DesktopAppConverter.exe 也可以运行(我在 notepad++ 示例上尝试过。)。请给一些建议。谢谢

0 投票
1 回答
4205 浏览

uwp - 使用 FullTrustProcessLauncher 类从 UWP 应用启动 powershell 脚本

有没有办法从我的 UWP 应用程序启动 powershell 脚本?

我读过我们必须使用 FullTrustProcessLauncher 类,但我不明白如何使用/实现它。

你有什么主意吗 ?

0 投票
1 回答
500 浏览

desktop-bridge - 桌面应用程序转换器无法运行,并显示:“传递给系统调用的数据区域太小”

我已经从 Windows 商店安装了 Desktop App Converter。当我尝试运行应用程序(实际上只是启动它)时,我收到以下消息:

我尝试运行Windows 应用程序的疑难解答程序,它告诉我“Windows 应用商店缓存和许可证可能已损坏”并尝试修复它们,但再次运行疑难解答程序会出现同样的问题。

每次我尝试运行 Desktop App Converter 时,事件查看器中都会出现 2 个错误:

...都来自 AppModel-runtime

有什么想法可以从这里进行故障排除吗?

0 投票
1 回答
531 浏览

uwp - 从 Visual Basic 6.0 调用 COM Interop .Net 程序集

我们有一个在 Visual Basic 6.0 上运行的项目,我们尝试在桌面桥中迁移。当我们使用 DAC 命令提示符时,一切正常。转换后的应用程序按原样转换,在任何测试计算机上都可以正常工作。

我们甚至设法添加了一个 COM Interop .NET 程序集,以便能够使用 UWP 功能(如 toast)

在任何开发机器上一切正常,但在测试机器上却不行。好吧,从 Visual basic 加载 COM Interop .Net 程序集似乎不起作用。

测试机和开发机的主要区别:

  1. 在开发机器上,Visual Studio 2017将 dll 注册为 COM 互操作(使用regasm, Under the Hood)
  2. 在测试机器上,我们首先制作一个.msi安装文件(使用Visual Studio 6 安装程序,是的 OLD 一个 interdev 风格的 IDE;),然后我们将 DAC 命令行应用到这个新的 .msi

因此,看来我们必须在目标测试机器上手动注册此程序集,使用regasm... 因为Visual Studio 6 安装程序不知道如何注册互操作程序集(使用regasm

我们如何应对这种情况?

作为细节,我们有一些简单的东西:

  • MyApplication.exe (vb6)
  • MyWrappers.dll(和.tlb)(为 COM 互操作标记的 .net C# 程序集并引用 UWP SDK 以便能够启动通知)

再一次,“安装”不会崩溃。仅调用 COM 互操作程序集以启动 toast 通知。

实际上,如果 DAC 没有为 COM 互操作打包此程序集,则此错误似乎很明显,这是有道理的。

任何想法 ?:)

塞巴斯蒂安

0 投票
1 回答
576 浏览

c# - 没有控制台窗口的 AppServiceBridge

我在玩微软的 UWP AppServiceBridgeSample这里)。

它运行良好,但我想摆脱BackgroundProcess应用程序的控制台窗口。这样做的原因是我BackgroundProcess启动了另一个 Win32 桌面应用程序并且仅作为中介工作,所以我不想用控制台窗口打扰用户。(是的,它可以最小化,但我宁愿根本不显示它)。

我曾尝试使用此处提到的 API 隐藏它,但没有运气,控制台窗口仍然可见。也没有将项目的输出类型从Console Application.workWindows Application切换。

我尝试过的另一件事是将其他BackgroundProcess项目创建为 Windows 应用程序。在我调用之前它运行良好AppServiceConnection.OpenAsync(),这导致BackgroundProcess应用程序退出强文本,因此与 UWA 的连接不可用。

似乎只能从控制台应用程序打开 AppService 连接。

所以这是我的两个问题:

  1. 是否有可能隐藏后台进程的控制台窗口?
  2. 我可以将后台进程用作 Windows 应用程序,而不会在调用AppServiceConnection期间失败吗?OpenAsync
0 投票
1 回答
826 浏览

uwp - Windows 应用商店应用程序 - 更新挂钩和触发器

(somehwat 与thisthis相关)

tl;dr:对于通过 Windows 应用商店分发的桌面桥转换应用程序,是否有某种更新挂钩?如何从转换后的应用触发应用更新?


我使用 Windows 应用商店来分发我的电子驱动应用程序。我想知道是否有任何方法可以判断该应用程序最近是否更新?

我有两个半问题:

1)我存储了AppData\Roaming似乎为商店应用程序虚拟化的设置。可悲的是,当我从商店中提取应用程序更新时,似乎整个目录都被清除了,因此所有用户设置都丢失了。有什么方法可以让 AppData 保持在应用更新上?

2) 如何从转换后的应用程序中触发应用程序更新?据我了解,商店不会自动更新应用程序(即使它被标记为强制)。必须启动 VS 并编写一个使用某些商店 API 来更新应用程序的 exe 似乎有点矫枉过正。有没有更简单的解决方案?

2½) 我如何知道我的应用程序是否已更新?我考虑将应用程序版本存储在设置中,并将其与应用程序启动时的运行版本进行关联。但由于我的问题1)这不起作用。

提前致谢。


随时发布更多答案。接受的答案,尽管是正确的并且指向正确的方向,但仍然感觉很麻烦。在一个理想的世界中,会有一个您只需npm i. 因此,鼓励寻找/构建更简单的解决方案。(非常感谢约翰斯蒂芬威克无论如何!)

0 投票
1 回答
439 浏览

desktop-bridge - 构建桌面桥 UWP 应用程序时 DLL 中出现“重复条目”错误

我正在尝试使用桌面桥将 Windows 窗体应用程序转换为 UWP。由于我拥有(大部分)源代码,因此我正在尝试使用 Visual Studio进行转换,而不是使用命令行工具。我的应用程序使用了一些我没有源代码的第三方 DLL。

将新的 JavaScript UWP 项目添加到我的解决方案后,我将原始应用程序的 DLL 放置在项目子文件夹中,如文档中所述。当我构建 UWP 项目时,其中一些 DLL 会导致奇怪的错误。这些错误似乎是由 DLL 中的重复资源条目引起的,但奇怪的是,这些 DLL 在我的标准 Windows 窗体项目中被引用而没有问题。

错误状态:

  • 双重输入
  • 'DevExpress.Data.PropertyNamesRes/DevExpress/XtraPrinting/XpsDocumentOptions' 或其父级之一被定义为资源和范围,这是不允许的

我一直在挖掘和搜索这些错误几个小时,但我没有找到任何有意义的信息。我还使用 ILDASM 分析了 DLL 标头,但没有发现其中明显的问题。这里有没有人遇到过类似的问题?提前感谢您提供任何信息。

0 投票
2 回答
394 浏览

uwp - 在 VLC 安装程序上运行桌面应用程序转换器时出错

在 VLC 安装程序上运行转换器时出现 E_STARTING_ISOLATED_ENV_FAILED 错误。我选择 VLC 是因为在第 9 频道的其中一个视频中,使用了 VLC 作为示例。我想先尝试在示例 exe 安装程序上运行转换器,然后再在实际的 exe 安装程序上运行它。

我什至尝试了 -Cleanup All 并再次进行了设置,但仍然是同样的错误。知道如何排除故障并解决此问题吗?以下是转换器的错误消息:



0 投票
2 回答
102 浏览

desktop-bridge - 选择“无论用户是否登录都运行”时,桌面桥应用程序无法从计划任务启动

我们使用 Desktop App Converter Tool 转换了我们的 .NET 桌面应用程序。无论用户是否登录,应用程序都需要从计划任务中运行。我们首先尝试在用户登录时从计划任务运行应用程序。我们为应用程序创建了一个协议,并使用该协议成功地从任务调度程序中调用了应用程序,并带有一些参数。当我们尝试通过选择“无论用户是否登录时运行”选项(即会话 0)从任务调度程序调用应用程序时使用这种方法,应用程序无法启动。

当用户登录或未登录时,我们如何从任务计划程序调用 UWP 桌面桥应用程序,即会话 0/非交互式会话?