![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как сохранить текстовый ресурс? [D7, WinXP]
new1 © (2007-04-02 20:05:00)Здравствуйте мастера. Такая собственно задача, нужно в ресурс *.ехе файла добавить текстовый ресурс.
В обшем, много справок почитал ничего существенного не нашел, толко как выдернуть ресурс и все,
подскажите в каких хелпах поискать, или посоветуйте код.
Чапаев (2007-04-02 23:25:00) [1]Такое когда-то писал:
program Project1;
{$APPTYPE CONSOLE}
uses
Windows,
SysUtils;
type
TStrIndex=0..15;
TStrArr=array [TStrIndex] of PWideChar;
procedure StringsToResource(Strings:TStrArr;out Result:WideString;out Len:Integer);
var
I:TStrIndex;
begin
Result:='';
Len:=0;
for I := Low(TStrIndex) to High(TStrIndex) do begin
if Strings[I]<>nil
then begin
Result:=Result+WideChar(Length(Strings[I]))+Strings[I];
Len:=Len+Length(Strings[I]);
end
else begin
Result:=Result+WideChar(0);
Len:=Len+2;
end;
Len:=Len+2;
end;
end;
var
Lib:THandle;
MyStr:WideString;
Len:Integer;
Strings:TStrArr;
begin
FillChar(Strings,SizeOf(Strings),0);
Strings[0]:='qwe';
Strings[1]:='asd';
StringsToResource(Strings,MyStr,Len);
Lib:=BeginUpdateResource(PChar(ExtractFilePath(ParamStr(0))+'lib.dll'),True);
UpdateResource(Lib,RT_STRING,MAKEINTRESOURCE(1),0,@MyStr[1],Len);
EndUpdateResource(Lib,False);
end.