V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
feirisu
V2EX  ›  程序员

Windows 下开发小应用 GUI,真的很难选方案

  •  3
     
  •   feirisu · 331 天前 · 18839 次点击
    这是一个创建于 331 天前的主题,其中的信息可能已经有所发展或是发生改变。
    今天想做一个简单的小 exe ,需要调用不少原生 Windows API ,想要尺寸小一些,不要有依赖,最好单文件。
    其次,UI 不想要 Win32 原生控件。

    没想到在 2024 年的今天,这个看似简单的问题是如此难找到一个完美符合要求的。

    1.c++ win32 原生,CreateWindow 后面要设 Font 、所有事件自己从处理循环里接。
    2.c++ MFC ,想要 UI 好看,Pass 。
    3.c#的 WPF ,是很方便,也有很多 UI 库,但是目前不能 AOT (正式版本),独立打包直接去到 100+M ,Pass 。
    4.c#的 Form ,UI 不好看,打包也很大,可以 AOT 但是基本是空程序才行,稍微复杂点因为 AOT 隐式启用裁剪,复杂点的代码就会启动不了。
    5.c#的 Avalonia ,UI 还行,和 Form 一样 AOT 后有可能启动不了,独立打包 60-80M 也有点大,独立的也还另外带 3 个 DLL ,最难受的是启动很慢,需要 2-3 秒左右的时间才出窗口。
    6.QT ,不熟 Pass 。
    7.MAUI(WINUI),都不想提。
    8.electron ,一堆文件,太重了。
    9.flutter ,需要很多原生代码,还是得自己写 c++,两头折腾,尺寸倒是比 c#的那几个小不少。
    10.易语言,会,但真的不想用。

    微软真的是不干人事,老老实实把 WPF 的 AOT 做好,不知道能造福多少客户端开发。

    想来想去,不如控制台得了,除了没 GUI ,尺寸小、单文件、无依赖都可以做到。
    第 1 条附言  ·  331 天前
    感谢大家的回复,思维开阔了很多,我确实有一点喜欢追求完美,但我相信很多喜欢编码的人都是这样。在写代码时,总会想到这代码能不能更简洁直观,编译出去的东西能否运行更快、体积更小、更漂亮。

    我是一个老 windows 开发了,写过的东西估计你们可能都用过,比如 10 年前最火的游戏都在用的某个 box ,我觉得我是喜欢写代码的。

    看到收藏数我就放心了,看来很多人可能有同样的疑惑。

    我为客户端开发感到遗憾,在 windows 的 GUI 开发上,这么多年微软的似乎都是停滞的,我们追求的体积小而美、快速、兼容性、加壳反破解等等,在微软看来似乎都是不值一提的,WPF 的 AOT 相关的提交,在几年前就有人提交代码上去了,直到上个月才被合进 main 分支,在微软看来,我们就是一群不肯进微软 Store 的小丑吧。

    可能终究还是要走向跨平台的目标,但是这个目标微软实现不了。

    最后,我觉得还是业务为先吧,适当放弃一些东西也不失为一种选择,还是先 Avalonia 了,再次感谢各位的建议!
    第 2 条附言  ·  330 天前
    使用了 avalonia 的 AOT ,将裁剪修改为如下,可以 AOT 后正常运行了

    <TrimMode>partial</TrimMode>
    <TrimmerSingleWarn>false</TrimmerSingleWarn>

    然后根据 https://github.com/AvaloniaUI/Avalonia/issues/9503 的方法,将附带的三个 dll 用 lib 静态链接的方式引入

    <ItemGroup>
    <DirectPInvoke Include="libHarfBuzzSharp" />
    <NativeLibrary Include="native\libHarfBuzzSharp.lib" Condition="$(RuntimeIdentifier.StartsWith('win'))" />
    <DirectPInvoke Include="libSkiaSharp" />
    <NativeLibrary Include="native\libSkiaSharp.lib" Condition="$(RuntimeIdentifier.StartsWith('win'))" />
    <DirectPInvoke Include="av_libglesv2" />
    <NativeLibrary Include="native\av_libglesv2.lib" Condition="$(RuntimeIdentifier.StartsWith('win'))" />
    </ItemGroup>

    实现了完美的单文件 AOT ,文件编译后尺寸为 68M ,加 UPX 壳以后为 23M ,已基本符合了我的预期,启动速度也有了大幅的提升。
    第 3 条附言  ·  221 天前
    哈哈!干!最后用基于.Net Framework 4.6.2 的 WPF 重写了,反正用户不多,基本也都是新版 win10 ,默认都是自带了这个版本的.Net Framework 的。

    说起来也挺搞笑的,为了 AOT ,最后不要 AOT 。
    123 条回复    2024-07-21 14:54:56 +08:00
    1  2  
    tave
        1
    tave  
       331 天前
    winform+webview2 挺符合你的需求吧,只需要一个 webview2 控件,ui 前端轮子足够用成本也低,逻辑全靠 C#,打包还不会像 cef 多一个浏览器内核,体积有保证
    explon
        3
    explon  
       331 天前
    试试 abp.io
    feirisu
        4
    feirisu  
    OP
       331 天前
    @tave 前端不熟,另外 webview2 必须装 edge ,如果自用还行,发出去给人用不一定有 edge ( win7 )。
    Binwalker
        5
    Binwalker  
       331 天前   ❤️ 1
    tauri 吧,体积小
    StubbornHuang
        6
    StubbornHuang  
       331 天前
    duilib+cef
    xmoer
        7
    xmoer  
       331 天前   ❤️ 5
    哈哈哈,楼主总结的很到位,微软真的是不干人事 😂
    Mithril
        8
    Mithril  
       331 天前
    MFC 创建的时候就可以选新的 office 风格了吧?

    实在不行你可以 webview2 ,相比 Electron 能省点地方。
    shuax
        9
    shuax  
       331 天前   ❤️ 2
    duilib
    cocang
        10
    cocang  
       331 天前
    楼上说的 webview2 就挺好,覆盖率已经很可观了,也符合你“尺寸小一些,不要有依赖,最好单文件”的要求
    fields
        11
    fields  
       331 天前
    electron 吧 文件多久多呗 好在快速开发、没啥学习成本都
    0o0O0o0O0o
        12
    0o0O0o0O0o  
       331 天前   ❤️ 2
    > 微软真的是不干人事,...,不知道能造福多少客户端开发

    我觉得微软就算愿意造福客户端开发也不会造福 2024 年想支持 Win7 的客户端开发吧
    feirisu
        13
    feirisu  
    OP
       331 天前
    @shuax duilib 确实有可行性,除了没 c#的开发效率以外。
    feirisu
        14
    feirisu  
    OP
       331 天前
    @0o0O0o0O0o 是的啊,新的 MAUI 就不支持 Win7 ,github 上也有人在喷,另外这玩意 AOT 也不怎么好用。
    morgan1freeman
        15
    morgan1freeman  
       331 天前
    不跨平台 纠结这么多干嘛 直接.net wpf 一把梭,
    feirisu
        16
    feirisu  
    OP
       331 天前
    @fields 太重了太重了,你想想写个启动器,加个远线程注入带点 http 请求,UI 就俩 TextBox 几个 Label 和按钮,这太重了。
    feirisu
        17
    feirisu  
    OP
       331 天前
    @morgan1freeman 编出去太大啊,太大了啊,独立包 100M 了
    Hellert
        18
    Hellert  
       331 天前   ❤️ 3
    Windows GUI 最强的还是 Delphi ,可惜不是免费的。
    可以看一下 Lazarus 。
    churchill
        19
    churchill  
       331 天前
    "小应用 GUI 想要尺寸小一些,不要有依赖,最好单文件"
    难道说的不是 ImGui ?
    morgan1freeman
        20
    morgan1freeman  
       331 天前
    另外微软家的东西 ,业内都是嗤之以鼻的,基本上没几个能善终,好多都烂尾了

    一般技术选型,狗都不用微软家的技术

    silverlight RIP
    KgM4gLtF0shViDH3
        21
    KgM4gLtF0shViDH3  
       331 天前
    aardio ?
    Foxkeh
        22
    Foxkeh  
       331 天前
    aardio
    ShadowPower
        23
    ShadowPower  
       331 天前
    如果会 Pascal 语言,也许可以试试 lazarus
    对于小工具够用了
    morgan1freeman
        24
    morgan1freeman  
       331 天前
    @Hellert delphi 还没死么,我 07 年上初中的时候,还用 delphi 写过 u 盘,inf 病毒的 查杀工具,当时很多老师的 u 盘插到教室的电脑 然后被病毒 g 了,我就弄了个 upan 查杀工具,当时还有 exe 伪装成 excel 图片,让人误点的,我帮教室里面的电脑 安装好几次的系统
    limiter
        25
    limiter  
       331 天前
    怎么没看到 javafx
    morgan1freeman
        26
    morgan1freeman  
       331 天前
    https://www.2ccc.com/ 这个网站 居然还没倒闭,牛逼
    IsaacYoung
        27
    IsaacYoung  
       331 天前 via iPhone
    react-windows
    Rorysky
        28
    Rorysky  
       331 天前
    选人多的

    qt
    electron
    flutter
    feirisu
        29
    feirisu  
    OP
       331 天前
    @churchill ImGui 看起来不错,有待研究一下!
    xiwh
        30
    xiwh  
       331 天前
    golang + govcl ,轻量无依赖,打包完压缩后就几 M ,不依赖 Runtime, 开发简单的页面完全够了
    yolee599
        31
    yolee599  
       331 天前
    我提一个:
    lvgl
    ysc3839
        32
    ysc3839  
       331 天前 via Android
    C++ + Xaml Island ,相关依赖库都在系统中,可以做到小体积,不过至少需要 Win10 1809 才能用。
    ysc3839
        33
    ysc3839  
       331 天前 via Android
    @ysc3839 不过要弄成单文件的话得进行一些 hack ,可以参考 https://github.com/ysc3839/SingleExeXamlIsland
    ShadowPower
        34
    ShadowPower  
       331 天前
    我刚想到一个另类一些的:
    Godot

    这玩意真的可以用来写软件,有一些例子:
    https://github.com/Orama-Interactive/Pixelorama
    https://github.com/RodZill4/material-maker
    https://github.com/MewPurPur/GodSVG
    https://github.com/mbrlabs/Lorien

    用 GDScript 写逻辑,开发效率也相当高。

    另外看了帖子回复,我觉得有个需要注意的坑:
    大多数用 GPU 绘图的 GUI 库,往往字体渲染都有很多坑。

    ImGUI 就有坑,比如不能渲染阿拉伯语……
    shijingshijing
        35
    shijingshijing  
       331 天前
    既要又要还要更要,本来最符合的 Qt 被你直接 Pass 了
    Chad0000
        36
    Chad0000  
       331 天前 via iPhone   ❤️ 1
    你不跨平台追求独立打包有什么意义吗。
    calvinHxx
        37
    calvinHxx  
       331 天前
    qt 可以解决你所有的问题 可惜你不熟
    ysc3839
        38
    ysc3839  
       331 天前 via Android
    @shijingshijing Qt 的体积也比较大。

    其实要体积小的话,要不然就只能界面难看,要不然操作系统有自带依赖。那可选项就只有传统 Win32 控件、Xaml Island 、Edge WebView2 、.NET Framework 。传统 Win32 控件太难看。.NET WPF 自带的主题也不太好看,用第三方主题又会增加体积,不过看增加的大小,也许可以接受。WebView2 要好看也得用第三方 css 库,不过一般都能做得很小。所以最符合的基本就只有 Xaml Island 了。
    XiLingHost
        39
    XiLingHost  
       331 天前
    试试 egui 或者 slint
    GeekGao
        40
    GeekGao  
       331 天前
    界面如果不是很复杂,QT 学习起来该是比较舒适的
    maybedk
        41
    maybedk  
       331 天前
    qt 不方便的话可以试试 pyqt,用 pyinstaller 打包完可以不超过 50M,或者用 python 内置的 tkinter 会更小
    adoal
        42
    adoal  
       331 天前
    因为早在很多年前厂家们就没动力卷桌面 GUI 赛道了,更不要说 native GUI
    pengtdyd
        43
    pengtdyd  
       331 天前   ❤️ 5
    何为重?何为轻?不要陷入到技术选型的漩涡当中,把业务做好才是正途。
    W3Cbox
        44
    W3Cbox  
       331 天前
    AARDIO
    W3Cbox
        45
    W3Cbox  
       331 天前
    @feirisu 唯一能满足你的只有 aardio ,
    优点如下:
    1.简单易学,有 Python 、php 、或者 JavaScript 之类的脚本语言经验的人,稍微看一下文档。初学者很容易就能学会
    2.支持 ui 自绘,可使用 html+css 定制非常美观的界面
    3.打包极小,一般的桌面小软件 3-5m 。且启动快
    4.示例代码丰富,文档完善,大部分模块代码已经封装好了,直接复制就能用,几行代码随随便便就能拼装出功能强大的软件
    Gosolin
        46
    Gosolin  
       331 天前
    不追求新特性可以把 WPF/WinForm 的 TargetFramework 改成 .NET Framework 比如 net461 ,用系统自带的运行时也约等于无依赖了
    henix
        47
    henix  
       331 天前
    传统 GUI 库除了 QT 还有很多啊,GTK+、wxWidgets 之类的,还有 https://www.fltk.org/
    如果不限语言的话,还有 https://www.tecgraf.puc-rio.br/iup/ 和 Tcl/Tk
    yulon
        48
    yulon  
       331 天前
    需要纠结这种问题就无脑选 Electron ,因为你不可能比 Electron 做得好,如果你能比 Electron 做得好,那也就不会问这个问题了。
    janus77
        49
    janus77  
       331 天前   ❤️ 4
    你这个要求也挺多了吧。。。要美观,要大小,要便携性,要性能,要开发速度,说说吧是什么你可以放弃的?
    什么?你都不想放弃?那还说你要求不高?
    ibinary
        50
    ibinary  
       331 天前
    duilib 或者 cefview.
    cookgo
        51
    cookgo  
       331 天前
    wails
    keepwalk2020
        52
    keepwalk2020  
       331 天前
    python + tkinter + win32API 然后用 pyinstaller 打包, 需要加密的话用+ cython
    python + tkinter 写的应用优化打包后可以小于 10Mb
    python + ctypes 调用 win32 DLL ,打包后小于 3Mb
    不要用用 python + qt
    这有一个用 python + ctypes 写的多窗口文件管理器,仅供参考:
    https://www.v2ex.com/t/911130#reply9
    huyangq
        53
    huyangq  
       331 天前
    javafx 嘻嘻
    Peek
        54
    Peek  
       331 天前
    webview2 吧,好像只要运行时就行了,不一定非要 edge 吧?我业余写着玩感觉这个是目前最好的选择了,会易的话,火山 pc 就有这个库
    keepwalk2020
        55
    keepwalk2020  
       331 天前   ❤️ 1
    如果选 python + tkinter 的话,有图形化 UI 生成工具,
    https://visualtk.com/
    https://github.com/alejandroautalan/pygubu-designer
    设计好 UI ,直接生成相关代码

    如果只在 win 平台用,打包时候+upx 压缩,体积更小 : https://github.com/upx/upx/releases/tag/v4.2.2
    如果没有调用很大很复杂的库,python + tkinter + win32 API + pyinstaller + upx 写的 GUI 应用可以 < 10Mb, 手动优化( trim 库)可以 < 5Mb

    同样的代码,所使用的 python 版本不同会导致不同的打包大小
    py2.7 < py3.5 < py3.12
    minami
        56
    minami  
       331 天前
    你这个要求有点过多了,但确实有一个满足你所有要求的,就是 https://github.com/yue/yue/blob/master/docs/guides/faq.md 可以静态链接,可以调用原生 Windows API ,完全自绘。如果你能接受原生控件的话,IUP 也是个好选择
    0o0O0o0O0o
        57
    0o0O0o0O0o  
       331 天前 via iPhone   ❤️ 1
    @minami #56

    > It means moon in Chinese

    该死的网络文化,我第一眼想到这项目名字有点像吐了
    huiyadanli
        58
    huiyadanli  
       331 天前
    .net framework 为什么要独立打包,系统不都自带吗
    tool2d
        59
    tool2d  
       331 天前
    @janus77 github 上 windows GUI 轮子巨多,随便找一些来用用,效果都还行。

    不过好界面,最后还是要靠美术。
    jiangzm
        60
    jiangzm  
       331 天前
    前端不熟还挑啥这个 UI 不好那个 UI 不好看,不管是 Web 前端还是桌面前端都是要开发自己有排版设计能力。

    懒鬼就直接找人家现成有 UI 的项目改改好了。
    James369
        61
    James369  
       331 天前
    这么纠结,不如雇佣一个人来做,你不做有的是人做。不过看你应该是有洁癖
    blinue
        62
    blinue  
       331 天前   ❤️ 1
    你的需求基本只能 C++ 实现。我在自己的开源项目里用的 C++/WinRT+XAML Islands+WinUI 2 ,效果挺好。优点是界面美观,没有外部依赖( HybridCRT 技术),纯框架体积不到 10M 。但单文件是做不到的,最少 4 个文件。
    qazwsxkevin
        63
    qazwsxkevin  
       331 天前
    记得 MFC 在做窗体布局的时候,可以自己做(画?)控件的,(控件类的逻辑,继承后完全重写都能做到?? 好像自由度还是很大的,不记得太清晰了),
    记得当时自画 mfc 控件的图和色,只能用 16 位的图(当时是 XP+VC2005),我自己在 XP +VC2003 上用 MFC 写的背单词软件,后来用在 vista 上,那窗体和按钮,非常素。。。。
    MFC 编译后的 release 版,就算很几万行很复杂的逻辑,单文件内嵌静态编译,文件最多 3,4,5M 体积,甚是怀念。
    可我毕业后就没干专职开发了,呵呵呵
    MFC 是好东西。
    微软就是狗。
    felixlong
        64
    felixlong  
       331 天前
    WinUI3 不是最好的选择嘛?要 size 最小直接选 C++/WinRT. 印象里不会超过 1M 。
    acctv2
        65
    acctv2  
       331 天前
    WPF 就算最终实现了 AOT ,体积仍然会很大,这跟 AOT 本身没关系。

    你又要 GUI 好看,又要占用小,那只能从底层控件开始自己手撸,结果你又不愿意撸,又想简便。你这个需求在哪个平台能完美实现?
    aiqinxuancai
        66
    aiqinxuancai  
       331 天前
    @acctv2 如果 WPF 能 AOT 的话,参考 Form 目前已知的 AOT ,估计应该能在 20-30M ,然后上 UPX 壳,应该能在 10M 左右,还是很可观的。
    zggsong
        67
    zggsong  
       331 天前
    我也是想骂,wpf 搞 aot 多好,最近开始研究 avalonia 了
    ysc3839
        68
    ysc3839  
       331 天前 via Android   ❤️ 1
    @blinue 可以实现单文件。
    不使用 WinUI 的情况下,用代码创建界面元素,就不需要 resources.pri 。
    要 resources.pri 的情况下,可以 hook 加载 resources.pri 的 DLL(印象中是 twinui.appcore.dll),让其加载内存中的数据。不过 hook 属于非正常手段,升级系统后可能出现问题,风险自担。方法参见 https://github.com/ysc3839/SingleExeXamlIsland
    要 WinUI 2 的情况下,如果是 Win11 ,可以用 AddPackageDependency 引入系统中已安装的 WinUI 2 AppX 包,甚至可以引入系统内置的 WinUI 2 包 ("Microsoft.UI.Xaml.CBS_8wekyb3d8bbwe"),不过当然也是风险自担。
    要 WinUI 2 的情况下,如果是 Win10 ,我之前调查过,似乎是只能把 WinUI 2 的 DLL 和 resources.pri 放到 exe 目录下,除非是打包成 AppX 并添加 WinUI 2 AppX 包的依赖,否则只能自己附带 WinUI 2 。不过可以考虑 Win10 下不用 WinUI 2 ,Win11 下才用。
    上述“用代码创建界面元素”有个衍生方案,那就是用 React Native for Windows ,因为 React Native 就是纯代码创建元素的。之前测试没记错的话 React Native for Windows 的 DLL 只有 2MB 。原版 React Native for Windows 是独立的 DLL ,同时需要从文件加载数据,不过因为是开源的,可以改成静态链接以及从内存加载数据,就可以单文件了。
    ysc3839
        69
    ysc3839  
       331 天前 via Android
    @felixlong WinUI 3 不一定是最好的,目前最新的 Win11 似乎都没有内置 WinUI 3 ,就算通过 AppX 安装 WinUI 3 ,也少不了安装那一步。
    MrLia0
        70
    MrLia0  
       331 天前
    pyqt pyside 应该满足你的条件,有个 fluentui 还不错
    linuxgo
        71
    linuxgo  
       331 天前
    @Hellert #18 我以前也用过 delphi 写过小工具,做 gui 超级简单,编译飞快,编译出来的程序也很小,主要问题就是不同版本的库不兼容。现在好像都没什么人用了。

    kenvix
        72
    kenvix  
       331 天前
    不追求 AOT 的话你的选项会多很多
    minami
        73
    minami  
       331 天前
    @0o0O0o0O0o #56 考虑到作者是国人,很难说有没有故意的成分,哈哈
    mumbler
        74
    mumbler  
       331 天前
    需要调用不少原生 Windows API ,想要尺寸小一些,不要有依赖,最好单文件

    同时满足这个需求,除了 delphi 没有第二家,只要你不申请软著,不会被国内代理盯上
    asm
        75
    asm  
       331 天前
    linux 没这个需求,因为大部分程序不需要 GUI[手动狗头].

    想好看还想文件小,这个貌似只有 mfc 、wtl 。哦对,忘了 delphi 了,微信和 foxmail 的巅峰之作。
    Ritr
        76
    Ritr  
       331 天前
    winform 还好吧,简单粗暴体积小
    yixiang
        77
    yixiang  
       331 天前
    没人提 sciter ? 6M 大小,html + js + css 开发 ui ,有接口可以和原生语言交互,如 c ,rust 等。甚至支持 XP 。

    主要的坑在于 css 和 api 是自己的一套东西,和标准不一样。几年前 js 也是自己的,后来 quickjs 出来后换 quickjs 了,开发体验提升很多。

    拿来开发过几个小工具,开发体验比较差,但引擎本身挺强的。
    ggvoking
        78
    ggvoking  
       331 天前 via iPhone
    .net Aot 被裁剪运行不起来,配个 rd.xml 加上类型就行了,很简单。
    memorycancel
        79
    memorycancel  
       331 天前
    奔驰 特斯拉 等很多车机上的 ui 用的 qt
    rm0gang0rf
        80
    rm0gang0rf  
       331 天前
    go+web
    Promtheus
        81
    Promtheus  
       331 天前
    IMGUI
    gbw1992
        82
    gbw1992  
       331 天前   ❤️ 1
    关于 Avalonia 独立发布后有三个 dll 的问题,在解决方案加上这个就可以了


    ```
    <AvaloniaUseCompiledBindingsByDefault>true</AvaloniaUseCompiledBindingsByDefault>
    ```
    Avalonia 不依赖框架打包的得六七十兆,的确有点大
    我在树莓派 3b 上运行,启动得好几秒
    creanme
        83
    creanme  
       331 天前
    slint ?可以了解一下,可以使用 c++, js, rust 开发
    anytk
        84
    anytk  
       331 天前
    nuklear ,用 gdi 后端,无依赖,尺寸小,单文件

    https://github.com/Immediate-Mode-UI/Nuklear/
    opiviqo
        85
    opiviqo  
       331 天前
    pyside pyqt
    duke000
        86
    duke000  
       331 天前
    wxwidgets
    leyoumake1997
        87
    leyoumake1997  
       331 天前
    试试[wails]( https://github.com/wailsapp/wails),程序嵌套了个 webview ,ui 界面套一些开源组件库绝对杠杠的,在配合 go 写一些简单的后端业务逻辑,打包出去最小的可执行文件也只有 10MB 左右。
    xieren58
        88
    xieren58  
       331 天前
    Avalonia 挺好用... 我做了几个小项目了...
    nbboy
        89
    nbboy  
       331 天前   ❤️ 2
    你熟悉哪个就用哪个,不要纠结这种东西,有时间纠结还不如花点时间在业务上。
    june4
        90
    june4  
       331 天前
    我以前直接在本地起个端口做成 web 服务
    用默认浏览器,系统里浏览器总是有的
    wodeguaiguai
        91
    wodeguaiguai  
       331 天前
    miniblink
    hankli
        92
    hankli  
       331 天前
    易语言: 我真的很伤心
    FrankAdler
        93
    FrankAdler  
       331 天前 via Android
    前几天自学 winforms 做了个应用启动器,感觉简单好用,好不好看就无所谓了
    0TSH60F7J2rVkg8t
        94
    0TSH60F7J2rVkg8t  
       331 天前
    @Hellert 好像 Delphi 现在的公司 Embarcadero 推出了社区版,是可以免费使用的:
    https://www.embarcadero.com/products/delphi/starter/free-download
    frank1357
        95
    frank1357  
       331 天前
    wails + 1 主程序 golang , 界面支持各前端技术栈;
    golang 原生跨平台,前端技术界面便捷/丰富程度也非其他可比;
    tgcdz
        96
    tgcdz  
       331 天前
    如果喜欢用 H5 做界面,可以试试这个 https://webui.me/ 。用本地浏览器作为 UI 界面,业务逻辑可以用 C/C++/Go 等开发
    yqf0215
        97
    yqf0215  
       331 天前
    @Foxkeh
    纯微软平台的,似乎 aardio 真不错
    keymao
        98
    keymao  
       331 天前
    @ahhui 商业化每年收入超过 5000 刀就得付费了,还不如直接用 Lazarus
    PrinceofInj
        99
    PrinceofInj  
       331 天前
    @ysc3839 #69 不知道微软怎么想的。明明自己的系统组件都有用 winui3 写的了,然而我自己写一个小的程序,在系统上执行却需要额外再安装一下运行库,而不能用系统自带的。
    Henrylee8619
        100
    Henrylee8619  
       331 天前 via iPhone
    刚看到标题就想起易语言,没想到楼主真是考虑了哈哈
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2574 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 05:27 · PVG 13:27 · LAX 21:27 · JFK 00:27
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.