网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > DELPHI > 正文
用Delphi产生一个最小的可执行程序
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
下载{$ArticleTitle}原创论文样式
w(HMainWnd);



  while GetMessage(AMsg, 0, 0, 0) do begin

    TranslateMessage(AMsg);

    DispatchMessage(AMsg);

  end;

end.



其实这些代码根本就是Win32 SDK中C语言例子程序的翻版,我想没有必要再对它们作什么解释了。需要提醒你注意的是:

1.Delphi程序没有像C程序那样的WinMain入口,程序的运行就从.DPR文件的begin开始,到与之匹配的end结束。而C程序中传递给WinMain的四个参数,在Delphi中则以全局变量的形式定义在System以及SysInit单元中,它们分别是HInstance、HPrevInst、CmdLine和CmdShow(HPrevInst已经没有意义)。

2.注意我把常量szAppName定义为PChar,而不是常用的String,因为在这么一个简单的程序中没有必要使用String的高级功能,这样可以节省不少空间(大约3-4k)。

3.我把{$R *.res}一句也注释起来了,这样可以从文件中剔除冗余的资源,从而节省大约1k左右的空间。

4.程序完成后,打开Project Options对话框,翻到Compiler页,将Runtime Errors和Debugging分类中的选项全部清除,这样也可以稍微减小最终文件的大小。



尽管还不能说8.5k一定就是最小的尺寸,不过我猜想这已经非常接近Delphi的极限了。在Visual C++中,很有意思的一点是所有可执行文件的大小都会对齐到4k的边界,所以在Visual C++中最小的.EXE和最小的.DLL大小都只能达到28k,除非使用一些非常特殊的隐藏编译开关。尽管Win32中的分页默认是4k,不过我实在想不通Visual C++把可执行文件的大小也对齐到4k究竟有什么意义?

另外,我手头还有一套非常非常古老的Turbo Pascal for Windows 1.5,它所编译出的最小的Windows可执行文件的大小——你肯定无法相信——只有1.75k!当然了,它毕竟只是个Win16程序而已。

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
湘ICP备09003080号