![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Ресурсы [D6, Win95/98]
Kotka © (2003-01-27 15:47:00)Как можно программно сохранить какие-либо ресурсы в ехе-файл, не выполняющейся сейчас программы (желательно кодом). Заранее спасибо.
asmith (2003-01-28 17:24:00) [1]Сорри, тут, оказывается, Win95/98! Тогда снимается.
asmith (2003-01-28 17:21:00) [2]Естественно, а в чем проблема?
Anatoly Podgoretsky (2003-01-28 15:12:00) [3]asmith (28.01.03 15:07)
Ты смотрел в хелп прежде чем советовать?
asmith (2003-01-28 15:07:00) [4]Для этого нужно использовать функции BeginUpdateResource, UpdateResource и EndUpdateResource. В MSDN в разделе Platform SDK: Windows User Interface: Updating Resources есть простой понятный пример на эту тему.
waw (2003-01-28 14:47:00) [5]На этапе проекрирования можно зайти в меню Project/Resourses, добавить раздел User Data, выбрать файл который хочешь прикрепить.
Затем выполнить вот такую процедуруExtractResToFile(HInstance, "название в ресурсе", OutFileName)
procedure ExtractResToFile(Instance:THandle; ResID:String; FileName:String);
var ResStream: TResourceStream;
begin
try
ResStream := TResourceStream.Create(Instance
, ResID
, RT_RCDATA);
try
if FileExists(FileName) then
DeleteFile(pChar(FileName));
ResStream.SaveToFile(FileName);
finally
ResStream.Free;
end;
except
on E:Exception do
begin
DeleteFile(FileName);
raise;
end;
end;
end;
Бук (2003-01-28 13:42:00) [6]Не совсем понятно, что имеется ввиду. Тем не менее могу посоветовать использовать resourcestring для всех строковых констант. Подгружаются в память только по мере необходимости.
Kotka (2003-01-27 23:35:00) [7]Че, никтоне знает?