服务端生成客户端时,动态配置一些信息会用到!
比如:
a为一个可执行文件,b为ini文件.将b文件写入a文件里,a文件里就包含了资源文件b.
写入资源文件代码:
var mstrm1:TMemoryStream; update : dword; workdir:string; begin workdir := ExtractFilePath(ParamStr(0)); mstrm1 := TMemoryStream.Create; mstrm1.LoadFromFile(workdir+'\add.ico');//要添加的图标 mstrm1.Seek(0,soFromEnd ); mstrm1.Position :=0; CopyFile(PChar(workdir+'\P_dlq.exe'),PChar(workdir+'\test_add.exe'),True ); update := BeginUpdateResourceW(PWideChar(widestring(workdir+'\test_add.exe')),False); UpdateResourceW(update,PWideChar(RT_RCDATA),'MYICO',0,mstrm1.Memory,mstrm1.Size); EndUpdateResourceW(update ,False); mstrm1.Free; ShowMessage('配置完成了');
将写入的资源文件释放出来:
var exe:tresourcestream; begin exe:= TResourceStream.Create(HInstance,'MYICO',RT_RCDATA); exe.SaveToFile('C.ICO'); exe.Free;
标签:delphi
发表评论