在masm下编译一个较小的PE文件
2016-07-18 16:14
323 查看
前言
写一段masm32汇编程序link要使用masm32自带的link(改名或指定全路径)
使用link编译选项 /MERGE, 合并的段名用Winhex或PE分析工具来看.
代码片段
echo off rem file buildcmd.bat rem brief build projet call clearcmd.bat Ml32.exe /c /coff hw.asm if errorlevel 1 goto TheEnd rem 用masm的link才会编译出2k以下的PE文件 Link32.exe /subsystem:windows /MERGE:.rdata=.text hw.obj if errorlevel 1 goto TheEnd echo project build success ! hw.exe goto TheEndAll :TheEnd pause :TheEndAll
; file hw.asm ; brief 测试程序 .386 .model flat, stdcall option casemap:none ; 系统头文件与库 include windows.inc include Kernel32.inc includelib Kernel32.lib include User32.inc includelib User32.lib ; 数据段 .const g_constSzTitle db "t", 0 g_constSz_Msg db "m", 0 ; 代码段 .code start: invoke MessageBoxA, NULL, offset g_constSz_Msg, offset g_constSzTitle, MB_OK invoke ExitProcess, 0 ret end start
相关文章推荐
- Web基础知识的复习
- Weblogic war包部署时获取Web根目录问题
- log4的配置和使用
- leetcode_c++:链表:Remove Linked List Elements(203)
- HDU 1564 考虑奇偶性的变化
- java数组遍历——iterator和for方法
- 分布式缓存技术redis学习(四)——redis高级应用(集群搭建、集群分区原理、集群操作)
- 第二周实习总结
- Hadoop 中文编码相关问题 -- mapreduce程序处理GBK编码数据并输出GBK编码数据(转)
- 【HDU 2717】Catch That Cow(BFS)
- 如何解决Win10 Win7 无法通过\\访问winxp文件
- JavaScript强化教程——JavaScript 运算符
- ubuntu16.04 SVN的安装与使用
- 关于TextView 中设置一行显示字数的两个属性: maxEms 与 maxLength
- Oracle意外删除数据文件恢复方法
- Comparator 与Comparable 异同
- HDOJ 1236 排名
- Ubuntu 开机自启动工具 update-rd.d 使用详解
- Mysql 安装-操作-备份
- android:windowSoftInputMode属性使用