//
//
//
//
//
//
//
//
//
//
软件Tags:
易语言COM组件支持模块全套源码
系统结构:取整数型指针,取文本型指针,取字节集指针,CLSIDToString,StringToCLSID,A2W,W2A,CoCreateInstance,ThrowError,GetStructId,Check_Repair,取类数组指针,切换类数组指针,取变量地址_整数数组,取整数型内存,写到内存_整数型,写到内存_短整数型,写到内存_字节型,GetCLSMethod,GetCLSMethodCounts,GetCodeLength,GetCodeSub_1,GetCodeSub_2,try_,try_exit,try_done,CallCOM,GetThisRef,reset,getBaseThis,setBaseThis,getCallIndex,setCallIndex,setMethodCounts,getMethodCounts,getMethods,setMethods,reVtbl,getVtblAddr,setVtbl1,pushCode,VirtualProtect,IsBadCodePtr,IsBadReadPtr,GetProcessHeap,MessageBeep,RtlAllocateHeap,RtlFreeHeap,VtblToPoint,MultiByteToWideChar,WideCharToMultiByte,CLSIDFromString,StringFromCLSID,CoInitialize,CoUninitialize,CoCreateInstance_,取整数型指针,取文本型指针,取字节集指针,CLSIDToString,CLSIDToString_Point,StringToCLSID,PointToCLSID,Ansi2Unicode,Unicode2Ansi,Unicode2Ansi_Point,IsEqualGUID,MultiByteToWideChar,WideCharToMultiByte,CLSIDFromString,StringFromCLSID,CoTaskMemFree,CoInitialize,CoUninitialize,IsBadReadPtr,Point2Bin,COMCallHelper_DllMain,delete,new_This,COMToThis,取整数型指针,取文本型指针,取字节集指针,取整数型整组指针,读整数型指针,写到内存_整数型,写到内存_短整数型,写到内存_字节型,ThrowError,FS_Check_Repair,HS_Check_Repair,GetFStructId,GetHStructId,HS_GetThis,HS_Remove,取FS数组指针,取HS数组指针,GetCLSMethod,GetCLSMethodCounts,GetFunctionParams,GetCodeLength,GetCodeSub_1,GetCodeSub_2,try_,try_exit,try_done,new,COMCall,GetThis,VirtualProtect,IsBadCodePtr,MessageBeep,GetPoint_ArrayNull,取整数型数组指针,HeapAlloc_EArray,Array_Check_Repair,Exchange,HeapAlloc,HeapFree,写到内存_整数型,读整数型指针,IsBadReadPtr,VirtualQuery,GetProcessHeap,RtlAllocateHeap,RtlFreeHeap,OutputDebugString,IClassFactory_CreateInstance,COM_MAP_INTERFACE_ENTRY,ECOM_Release,ECOM_DllMain,ECOM_CanUnloadNow,ECOM_GetClassObject,COMToEObject,new_IClassFactory,COM_INTERFACE_ENTRY,QueryInterface,AddRef,Release,IDispatchImpl,GetTI,GetTypeInfoCount,GetTypeInfo,GetIDsOfNames,Invoke,IDS_GetStructId,IDS_Check_Repair,取IDS数组指针,CMS_GetStructId,CMS_Check_Repair,取CMS数组指针,ICF_GetStructId,ICF_Check_Repair,取ICF数组指针,写到内存_整数型,读整数型指针,IUnknown_AddRef,IUnknown_Release,ITypeLib_GetTypeInfoOfGuid,ITypeInfo_GetIDsOfNames,ITypeInfo_Invoke,new,CreateInstance,LockServer,IDS_Remove,IDS_IDispatchImpl,IDS_LoadTypeInfo,IDS_GetTypeInfo,IDS_EnumEqualGUID,IDS_COM_INTERFACE_ENTRY,IDS_IncRef,IDS_DecRef,GetIIDStructId,AddInterfaceID,GetMAPStructIdFromICFThis,GetMAPStructIdFromIDSThis,GetICFStructIdFromCLSID,ICF_CreateInstance,ICF_Remove,LoadRegTypeLib,RtlMoveMemory,DisableThreadLibraryCalls,InitializeCriticalSection,DeleteCriticalSection,GetCriticalSection,HeapAlloc,HeapFree,读整数型指针,InterlockedDecrement,InterlockedIncrement,InitializeCriticalSection_,EnterCriticalSection,LeaveCriticalSection,DeleteCriticalSection_,GetProcessHeap,RtlAllocateHeap,RtlFreeHeap,
======Main
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ 取整数型指针
| |
| |------ 取文本型指针
| |
| |------ 取字节集指针
| |
| |------ CLSIDToString
| |
| |------ StringToCLSID
| |
| |------ A2W
| |
| |------ W2A
| |
| |------ CoCreateInstance
| |
| |
======Kernel
| |
| |------ ThrowError
| |
| |------ GetStructId
| |
| |------ Check_Repair
| |
| |------ 取类数组指针
| |
| |------ 切换类数组指针
| |
| |------ 取变量地址_整数数组
| |
| |------ 取整数型内存
| |
| |------ 写到内存_整数型
| |
| |------ 写到内存_短整数型
| |
| |------ 写到内存_字节型
| |
| |------ GetCLSMethod
| |
| |------ GetCLSMethodCounts
| |
| |------ GetCodeLength
| |
| |------ GetCodeSub_1
| |
| |------ GetCodeSub_2
| |
| |------ try_
| |
| |------ try_exit
| |
| |------ try_done
| |
| |
======CallCOMHelper
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ CallCOM
| |
| |------ GetThisRef
| |
| |
======COMHelperStruct
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ reset
| |
| |------ getBaseThis
| |
| |------ setBaseThis
| |
| |------ getCallIndex
| |
| |------ setCallIndex
| |
| |------ setMethodCounts
| |
| |------ getMethodCounts
| |
| |------ getMethods
| |
| |------ setMethods
| |
| |------ reVtbl
| |
| |------ getVtblAddr
| |
| |------ setVtbl1
| |
| |------ pushCode
| |
| |
======调用的Dll
| |
| |---[dll]------ VirtualProtect
| |
| |---[dll]------ IsBadCodePtr
| |
| |---[dll]------ IsBadReadPtr
| |
| |---[dll]------ GetProcessHeap
| |
| |---[dll]------ MessageBeep
| |
| |---[dll]------ RtlAllocateHeap
| |
| |---[dll]------ RtlFreeHeap
| |
| |---[dll]------ VtblToPoint
| |
| |---[dll]------ MultiByteToWideChar
| |
| |---[dll]------ WideCharToMultiByte
| |
| |---[dll]------ CLSIDFromString
| |
| |---[dll]------ StringFromCLSID
| |
| |---[dll]------ CoInitialize
| |
| |---[dll]------ CoUninitialize
| |
| |---[dll]------ CoCreateInstance_
======Main
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ 取整数型指针
| |
| |------ 取文本型指针
| |
| |------ 取字节集指针
| |
| |------ CLSIDToString
| |
| |------ CLSIDToString_Point
| |
| |------ StringToCLSID
| |
| |------ PointToCLSID
| |
| |------ Ansi2Unicode
| |
| |------ Unicode2Ansi
| |
| |------ Unicode2Ansi_Point
| |
| |
======调用的Dll
| |
| |---[dll]------ IsEqualGUID
| |
| |---[dll]------ MultiByteToWideChar
| |
| |---[dll]------ WideCharToMultiByte
| |
| |---[dll]------ CLSIDFromString
| |
| |---[dll]------ StringFromCLSID
| |
| |---[dll]------ CoTaskMemFree
| |
| |---[dll]------ CoInitialize
| |
| |---[dll]------ CoUninitialize
| |
| |---[dll]------ IsBadReadPtr
| |
| |---[dll]------ Point2Bin
======Main
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ COMCallHelper_DllMain
| |
| |------ delete
| |
| |------ _Call_New
| |
| |------ new_This
| |
| |------ COMToThis
| |
| |------ 取整数型指针
| |
| |------ 取文本型指针
| |
| |------ 取字节集指针
| |
| |------ 取整数型整组指针
| |
| |------ 读整数型指针
| |
| |------ 写到内存_整数型
| |
| |------ 写到内存_短整数型
| |
| |------ 写到内存_字节型
| |
| |
======Kernel
| |
| |------ ThrowError
| |
| |------ FS_Check_Repair
| |
| |------ HS_Check_Repair
| |
| |------ GetFStructId
| |
| |------ GetHStructId
| |
| |------ HS_GetThis
| |
| |------ HS_Remove
| |
| |------ 取FS数组指针
| |
| |------ 取HS数组指针
| |
| |------ GetCLSMethod
| |
| |------ GetCLSMethodCounts
| |
| |------ GetFunctionParams
| |
| |------ GetCodeLength
| |
| |------ GetCodeSub_1
| |
| |------ GetCodeSub_2
| |
| |------ try_
| |
| |------ try_exit
| |
| |------ try_done
| |
| |
======COMCallHelper
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ new
| |
| |------ COMCall
| |
| |------ GetThis
| |
| |
======调用的Dll
| |
| |---[dll]------ VirtualProtect
| |
| |---[dll]------ IsBadCodePtr
| |
| |---[dll]------ MessageBeep
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ GetPoint_ArrayNull
| |
| |------ 取整数型数组指针
| |
| |------ HeapAlloc_EArray
| |
| |------ Array_Check_Repair
| |
| |------ Exchange
| |
| |------ HeapAlloc
| |
| |------ HeapFree
| |
| |------ 写到内存_整数型
| |
| |------ 读整数型指针
| |
| |
======调用的Dll
| |
| |---[dll]------ IsBadReadPtr
| |
| |---[dll]------ VirtualQuery
| |
| |---[dll]------ GetProcessHeap
| |
| |---[dll]------ RtlAllocateHeap
| |
| |---[dll]------ RtlFreeHeap
| |
| |---[dll]------ OutputDebugString
======Main
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ IClassFactory_CreateInstance
| |
| |------ COM_MAP_INTERFACE_ENTRY
| |
| |------ ECOM_Release
| |
| |------ ECOM_DllMain
| |
| |------ ECOM_CanUnloadNow
| |
| |------ ECOM_GetClassObject
| |
| |------ COMToEObject
| |
| |------ new_IClassFactory
| |
| |
======IUnknownImpl
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ COM_INTERFACE_ENTRY
| |
| |------ QueryInterface
| |
| |------ AddRef
| |
| |------ Release
| |
| |
======IDispatchImpl
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ IDispatchImpl
| |
| |------ GetTI
| |
| |------ GetTypeInfoCount
| |
| |------ GetTypeInfo
| |
| |------ GetIDsOfNames
| |
| |------ Invoke
| |
| |
======Kernel
| |
| |------ IDS_GetStructId
| |
| |------ IDS_Check_Repair
| |
| |------ 取IDS数组指针
| |
| |------ CMS_GetStructId
| |
| |------ CMS_Check_Repair
| |
| |------ 取CMS数组指针
| |
| |------ ICF_GetStructId
| |
| |------ ICF_Check_Repair
| |
| |------ 取ICF数组指针
| |
| |------ 写到内存_整数型
| |
| |------ 读整数型指针
| |
| |
======CallCOM
| |
| |------ IUnknown_AddRef
| |
| |------ IUnknown_Release
| |
| |------ ITypeLib_GetTypeInfoOfGuid
| |
| |------ ITypeInfo_GetIDsOfNames
| |
| |------ ITypeInfo_Invoke
| |
| |
======IClassFactory
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ new
| |
| |------ CreateInstance
| |
| |------ LockServer
| |
| |
======Function
| |
| |------ IDS_Remove
| |
| |------ IDS_IDispatchImpl
| |
| |------ IDS_LoadTypeInfo
| |
| |------ IDS_GetTypeInfo
| |
| |------ IDS_EnumEqualGUID
| |
| |------ IDS_COM_INTERFACE_ENTRY
| |
| |------ IDS_IncRef
| |
| |------ IDS_DecRef
| |
| |------ GetIIDStructId
| |
| |------ AddInterfaceID
| |
| |------ GetMAPStructIdFromICFThis
| |
| |------ GetMAPStructIdFromIDSThis
| |
| |------ GetICFStructIdFromCLSID
| |
| |------ ICF_CreateInstance
| |
| |------ ICF_Remove
| |
| |
======调用的Dll
| |
| |---[dll]------ LoadRegTypeLib
| |
| |---[dll]------ RtlMoveMemory
| |
| |---[dll]------ DisableThreadLibraryCalls
======程序集1
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |------ InitializeCriticalSection
| |
| |------ DeleteCriticalSection
| |
| |------ GetCriticalSection
| |
| |------ HeapAlloc
| |
| |------ HeapFree
| |
| |------ 读整数型指针
| |
| |
======调用的Dll
| |
| |---[dll]------ InterlockedDecrement
| |
| |---[dll]------ InterlockedIncrement
| |
| |---[dll]------ InitializeCriticalSection_
| |
| |---[dll]------ EnterCriticalSection
| |
| |---[dll]------ LeaveCriticalSection
| |
| |---[dll]------ DeleteCriticalSection_
| |
| |---[dll]------ GetProcessHeap
| |
| |---[dll]------ RtlAllocateHeap
| |
| |---[dll]------ RtlFreeHeap
调用的DLL命令:
.DLL命令 VirtualProtect, 逻辑型
.参数 lpAddress, 整数型
.参数 dwSize, 整数型
.参数 flNewProtect, 整数型
.参数 lpflOldProtect, 整数型, 传址
.DLL命令 IsBadCodePtr, 逻辑型
.参数 lpfn, 整数型
.DLL命令 IsBadReadPtr, 逻辑型
.参数 lp, 整数型
.参数 ucb, 整数型
.DLL命令 GetProcessHeap, 整数型
.DLL命令 MessageBeep, 逻辑型
.参数 uType, 整数型
.DLL命令 RtlAllocateHeap, 整数型, "ntdll.dll"
.参数 hHeap, 整数型
.参数 dwFlags, 整数型
.参数 dwBytes, 整数型
.DLL命令 RtlFreeHeap, 逻辑型, "ntdll.dll"
.参数 hHeap, 整数型
.参数 dwFlags, 整数型
.参数 lpMem, 整数型
.DLL命令 VtblToPoint, , , "RtlMoveMemory"
.参数 Destination, 整数型
.参数 Source, 整数型
.参数 Length, 整数型
.DLL命令 MultiByteToWideChar, 整数型
.参数 CodePage, 整数型
.参数 dwFlags, 整数型
.参数 lpMultiByteStr, 文本型, 传址
.参数 cbMultiByte, 整数型
.参数 lpWideCharStr, 字节集, 传址
.参数 cchWideChar, 整数型
.DLL命令 WideCharToMultiByte, 整数型
.参数 CodePage, 整数型
.参数 dwFlags, 整数型
.参数 lpWideCharStr, 整数型
.参数 cchWideChar, 整数型
.参数 lpMultiByteStr, 文本型, 传址
.参数 cbMultiByte, 整数型
.参数 lpDefaultChar, 文本型
.参数 lpUsedDefaultChar, 逻辑型
.DLL命令 CLSIDFromString, 整数型, "ole32.dll"
.参数 lpsz, 字节集, 传址
.参数 pclsid, 字节集, 传址
.DLL命令 StringFromCLSID, 整数型, "ole32.dll"
.参数 rclsid, 字节集
.参数 ppsz, 整数型, 传址
.DLL命令 CoInitialize, 整数型, "ole32.dll", , 公开
.参数 pvReserved, 整数型
.DLL命令 CoUninitialize, , "ole32.dll", , 公开
.DLL命令 CoCreateInstance_, 整数型, "ole32.dll", "CoCreateInstance"
.参数 rclsid, 字节集
.参数 pUnkOuter, 整数型
.参数 dwClsContext, 整数型
.参数 riid, 字节集
.参数 ppv, 对象
调用的DLL命令:
.DLL命令 IsEqualGUID, 逻辑型, "ole32.dll", , 公开
.参数 rguid1, 整数型
.参数 rguid2, 字节集
.DLL命令 MultiByteToWideChar, 整数型
.参数 CodePage, 整数型
.参数 dwFlags, 整数型
.参数 lpMultiByteStr, 文本型, 传址
.参数 cbMultiByte, 整数型
.参数 lpWideCharStr, 字节集, 传址
.参数 cchWideChar, 整数型
.DLL命令 WideCharToMultiByte, 整数型
.参数 CodePage, 整数型
.参数 dwFlags, 整数型
.参数 lpWideCharStr, 整数型
.参数 cchWideChar, 整数型
.参数 lpMultiByteStr, 文本型, 传址
.参数 cbMultiByte, 整数型
.参数 lpDefaultChar, 整数型
.参数 lpUsedDefaultChar, 逻辑型
.DLL命令 CLSIDFromString, 整数型, "ole32.dll"
.参数 lpsz, 字节集, 传址
.参数 pclsid, 字节集, 传址
.DLL命令 StringFromCLSID, 整数型, "ole32.dll"
.参数 rclsid, 整数型
.参数 ppsz, 整数型, 传址
.DLL命令 CoTaskMemFree, , "ole32.dll"
.参数 pv, 整数型
.DLL命令 CoInitialize, 整数型, "ole32.dll", , 公开
.参数 pvReserved, 整数型
.DLL命令 CoUninitialize, , "ole32.dll", , 公开
.DLL命令 IsBadReadPtr, 逻辑型
.参数 lp, 整数型
.参数 ucb, 整数型
.DLL命令 Point2Bin, , , "RtlMoveMemory"
.参数 Destination, 字节集
.参数 Source, 整数型
.参数 Length, 整数型
调用的DLL命令:
.DLL命令 VirtualProtect, 逻辑型
.参数 lpAddress, 整数型
.参数 dwSize, 整数型
.参数 flNewProtect, 整数型
.参数 lpflOldProtect, 整数型, 传址
.DLL命令 IsBadCodePtr, 逻辑型
.参数 lpfn, 整数型
.DLL命令 MessageBeep, 逻辑型
.参数 uType, 整数型
调用的DLL命令:
.DLL命令 IsBadReadPtr, 逻辑型
.参数 lp, 整数型
.参数 ucb, 整数型
.DLL命令 VirtualQuery, 逻辑型
.参数 lpAddress, 整数型
.参数 lpBuffer, 整数型, 传址 数组
.参数 dwLength, 整数型
.DLL命令 GetProcessHeap, 整数型
.DLL命令 RtlAllocateHeap, 整数型, "ntdll.dll"
.参数 hHeap, 整数型
.参数 dwFlags, 整数型
.参数 dwBytes, 整数型
.DLL命令 RtlFreeHeap, 逻辑型, "ntdll.dll"
.参数 hHeap, 整数型
.参数 dwFlags, 整数型
.参数 lpMem, 整数型
.DLL命令 OutputDebugString, , , "OutputDebugStringA", 公开
.参数 lpOutputString, 文本型
调用的DLL命令:
.DLL命令 LoadRegTypeLib, 整数型, "oleaut32.dll"
.参数 rguid, 字节集, 传址
.参数 wVerMajor, 短整数型
.参数 wVerMinor, 短整数型
.参数 lcid, 整数型
.参数 pptlib, 整数型, 传址
.DLL命令 RtlMoveMemory, 整数型
.参数 Destination, 对象
.参数 Source, 整数型, 传址
.参数 Length, 整数型
.DLL命令 DisableThreadLibraryCalls, 逻辑型
.参数 hModule, 整数型
调用的DLL命令:
.DLL命令 InterlockedDecrement, 整数型, , , 公开
.参数 Addend, 整数型, 传址
.DLL命令 InterlockedIncrement, 整数型, , , 公开
.参数 Addend, 整数型, 传址
.DLL命令 InitializeCriticalSection_, , , "InitializeCriticalSection"
.参数 lpCriticalSection, 整数型
.DLL命令 EnterCriticalSection, , , , 公开
.参数 lpCriticalSection, 整数型
.DLL命令 LeaveCriticalSection, , , , 公开
.参数 lpCriticalSection, 整数型
.DLL命令 DeleteCriticalSection_, , , "DeleteCriticalSection"
.参数 lpCriticalSection, 整数型
.DLL命令 GetProcessHeap, 整数型
.DLL命令 RtlAllocateHeap, 整数型, "ntdll.dll"
.参数 hHeap, 整数型
.参数 dwFlags, 整数型
.参数 dwBytes, 整数型
.DLL命令 RtlFreeHeap, 逻辑型, "ntdll.dll"
.参数 hHeap, 整数型
.参数 dwFlags, 整数型
.参数 lpMem, 整数型
