• CPF 入门教程


    CPF C#跨平台桌面UI框架,支持Windows,Mac,Linux,支持龙芯、飞腾等CPU

    系列教程

    CPF 入门教程(一)

    CPF 门教程 - 数据绑定和命令绑定(二)

    CPF 入门教程 - 样式和动画(三)

    CPF 入门教程 - 绘图(四) 

    CPF 入门教程 - 设计器和模板库的使用(五)

    CPF 入门教程 - 控件布局(六) 

    CPF 入门教程 - 属性和事件(七)

    CPF 入门教程 - 各个控件介绍(八)

    CPF 入门教程 - 各平台各系统发布说明(九)

    一般建议根据发布平台的注释掉其他平台的适配器,以及删除其他平台的引用,用来减少发布的dll数量。比如如果发布Windows上的,可以把Mac和Linux的注释掉

     

    一般的,项目右键,选择发布

    选择文件夹

    设置好发布路径,完成。

     

     

    选择netcoreapp3.0,如果你用的NET5的话,就选NET5,NET4是用来支持XP的,你可以根据需要改。net4版本用的是GDI+渲染,性能会稍微差一点。

    选择独立发布,独立发布可以不需要安装运行时就可以运行,就是程序包大了一些。独立发布只能是Netcore的,不支持net4。 win7上运行netcore可能需要打补丁。

    根据需要选择你的目标运行时

    裁剪程序集,一般选上,可以减少发布的程序包大小。至于单文件,你根据自己的需求选择。

     

    设置好了之后,按发布按钮,第一次发布的时候可能会发布失败,你可以再点发布按钮,再发布一下。

    打开你设置的发布目录,里面就是发布后可以运行的程序,直接复制到对应平台就能运行,默认情况下Linux和Mac的可执行文件是没有后缀的。

    如果选择NET5的话,Linux上提供的可执行文件无法直接双击启动,需要通过控制台启动,拖到控制台,按Enter启动

    各个平台打包方式,如果只是自己用的,不打包也可以运行

    注意:

    对于Linux的arm和龙芯的,需要带上对应的libSkiaSharp.so,其他CPU指令集平台默认有带libSkiaSharp.so

    【龙芯版本】libSkiaSharp-1.68.3.rar

    【ARM】libSkiaSharp-1.68.3.zip

    Windows

    可以找第三方程序打包工具,比如 SetupFactory、Advanced Installer 等等

    Mac

    默认案例源码里带打包文件夹。App.app文件夹,把文件夹解压出来,把Netcore独立发布出来的所有dll和那些资源都移到App.app/ Contents/ MacOS/

    Info.plist 用记事本打开 <key>CFBundleExecutable</key>这个键下面的值改成你的应用程序的名称,没有exe和dll后缀的。 

     

    CFBundleName是上面菜单名称

     

    CFBundleIdentifier是程序唯一标识,该标识符采用了类似Java包的命名方式,例如com.apple.myapp。该束标识符可以在运行时定位束。预置系统使用这个字符串来唯一地标识每个应用程序。

    当然把这个App.app文件夹复制到Mac下就能运行了。不过一般要打包为一个文件。

    把App.app整个目录压缩打包为tar、tgz、iso、dmg 其中一种格式,如果是其他压缩格式可能会导致没有权限运行

    Linux

    打包可以用 checkinstall 或者 dpkg  具体使用方法,你们自己百度吧

    龙芯

    由于指令集的问题,龙芯平台的程序发布,不能使用独立发布,必须改成依赖框架和可移植选项,而且必须根据当前龙芯提供的运行时版本选择netcore框架版本

     到 https://github.com/gsvm/loongson-dotnet/releases  下载对应的运行时,解压,然后配置环境变量

    export PATH="$PATH://自己改为运行时目录/"

    然后就可以用  dotnet XXX.dll  命令启动你的程序

    打包的时候,你可以把运行时也打包到一起,启动的时候通过快捷方式的启动路径 Exec=/usr/local/bin/安装路径/dotnet/dotnet /usr/local/bin/安装路径/你的程序.dll

    签名:<-CPF C# 跨平台桌面UI框架,支持Windows,Mac,Linux,包括XP,国产麒麟Linux等等->
  • 相关阅读:
    js里面的 InttoStr 和 StrtoInt
    预编译知识 (转载记录)
    C语言操作内存
    C语言操作文件
    C语言
    如何调试shell脚本
    设计模式-装饰者模式
    自己动手制作一个模版解析
    设计模式-单例模式
    http中关于缓存的那些header信息
  • 原文地址:https://www.cnblogs.com/dskin/p/15273064.html
Copyright © 2020-2023  润新知