在Visual Studio中开发汇编程序

创建一个控制台
在Visual Studio中开发汇编程序
清除默认文件
在Visual Studio中开发汇编程序
选择项目属性 设置入口函数
在Visual Studio中开发汇编程序
设置生成依赖项
在Visual Studio中开发汇编程序
选择
在Visual Studio中开发汇编程序
在添加源文件 .asm
在Visual Studio中开发汇编程序
 
.586
.MODEL flat, stdcall
includelib user32.lib
includelib kernel32.lib
ExitProcess PROTO, dwExitCode:DWORD
MessageBoxA PROTO hwnd : DWORD,lptxt: BYTE, lpCaption:BYTE,uType:DWORD
.data
Number DWORD 0
text db "shellcode",0
.code
main proc
        push 0
        push offset text
        push offset text
        push 0
        call MessageBoxA
        add esp,16
        call ExitProcess
main ENDP
END main
没有关键字变色 可以装一个扩展asmdude
在Visual Studio中开发汇编程序
在Visual Studio中开发汇编程序
在Visual Studio中开发汇编程序
解读一下上面代码的意思
 
.586
;指令集 .386-.686 都可以看你需要哪个指令集
.MODEL flat, stdcall
;模式选择 flat   代表win32程序 执行stdcall 调用约定
includelib user32.lib
includelib kernel32.lib
;导入程序包 用户程序 和系统核心 都是32位
ExitProcess PROTO, dwExitCode:DWORD
MessageBoxA PROTO hwnd : DWORD,lptxt: BYTE, lpCaption:BYTE,uType:DWORD
; 导出windows sdk 函数api   可以直接看 sdk 有那些函数 有几个参数 定义函数声明 后面调用
.data
Number DWORD 0
text db "shellcode",0
;数据段
.code
;代码段 入口  main 函数要在项目里面设置入口位置
main proc
        ;MessageBoxA 打印字符 A代表 ascii 输出   函数需要4个参数 push4个进去
        push 0
        push offset text
        push offset text
        push 0
        call MessageBoxA
        add esp,16;堆栈平衡
        ;结束进程
        call ExitProcess
main ENDP
END main

 

 

在Visual Studio中开发汇编程序

上一篇:QT 打包程序


下一篇:MEF框架在Silverlight中应用(15)