function MySend(s: TSocket; var Buf:pointer; len, flags: Integer): Integer; stdcall;
var
dwSize: cardinal;i:integer;
begin
//这儿进行发送的数据处理
i:=integer(buf) xor 255;
buf:=@i;
//调用直正的Send函数
WriteProcessMemory(ProcessHandle, AddSend, @OldProc[0], 8, dwSize);
Result := OldSend(S,buf, len, flags);
JmpCode.Address := @MySend;
WriteProcessMemory(ProcessHandle, AddSend, @JmpCode, 8, dwSize);
end;本意是想将buf指针所存放的数据的第一个字节与FFH进行异或处理,但实际得到的结果不是。
var
dwSize: cardinal;i:integer;
begin
//这儿进行发送的数据处理
i:=integer(buf) xor 255;
buf:=@i;
//调用直正的Send函数
WriteProcessMemory(ProcessHandle, AddSend, @OldProc[0], 8, dwSize);
Result := OldSend(S,buf, len, flags);
JmpCode.Address := @MySend;
WriteProcessMemory(ProcessHandle, AddSend, @JmpCode, 8, dwSize);
end;本意是想将buf指针所存放的数据的第一个字节与FFH进行异或处理,但实际得到的结果不是。
解决方案 »
- DBExpress连接MSSQL2000的blobsize的问题,郁闷一星期了,仍未解决
- 如何实现数据库访问的短连接,完全断开再打开
- 请问 如何把 多条 建表 语句 在DELPHI程序中一起执行??
- delphi5.0升级到6.0出现的问题:高手请进!
- 我想问一下adoquery的小问题?
- 如何实现多页的显示数据库中的记录》
- 將CachedUpdates設為true,怎樣利用事務更新數據庫
- ADO里面可以指定那些字段更新,那些字段不更新吗???
- 1操作系统中关于页式存储原理的问题
- 一个三层结构的技术问题,高手请进!!!急用!!!!!
- 如何用adoquery和Opendialog保存图片到sql server 2000
- Delphi 关键字详解!
(PByte(buf)^) := (PByte(buf)^)xor 255;
function MyRecv(s: TSocket; var Buf:pointer; len, flags: Integer): Integer; stdcall;
var
dwSize: cardinal;i:byte;
begin
//这儿进行接收的数据处理
i:=(PByte(buf)^) xor 255;
buf:=@i;
//调用直正的Recv函数
WriteProcessMemory(ProcessHandle, AddRecv, @OldProc[1], 8, dwSize);
Result := OldRecv(S, Buf, len, flags);
JmpCode.Address := @MyRecv;
WriteProcessMemory(ProcessHandle, AddRecv, @JmpCode, 8, dwSize);
end;编译通过了,可是在调用由它生成的dll文件时,提示 "0x03777e60"指令引用的"0x49474552"内存.该内存不能为"read".