用VC写Assembly代码(5) --函数调用(二)
生活随笔
收集整理的這篇文章主要介紹了
用VC写Assembly代码(5) --函数调用(二)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
終于知道如何用LoadLibrary,但不知為什么!
我自己寫的例子是:
#include?<windows.h>
int?main(int?argc,?char*?argv[])
{
??char?*msvcrt?=?"msvcrt.dll";
??__asm
??{
????mov?eax,?msvcrt
????push?eax
????call?dword?ptr[LoadLibrary]
??}
??return?0;
}
哎,笨蛋試的例子.
為什么
printf
和
LoadLibrary
的調用方法不一樣呢?
call?dword?ptr[printf]
會出錯,而
call?print
則正確.
原來是這樣:
LoadLibrary是動態鏈接
printf是靜態鏈接
靜態鏈接只須call?xxxxxxxx即可
動態鏈接必須call?DWORD?ptr?[xxxxxxxx]
謝謝蝦爺!
總結
以上是生活随笔為你收集整理的用VC写Assembly代码(5) --函数调用(二)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python变量类型声明_python中
- 下一篇: python编程标准_Python常见编