作者Lighdark (緋村毛)
站內Programming
標題[問題] VC使用Assembler
時間Mon Dec 8 15:33:19 2008
我寫了一個dll,其中有一段加入了組語,大概像下面這樣。
void ABC(int A, int B, int C)
{
__asm
{
我的組言內容
}
}
結果怎麼跑都不正常,反編看才發現。
push ebp
mov ebp, esp
sub esp, 0C0h
push ebx
push esi
push edi
lea edi, [ebp+var_C0]
mov ecx, 30h
mov eax, 0CCCCCCCCh
rep stosd
我的組語內容
pop edi
pop esi
pop ebx
add esp, 0C0h
cmp ebp, esp
call sub_1001158C
mov esp, ebp
pop ebp
retn 0Ch
多了這些紅字的東西,難怪怎麼跑都不對。請問這是正常的嗎?
有辦法編譯完後只有"我的組語內容",不要那些奇怪紅字的內容嗎?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 125.224.186.205
※ 編輯: Lighdark 來自: 125.224.186.205 (12/08 15:35)
推 zha0:在 ABC 前多加 __declspec(naked) 210.68.29.69 12/08 17:42
→ Lighdark:原來如此…感謝 114.46.35.207 12/08 20:27