当前位置:编程学习 > Delphi >>

delphi资源调用生成问题

欲使delphi主程序project1调用s.exe作为自己的资源,project1按配置修改s.exe,以达到生成sg.exe。请高手指点,s.exe该怎么编写?要重头开始的详细的过程。有源代码的更好,但麻烦高手指点详细过程。最好不用记事本什么的编.rc,再添加。
答案:到我空间里边看看,有一个自己写的函数,对你有帮助的。
用这个函数的好处就是不用找文件地址。

procedure change(resname,new,old,filename:string);
{函数: change(resname,new,old,filename:string);
输入:资源名字,新数据,被修改数据,保存文件名称
版权所有:30956569
}
var res:tresourcestream;
mem:tmemorystream;
buffer,buffer1:pchar;
i,j,size:integer;
edttexe:string
begin

res:=tresourcestream.Create(hinstance,resname,rt_rcdata);
mem:=tmemorystream.Create ;
mem.LoadFromStream(res);
size:=length(old)+1;
for i:=1 to mem.Size-size do
begin
mem.Position :=i-1;
mem.ReadBuffer(buffer^,size);
if buffer=old then //为什么这里只能有15个字符,16个就出错
break;
end;

j:=mem.Position-size-1 ;//readbuffer读取的时候向后移动了16位,本身所在的一位,共17.
EdtText:=trim(new);
buffer1:=pchar(EdtText+stringofchar(#0,size-length(EdtText)));
mem.Seek(j ,sofrombeginning);
Mem.WriteBuffer(buffer1^,size);
mem.SaveToFile(filename+'.exe');
mem.Free ;
res.Free ;
end;

上一个:delphi中怎样判断事件触发
下一个:关于Delphi的问题

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,