Qml.net + .net core 创建跨平台桌面程序

现在以Github上的示例来讲解如何使用https://github.com/qmlnet/qmlnet-examples

1、先确保机器已安装 .net core sdk 2.2

2.下载示例 ,还原nuget包,编译项目,然后右键工程点发布/publlish, 配置发布的中选项:

部署模式:独立,  这会自动输出所有依赖项目到publish目录,这样目标机器不需要安装dotnet core runtime

目标运行时:win-x64 ,选择你要发布的平台,linux为 linux-x64

点发布即可。

在发布的文件夹中点Features.exe 运行即可,或 使用命令:dotnet Features.dll

此时你会发现界面没有启动,实际在下载qt依赖项目:qmlnet-qt-runtimes,下载完后就会显示。

可以从启动代码

    RuntimeManager.DiscoverOrDownloadSuitableQtRuntime();

看出问题。

如何网络不好,可以手动下载后放到程序目录下

window 包:"https://github.com/qmlnet/qt-runtimes/releases/download/releases/qt-5.12.2-ad0689c-win-x64-runtime.tar.gz"

linux 包:"https://github.com/qmlnet/qt-runtimes/releases/download/releases/qt-5.12.2-ad0689c-linux-x64-runtime.tar.gz"

在程序根目录创建qmlnet-qt-runtimes文件夹,将window包解压到qt-5.12.2-ad0689c-win-x64,里面结构为

qmlnet-qt-runtimes

                            |--------qt-5.12.2-ad0689c-win-x64

                                                                                |----qt

                                                                                |----version.txt

linux 对应就是将qt-5.12.2-ad0689c-win-x64改为qt-5.12.2-ad0689c-linux-x64。

注意别在window上解压qt-5.12.2-ad0689c-linux-x64-runtime.tar.gz,因为里面有些linux的link在windows上无法识别,

所有需要在linux上解压。

对于windows上打开会有console 窗体,可以安装NSubsys 的nuget包解决,安装后再发布就不会有console 窗体显示了

猜你喜欢

转载自www.cnblogs.com/karl-F/p/11290592.html
今日推荐