读书人

hook到了本进程的webbrowser的RegQuer

发布时间: 2012-03-23 12:06:21 作者: rapoo

hook到了本进程的webbrowser的RegQueryValueEx函数。
hook到了本进程的webbrowser的RegQueryValueEx函数。

怎么修改返回值???

Delphi(Pascal) code
function  myRegQueryValueEx(hkey:HKEY; Lpvaluename:PansiChar; lpreserved:Pointer; lptype:pdword;lpdata:Pbyte;lpcbdata:Pdword):LongInt; stdcall;var  s: string;  Flen:dword;begin  Result := oldRegQueryValueEx(hkey,Lpvaluename,lpreserved,lptype, lpdata, lpcbdata);  if pos(lpvaluename, 'mykey') > 0 then begin   form1.Memo1.Lines.Add(pchar(lpdata));   s := 'newvalue';   Flen:=length(s);   Move(s[1],lpdata^,flen);   lpcbdata^:=FLen;   form1.Memo1.Lines.Add(pchar(lpdata));//lpdata的值是变了。不过webbrowser调用时的值没变  end;end;


[解决办法]
你都hook到了,还不会改返回值啊,直接把Result的值改下不就行了

读书人网 >.NET

热点推荐