⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testasmstructs.obs

📁 格式化源码的最新板
💻 OBS
字号:
unit testasmstructs;interface implementation uses activex;const atvarmask=$3F;attypemask
=$7F;atbyref=$80;procedure foo(calldesc:pcalldesc;namedargdispids,result:pointer)
;var dispparams:tdispparams;asm
and eax,not 3
@resulttable:
mov ebx,calldesc
movzx ecx,[ebx].tcalldesc.argcount
mov dispparams.cargs,ecx
add ebx,offset tcalldesc.argtypes
@@1:movzx eax,[ebx].byte
jne @@1
cmp al,varvariant
push[esi].integer[4]
@@2:push[esi].integer[12]
@@3:and al,attypemask
or eax,varbyref
@@10:mov dispparams.rgvarg,esp
movzx eax,[ebx].tcalldesc.namedargcount
mov dispparams.cnamedargs,eax
mov esi,namedargdispids
@@12:movzx ecx,[ebx].tcalldesc.calltype
cmp ecx,dispatch_propertyput
cmp[ebx].tcalldesc.argtypes.byte[0],vardispatch
@@20:mov dispparams.rgdispidnamedargs,esp
call[eax].pointer[24]
mov ecx,[ebp+4]
jmp foo
mov result,false
mov result,'F'
end;end. 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -