开发自用桌面小工具,想要内存占用低编译结果小除了 Delphi 还有什么推荐?
Delphi CE 下载怎么选实际下载到的都是 RAD Studio ,然后换了好几个邮箱都不到授权邮件,放弃了。
其他的 Electron ,JavaFx 、Compose Multiplatform 、WPF 这些看下来编译结果个启动后空载内存都不低,个人不喜欢。
前阵子用 WinForm 做了个小工具,启动后 17M ,勉强能接受,但是今天找了个类似的,人家启动才 2M 功能还比我多,就想试试别的期望能内存占用更低。
不如说说你常用的语言是什么?
不同语言能做到的大小确实不一样
服务端开发的,Java 、Go 、NodeJS 这些,写 WinForm 学了点 C#,磕磕绊绊的,也不是很介意学点新东西
搞个古时候的 mfc ?
或者远古时代的 win32 api ?
如果找不到其他的选项会试试这些。
直接用 go 起一个 server 然后用浏览器充当 GUI 呢?
delphi 盗版随便装啊,wxwidgets 写程序也小,4M 左右,delphi 程序也三四 M 吧
易语言开发小工具资源占用也很低哦!
都自用了,何必呢?
Delphi CE 去官网下。 国内下载源基本上都是盗版的 rad studio
比你占用低的,我估计用的这个
HANDLE hProcess = GetCurrentProcess();
SetProcessWorkingSetSize(hProcess, -1, -1);
www.lazarus-ide.org/
用这个 免费
有些场景不太适合,比如 托盘小工具提示啥的
就是自用,能控制,才想努努力
盗版也是可以的,之前想着 CE 免费就没动这个心思
要不先命令行?我现在就在用 python 的命令行来给自己同步文件.
具体我就不懂了,当我打开他设置里的释放未使用的内存回收,每次关闭窗口到托盘就剩 600k 内存占用了。
官方下载了不给发送授权邮件。。。我安装好了进不去。
比起易语言,感觉 aardio 这种我可能更愿意尝试,而且我也写过,感受也还行
场景不同,比如我做个常驻托盘的 App 启动器,或者啥需要托盘、快捷键快速唤起窗口的
autoit3/ahk ,pecmd 脚本,易语言,c ,rust,zig ,vb6
用 delphi7 精简版,自身很小,写的软件也小
还有 1 个古董级的开发软件能实现 OP 的需求,Visual Basic 6 。
我找到以前用 visual basic 6 写的一个 windows service ,曾经稳定运行了 10 多年,整个软件只有 60KB ,运行只占 2MB 内存。
刚才试了一下,exe 直接复制到 win11 ,无需安装支持库能直接运行,绝对是绿色软件标准。
visual basic 是比尔盖茨的最爱,居然 vb6 支持库内置 windows 从 win2000 、xp 、vista 、7 、8 、10 保留到了 win11 ,用 vb6 写的程序能以绿色软件形式直接运行。
感谢,我都试试看
visual basic 6 是 1998 年发布的,当时最先进的 pc 是奔腾 II 300MHz ,64MB 内存,4GB 硬盘跑 win98 或 win NT 4.0 (所以程序占用资源极少)
金蝶 erp 软件 kis 、k3 ,用友 erp 软件 u8 都是用 vb6 开发的,至今仍有企业在使用这些 vb6 开发的软件(目前仍有工程师做 vb6 的二次开发)
微软在 2021 年还为 vb6 支持库发布了最新补丁以支持 win11 。
说句不人道的:用 C ,因为我听说 Rufus 就是用 C 写的,我感觉那个挺轻量的。
试试 winform 的 AOT 啊
要不要试试易语言或者 aardio 呢?
有个现在有点冷门的选择,就是如果应用本身足够简单的话,可以考虑 autohotkey 。
如果界面比较复杂,windows 原生系统接口也不一定底,可能是直接调用系统功能导致的统计数据不匹配
试试最底层的 win32 gdi
折腾了一下装上了,跑了个空 form ,编译启动后 1058kb 内存,感觉还行,等我深入试试。
Flutter 呢
我是做 C++的,据我所知,越高级的编程语言资源占用越高,汇编 < C < C++ < JAVA ,涉及到 web 更大,Go 好像常用于集群、高并发场景,资源占用应该也不高。不过涉及到 GUI 的话好像就没几个可选的了。据我所知 Windows 可以使用 Win32 的 API 编程,之上封装的有 MFC 、QT ,或者使用 OpenGL 编程。QT 、OpenGL 、java 、脚本语言都是跨平台的但脚本语言实际上也是调用的编译语言的实现。我用的是 Win11 ,QT 写的 snipaste 占用 24M ,scintilla 写的 Notepad2 占用 49M ,rust 写的 rustdesk 占用 42M ,可以在 github 上按流行的编程语言筛选出最有名的 GUI 程序体验一下,大概就知道什么适合自己了。
www.aardio.com/
go+win32api+自绘,14M 内存,我觉得很满足了,毕竟俺配的 128G 内存
用 Lazarus ,Delphi 的开源社区版本,跨平台,还是挺好用的
github.com/getlantern/systray
托盘这种,然后用浏览器吧。
aardio 值得拥有。
lazarus ,跨平台,挺好用的
想要极致的低内存占用, Windows 图形应用, 常见的应该是用 C/C++使用 win32 或者 MFC 开发吧, 手搓汇编这种事不是一般人能干的,很赞同 #34 楼老哥的说法
aardio
Windows 可以用 win32 跟 mfc 啊,Linux 可以用 xwindow 啊,而 c++的 qt 框架介入两者之间,方便开发跟阅读,资源占用也比较 electorn 这些前端框架,要小一些。
同意,rufus 就是 win32 api 写的,可以试试
aardio 易语言 Lazarus VisualFreeBasic
下面这个网站是关于伦敦地铁实时的运行图:http://traintimes.org.uk:81/map/tube/ 这是个很有意思的网站,其数据是通过伦敦政府发布的TfL AP…
本人以写代码为职业。 会一点点 Debian 和一点点 FreeBSD ,若干年前在 Ubuntu 轻度体验桌面。 现在主力运行 Win10 的机器是 Ryzen 7 3700…
背景:一个代码仓库存在两个版本同时开发的场景,比如当前基于 develop 分支,拉了两个分支 dev_1.0 和 dev_1.1 。现在 dev_1.0 的功能开发完成了,测…