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

有人用过 nirsoft 开发的软件的吗?这类软件是怎么开发的?

  •  
  •   pinews · 2019-09-29 09:10:18 +08:00 · 3130 次点击
    这是一个创建于 1642 天前的主题,其中的信息可能已经有所发展或是发生改变。
    https://www.nirsoft.net/utils/hash_my_files.html
    好像是个人开发者,都是小工具,数量很多,质量也很好,感觉有点不可思议。
    支持从 win98 到 x64,这样的小工具也经常更新,虽然已经很好用了,而且支持多语言,
    界面简单,体积还特别小,当然还是图形界面,像我说的才 128K,压缩一下五六十 K,hash 软件网上搜的都是七八百 K,甚至几 M,有的还要装.net
    这样的作者简直是我等的模范啊,不过只开发过网页,对软件一窍不通,不知道作者用的什么开发软件。
    16 条回复    2019-09-29 15:25:53 +08:00
    pinews
        1
    pinews  
    OP
       2019-09-29 09:23:20 +08:00
    分享到其他地方竟然是 qzone 微博微信 qq 空间,而不是非此不可 推特 ins 挺奇怪的
    greed1is9good
        2
    greed1is9good  
       2019-09-29 09:43:10 +08:00
    @pinews 挺奇怪的,我怎么没看到有分享链接。。。
    aqtata
        3
    aqtata  
       2019-09-29 09:52:04 +08:00
    VC2005 + MFC 开发的,再加上动态链接 msvcrt.dll ,文件体积自然很小,启动很快。
    murmur
        4
    murmur  
       2019-09-29 09:56:04 +08:00
    最原始的 mfc 不就这么大,如果你尽可能多的只用 windows 原始 dll,放弃美观,放弃各种新特性的兼容,那就是这么大
    u823tg
        5
    u823tg  
       2019-09-29 09:57:58 +08:00
    体积小肯定用了动态链接库, 静态连接的话一个 hello world 都得 1m。
    ipwx
        6
    ipwx  
       2019-09-29 10:02:47 +08:00 via Android
    我十年前也追求小体积无依赖软件。但我后来觉得,运行库就该系统内置,就不该考虑老系统,也就不关心这个了。所以就该上.net ,Windows 10 自带了。
    ipwx
        7
    ipwx  
       2019-09-29 10:03:22 +08:00 via Android
    @u823tg 那不一定,十年前 borland delphi 可以只有一百 k
    u823tg
        8
    u823tg  
       2019-09-29 10:09:13 +08:00
    @ipwx #7 现在也能实现 100 多 k,但是得自己精简。 我期待下.net core 或者.net 5 运行库加入到 windows。
    vmebeh
        9
    vmebeh  
       2019-09-29 10:15:06 +08:00 via iPhone
    用的基本都是封装好的标准控件
    hkitdog
        10
    hkitdog  
       2019-09-29 10:20:20 +08:00 via iPhone
    都是用 VC 寫的,不可能是 electron 和 C#
    ipwx
        11
    ipwx  
       2019-09-29 11:04:52 +08:00 via Android
    @u823tg 但是自己精简浪费精力啊,任何一个工业界走歪了才会干这种事情
    FrankHB
        12
    FrankHB  
       2019-09-29 11:55:52 +08:00
    二进制分发体积小到一定程度以下就没多大差别了,至少 PC 软件是这样。都 9102 了,又不缺几 K 的带宽。至于少依赖,这算是 Windows 下缺乏依赖管理给逼的,本来就是妥协而不是优势——而且再容易也还得一个个下载,哪有一行命令解决省事。
    NoAnyLove
        13
    NoAnyLove  
       2019-09-29 12:20:12 +08:00   ❤️ 1
    回答这个问题我压力山大,感觉一不小心就暴露了年龄(手动捂脸)。

    首先,程序使用了 UPX 进行压缩,会在原基础上更小一些。解压之后可以看大是用的 VC 7.0 编译。用资源工具打开可以看到对话框资源,那么基本上可以认为,程序使用 RC 定义界面,然后直接调用 Win32 API 实现功能。(对 MFC 不了解,不知道 MFC 编译出来是不是这个样子)
    pinews
        14
    pinews  
    OP
       2019-09-29 15:12:00 +08:00
    有所了解了,感谢大家
    liuhuansir
        15
    liuhuansir  
       2019-09-29 15:17:18 +08:00
    居然有 bluescreenview,前段时间家里电脑隔三差五蓝屏下载了这个工具,一直以为是微软自己出的
    augustheart
        16
    augustheart  
       2019-09-29 15:25:53 +08:00
    纯 api 写界面很小的……
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3209 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 14:24 · PVG 22:24 · LAX 07:24 · JFK 10:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.