内存加载DLL并调用函数--VB

VB编程 blackfeather

 

从内存中加载并调用DLL的代码,很邪恶,VBGOOD的仙剑魔同学从C翻译成VB的。

直接在内存中调用DLL中的函数,根据这个代码会产生很邪恶的想法,进而编出很邪恶的程序。。。。我啥也没说。。。

使用方法:

    Dim data()  As Byte
    Dim handle As Long
    Dim fun_stdcall As Long
    
    Open "SampleDLL.dll" For Binary As #1
    ReDim data(0 To LOF(1) - 1)
    Get #1, , data
    Close #1    '先将DLL读取BYTE数组中

    handle = MemoryLoadLibrary(VarPtr(data(0)))   '加载DLL    
    fun_cdecl = MemoryGetProcAddress(handle, "subNumbers")  '取得函数地址    
    Debug.Print CallFunc_cdecl(fun_cdecl, 1, 2)  '调用函数 
    Call MemoryFreeLibrary(handle)  '擦屁股。。。
    
    Erase data   '释放数组内存



VB代码下载: 

点击下载内存中调用DLL函数(VB)

也附上C的源代码吧:

点击下载内存中调用DLL函数(C) 

 

评论列表:

发表评论: