Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.03;
Скачать: CL | DM;

Вниз

Как вытащить файл из ресурса ???   Найти похожие ветки 

 
rlzz   (2006-07-20 23:20) [0]

Собственно вот такой вапрос....

Нужно зделатьчто то на подобие инсталлера

,я тут подумал что файлы можно запихнуть в ресурсфайл , а вот вытащить их как от туда записав на винт??


 
oxffff ©   (2006-07-20 23:32) [1]

LoadResource, LockResource и FindResource(Ex).

Или еще проще использовать installShield и Wise Install


 
rlzz   (2006-07-20 23:42) [2]

или innoSetup он в исходниках

а если по подробнее с маааленьким примером кода

функции эти и я нашел


 
oxffff ©   (2006-07-20 23:45) [3]

Тогда подробнее суть поясните


 
oxffff ©   (2006-07-20 23:48) [4]

И что вы понимаете под ресурс файлом


 
rlzz   (2006-07-20 23:49) [5]

запускаем прогу ,жмем кнопку , файл должен быть на харде ,например в корне диска С


 
Шпиён   (2006-07-20 23:53) [6]

TResourceStream


 
rlzz   (2006-07-20 23:53) [7]

{$R <файл ресурсов>},

компиленный который res workshopom например


 
Джо ©   (2006-07-20 23:57) [8]

Вот, примерно, так. Все проверки в примере исключены для ясности.
var
 RcInfo: HRSRC;
 Rc: THandle;
 Data: Pointer;
begin
 RcInfo := FindResource(0,ResourceName,ResourceType);
 Rc := LoadResource(0,RcInfo);
 Data := LockResource(Rc);
end;

В Data будем иметь указатель на первый байт данных, занимаемых нужным ресурсом.


 
oxffff ©   (2006-07-20 23:57) [9]

rlzz
функции эти и я нашел.

И что не понятного.

Создаешь res файл с ресурсом RCDATA c твоим файлом.
Компилируешь свое приложение с этим res файлом
Далее
FindResource
Потом LoadResource
и Далее LockResource
Получаешь указатель на данные своего файлика

И далее сохраняешь куда хочешь


 
Шпиён   (2006-07-21 00:00) [10]

Или так:

файл MY.RC
TEST RCDATA "TEST.EXE"

brcc32 -32 MY.RC


{$R MY.RES}
..................

procedure TForm1.Button1Click(Sender: TObject);
begin
   with TResourceStream.Create(0,"TEST",RT_RCDATA) do
   try
       SaveToFile("aaa.exe")
   finally
       Free
   end
end;


 
rlzz   (2006-07-21 00:02) [11]

спс поробуем щас


 
oxffff ©   (2006-07-21 00:02) [12]

Или даже так.
Что еще проще.



Страницы: 1 вся ветка

Текущий архив: 2006.09.03;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.049 c
15-1154631863
imbalsde
2006-08-03 23:04
2006.09.03
Время на написание программы


15-1155237754
GanibalLector
2006-08-10 23:22
2006.09.03
Сайт(редактирование данных MySQL)


2-1155732275
XTD
2006-08-16 16:44
2006.09.03
Передать параметры WEB странице.


6-1145086748
ГостьНомер
2006-04-15 11:39
2006.09.03
indy-компонент tidHttp, ошибка 411 Length Required


15-1155410696
Virgo_Style
2006-08-12 23:24
2006.09.03
Всех причастных к ВВС РФ -