无需 VMware、Parallells、Virtuabox、Bootcamp 等即可在 OSX 上运行 ClickOnce 应用程序

无需 VMware、Parallells、Virtuabox、Bootcamp 等即可在 OSX 上运行 ClickOnce 应用程序

我运行的是 Ctrader,这是一个 clickOnce 应用程序,由于没有 OSX 版本(也没有 *nix 版本),我只能为此运行 Windows。我尝试过 Parallells、VMwareFusion、Virtuabox、Bootcamp,但它占用了太多资源,即使在我的 MBP 2,6 i7 16GB 上也无法顺利运行 - 一旦打开几个实例,它就会变得笨重,当快速执行决定胜负时,你不会想要它。我也尝试过 Wine、Codeweavers crossover、WinOnX,可能还有其他一些奇怪的 Windows 模拟器,但最终还是无法运行安装后的 ClickOnce 应用程序,或者遇到 .Net 依赖错误 -见鬼 - 我尝试修复一些错误,但我不是开发人员,而且它需要太多维护,因此不太方便,或者无法成为仅为此程序运行完整 OS 虚拟化层的可行替代方案...因此,我呼吁 stackexchange 超级用户的智慧,希望有一个我尚未找到或尝试过的选项,可以在 OSX 上体面地运行它?我最近几年没有关注虚拟化的发展,但 Kubernetes 可能是一个解决方案吗?期待您的意见。非常感谢,亲切的先生们

答案1

这不是对 OP 的完整回答,但我希望这可以帮助任何人在搜索如何在 wine/Crossover 下运行 ClickOnce 应用程序后到达这里。

这描述了我在 macOS 13 上的 M1 MacBook Pro 上的 Crossover 22 下成功安装和运行专有的 ClickOnce 应用程序的经验:

  1. 将 Microsoft .Net Framework 4.7.2 安装到新瓶中 由于依赖项、服务包等的安装,这需要一段时间才能完成。我使用了 Windows 10 64 位瓶。

  2. 将未列出的应用程序安装到新瓶中,然后选择 ClickOnce 安装程序 exe

  3. ClickOnce 应用安装程序运行、检查更新、下载并打开应用。

  4. Crossover 安装过程要等到部署履行服务分布式文件系统已手动退出。它由安装程序启动,并执行 ClickOnce 应用程序更新/下载。

  5. 未添加应用启动器。

对我来说,问题是该应用程序通过 Crossover 22 安装并运行,但无法再次运行该应用程序。

浏览 ClickOnce exe 确实有用,但更新后 ClickOnce exe 的位置会发生变化,并且为了始终如一地运行,每次都必须运行应用安装程序,这不是一个很好的体验。需要一个应用启动器。


创建应用启动器/快捷方式:

找到.appref-ms应用程序的文件,例如,AppName.appref-ms它在 Windows 系统上充当快捷方式。这将调用部署履行服务分布式文件系统运行 ClickOnce 应用程序。该.appref-ms文件包含分布式文件系统检查更新(网址或 UNC)。

.appref-ms文件是作为“开始”菜单项创建的,位于drive_c/users/crossover/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/

开始菜单位置是 Windows 安装程序放置程序快捷方式的地方,也是 Crossover 获取应用程序启动器的地方。

.appref-ms使用文本编辑器打开文件并复制应用程序的 URL/位置。

在 Crossover 中,选择新瓶子后,单击运行命令在对话框中,浏览到rundll32.exe位于瓶子drive_c\windows\system32文件夹中的。

附加:dfshim.dll,ShOpenVerbApplication+ 从文件中记下的下载 URL .apppref-ms

因此它看起来与此类似:

"/Users/user/Library/Application Support/CrossOver/Bottles/New Bottle/drive_c/windows/system32/rundll32.exe" dfshim.dll,ShOpenVerbApplication https://downloadlink/AppName.application

单击并运行该命令。这将在“开始菜单”文件夹中Save command as a Launcher创建一个包含该命令的 Windows 。.lnk

您将能够在后续时间使用该链接启动您的应用程序,而无需运行应用程序安装程序。


由于 Crossover 的应用启动器只是一个 Windows.lnk文件,因此可以直接编辑,这可能更方便,而不是使用 Crossover 的运行命令创建快捷方式。

这是一个 Windows Link 文件编辑器(在 wine 下运行):

https://github.com/ElektroStudios/Easy-Link-File-Viewer/releases

相关内容