问题多多:如何减小可执行文件大小?

WoodJohn 2005-11-28 07:40:48
我用VC生成的SDK程序少说也有30多K,再优化也是那个样子,但是却经常看到一些破解补丁程序往往小于10K,甚至只有5K!这是怎样办到的?虽说30多K也多占不了多少空间,但我们当然喜欢小巧的程序啦,多酷啊,呵呵~~
...全文
153 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
sboom 2005-11-28
  • 打赏
  • 举报
回复
程序大的原因是段的对齐太大了,很大一部分空间被0填充,VC默认好像是1K一个段,即使你的代码只有几百字节,链接器应该可以设置段的对齐大小吧。
wshcdr 2005-11-28
  • 打赏
  • 举报
回复
用ASM来写
夸张
WoodJohn 2005-11-28
  • 打赏
  • 举报
回复
原来这样啊!
又看到Featured大哥了!每次总有收获.
Featured 2005-11-28
  • 打赏
  • 举报
回复
这是一个检测当前有无空记事本在允许的小程序,简单吧:
(.code前面的都是routine,不用理它!)
.386
.model flat, stdcall
option casemap :none ; case sensitive

; #########################################################################

include \masm32\include\windows.inc
include \masm32\include\user32.inc
include \masm32\include\kernel32.inc

includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib

; #########################################################################

.code

start:
jmp @F
szDlgTitle db "notepad",0
szMsg db "Notepad is not working.",0
szClsName db "notepad",0 ;class name spyed by SPY++
szCaption db "无标题-记事本",0 ;window Caption name

@@:
invoke FindWindow,ADDR szClsName,ADDR szCaption
cmp eax,0
je ErrTrap
invoke ShowWindow,eax,SW_SHOW
invoke ExitProcess,0
ErrTrap:
invoke MessageBox,0,ADDR szMsg,ADDR szDlgTitle,MB_OK
invoke ExitProcess,0

end start
Featured 2005-11-28
  • 打赏
  • 举报
回复
我说的是基于MASM32(微软的编译器MASM6.0+国外某大佬做的导入库),写起来非常顺手的。
Featured 2005-11-28
  • 打赏
  • 举报
回复
不要害怕,用Win32ASM来开发并不比SDK难。实际上,二者非常相象。
j805 2005-11-28
  • 打赏
  • 举报
回复
对,人家是用汇编写的,.
Featured 2005-11-28
  • 打赏
  • 举报
回复
用Win32ASM,二三十行的小程序一般都在1K之内
XiangDong 2005-11-28
  • 打赏
  • 举报
回复
don't use mfc, use win32 sdk only

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧