當(dāng)前位置:
首頁(yè) >
用VC写Assembly代码(5) --函数调用(二)
發(fā)布時(shí)間:2025/3/15
27
豆豆
生活随笔
收集整理的這篇文章主要介紹了
用VC写Assembly代码(5) --函数调用(二)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
終于知道如何用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
的調(diào)用方法不一樣呢?
call?dword?ptr[printf]
會(huì)出錯(cuò),而
call?print
則正確.
原來(lái)是這樣:
LoadLibrary是動(dòng)態(tài)鏈接
printf是靜態(tài)鏈接
靜態(tài)鏈接只須call?xxxxxxxx即可
動(dòng)態(tài)鏈接必須call?DWORD?ptr?[xxxxxxxx]
謝謝蝦爺!
總結(jié)
以上是生活随笔為你收集整理的用VC写Assembly代码(5) --函数调用(二)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python变量类型声明_python中
- 下一篇: C++编程中的四个调试小技巧