64,654
社区成员
发帖
与我相关
我的任务
分享
externdef IID_IUnknown:IID
LPUNKNOWN typedef DWORD
LPPUNKNOWN typedef ptr LPUNKNOWN
IUnknown_QueryInterfaceProto typedef proto :DWORD, :DWORD, :DWORD
IUnknown_AddRefProto typedef proto :DWORD
IUnknown_ReleaseProto typedef proto :DWORD
IUnknown_QueryInterface typedef ptr IUnknown_QueryInterfaceProto
IUnknown_AddRef typedef ptr IUnknown_AddRefProto
IUnknown_Release typedef ptr IUnknown_ReleaseProto
IUnknown struct DWORD
QueryInterface IUnknown_QueryInterface ?
AddRef IUnknown_AddRef ?
Release IUnknown_Release ?
IUnknown ends
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
;IMalloc Interface
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
externdef IID_IMalloc:IID
LPMALLOC typedef DWORD
LPPMALLOC typedef ptr LPMALLOC
IMalloc_AllocProto typedef proto :DWORD, :DWORD
IMalloc_ReallocProto typedef proto :DWORD, :DWORD, :DWORD
IMalloc_FreeProto typedef proto :DWORD, :DWORD
IMalloc_GetSizeProto typedef proto :DWORD, :DWORD
IMalloc_DidAllocProto typedef proto :DWORD, :DWORD
IMalloc_HeapMinimizeProto typedef proto :DWORD
IMalloc_Alloc typedef ptr IMalloc_AllocProto
IMalloc_Realloc typedef ptr IMalloc_ReallocProto
IMalloc_Free typedef ptr IMalloc_FreeProto
IMalloc_GetSize typedef ptr IMalloc_GetSizeProto
IMalloc_DidAlloc typedef ptr IMalloc_DidAllocProto
IMalloc_HeapMinimize typedef ptr IMalloc_HeapMinimizeProto
IMalloc struct DWORD
QueryInterface IUnknown_QueryInterface ?
AddRef IUnknown_AddRef ?
Release IUnknown_Release ?
Alloc IMalloc_Alloc ?
Realloc IMalloc_Realloc ?
Free IMalloc_Free ?
GetSize IMalloc_GetSize ?
DidAlloc IMalloc_DidAlloc ?
HeapMinimize IMalloc_HeapMinimize ?
IMalloc ends
invoke (IMalloc PTR [eax]).Free,@stMalloc,@pidlParent
invoke (IMalloc PTR [eax]).Release,@stMalloc
#include <objidl.h>
int main() // 仅供示例,不完整,不要运行
{
IMalloc *p;
void *pidlParent;
p->Free(pidlParent);
p->Release();
return 0;
}