老马求助 T_T
<p><font face="Verdana">Dim b2(4) As Byte <br/>b2(0) = &H65 <br/>b2(1) = &H18 <br/>b2(2) = &H87 <br/>b2(3) = &H0 <br/>Dim padd As Long <br/>Dim a2 As Long <br/>Dim mx1 As Long <br/>mx = GetProcAddress(LoadLibrary("oleaut32.dll"), "VariantInit") <br/>a2 = &H871861 <br/>WriteProcessMemory Me.hWnd, a2, b1(0), 64 <br/>mx1 = mx - &H87186C - 6 <br/>a2 = &H87186E <br/>WriteProcessMemory Me.hWnd, a2, mx1, 4 <br/>mx1 = mx - &H871879 - 6 <br/>a2 = &H87187B <br/>WriteProcessMemory Me.hWnd, a2, mx1, 4 <br/>mx1 = mx - &H87189C - 5 <br/>a2 = &H87189D <br/>WriteProcessMemory Me.hWnd, a2, mx1, 4 <br/>a2 = &H7F12B0 <br/>WriteProcessMemory Me.hWnd, a2, b2(0), 4 <br/>isqp = True <br/>End If <br/>Dim sk As Long <br/>If Check1.Value = 1 Then <br/>sk = 1 <br/>WriteProcessMemory Me.hWnd, &H871861, sk, 4 <br/>Else <br/>sk = 0 <br/>WriteProcessMemory Me.hWnd, &H871861, sk, 4 <br/>End If </font></p><p> </p>
<p>老马帅帅,能否帮我下。能帮我说说这些都是什么意思不?<font face="Verdana">尽量说得详细点.感激不尽</font></p>
[此贴子已经被作者于2008-10-20 9:52:41编辑过] <p><font face="Verdana">没见过这种用法.</font></p>
<p><font face="Verdana"></font> </p>
<p><font face="Verdana">不过感觉代码有问题.</font></p>
<p><font face="Verdana"></font> </p>
<p><font face="Verdana">关键就在于WriteProcessMemory函数的用法上.</font></p>
<p><font face="Verdana"></font> </p>
<p><font face="Verdana">按MSDN里的声明:</font></p>
<p><font face="Verdana"></font> </p>
<p><font face="Verdana">Private Declare Function WriteProcessMemory Lib "kernel32.dll" ( _ <br/> ByVal hProcess As Long, _ <br/> ByRef lpBaseAddress As Any, _ <br/> ByRef lpBuffer As Any, _ <br/> ByVal nSize As Long, _ <br/> ByRef lpNumberOfBytesWritten As Long) As Long</font></p><font face="Verdana">
<p><br/>则WriteProcessMemory有五个参数,而你的代码里只有四个参数.</p>
<p> </p>
<p>因此我猜测这个"WriteProcessMemory"并非MSDN里的那个WriteProcessMemory,而是一个自定义的函数,只是名字一样而已.</p>
<p> </p>
<p>最好问问代码作者,把所有的代码都搞到手.</p>
<p> </p>
<p>不然这样的片段里能得到的信息是十分有限的(对我而言).</font></p>
页:
[1]