Форум: "Основная";
Текущий архив: 2004.02.17;
Скачать: [xml.tar.bz2];
ВнизКак файл впихнуть в сам exe-шник, чтобы потом извлечь Найти похожие ветки
← →
nester (2004-02-07 05:10) [0]Нужно чтобы несколько файлов хранились в одном, а при необходимости использования конкретного файла - он извлекается.
т.е. У нас есть один файл, мы его запускаем, прога работает, все впорядке, затем наступает условие Х и должен появиться еще один файл, который до этого как то жил в первом файле.
Может этом можно сделать какнибудь через ресурсы?
Сделать это самораспоковывающимся раром или подобными приблудами просьба не предлагать. Это нужно сделать средствами делфи.
Заранее благадарю
← →
хз (2004-02-07 05:18) [1]> Может этом можно сделать какнибудь через ресурсы?
Да, именно через ресурсы. Порядок действий таков:
1. Пишешь RC-файл:
RAR EXEFILE C:\SOFT\RAR.EXE
2. Компилируем его в Brcc32.exe.
3. Далее:
implementation
{$R *.DFM}
{$R mytest.res}
procedure ExtractMyRes(ResType, ResName, ResNewName : String);
var
Res : TResourceStream;
begin
Res := TResourceStream.Create(Hinstance, Resname, PChar(ResType));
Res.SavetoFile(ResNewName);
Res.Free;
end;
procedure TForm1.Button1Click(Sender:TObject);
begin
ExtractRes("EXEFILE","RAR","C:\RAR.EXE");
end;
Вроде так.
P.S:ПисАл здесь, могут быть ошибки.
← →
nester (2004-02-07 06:05) [2]Спасибо, с утра проверю, ща уже спать хочу.
← →
Юрий Федоров (2004-02-07 11:14) [3]Вчера заметил забавную штуку
я, правда, создаю TResourceStream другим конструктором (если не ошибаюсь, CreateFromResourceID). Так вот, при проблемах в ресурсе валится не с осмысленным сообщением, а с AV (судя по адресу - где-то попытка прочитать nil^)
← →
Budy (2004-02-07 12:00) [4]Приветствую! А как можно создать RES файл, пожалуйста поточнее!
Я пробовал вводить в XP
"C:\Program Files\Borland\Delphi5\Bin\brcc32.exe myfile.rc"
водит страницу "Невозможно отобразить страницу"?
← →
Юрий Федоров (2004-02-07 12:07) [5]вижуал студия установлена ?
или какой другой редактор, позволяющий редактировать файлы ресурсов..
в твой коммандной строке ([4]) наверно надо указать полынй путь к myfile.rc ??
← →
Rouse_ (2004-02-07 13:46) [6]Я создаю ресурсы так:
1. помещаю их в отдельную папку.
2. пишу там же файл resources.rc в котором прописываю пути к этим ресурсам, к примеру:
MAINMENU BITMAP "1.bmp"
HAND CURSOR "HAND.CUR"
HAND2 CURSOR "HAND2.CUR"
URL CURSOR "URL.CUR"
3. в меню Project\Add to Project этому файлу
4. в меню Project\Build Project
Все, соответственно при изменении resources.rc заново нужно выполнить пункт 4.
Желаю успехов
← →
хз (2004-02-07 16:23) [7]2 Юрий Федоров [5]
Он наверное это в строке адреса в проводнике набирает...
2 Budy [4]
Создай bat-файл, пропиши туда:
brcc32.exe myfile.rc
Запусти этот bat-файл. Все.
← →
Budy (2004-02-07 17:13) [8]Юрий Федоров: Вообще я копировал myfile.rc в папку с brcc32.exe и оттуда писал "brcc32.exe myfile.rc"
хз: да нет, я и с bat-файлом делал!
Rouse_: вроде помогло
Вопрос для всех: что за ошибка
[Error] WARNING. Duplicate resource(s):?
← →
Rouse_ (2004-02-07 18:11) [9]> Duplicate resource
Перевести?
← →
Budy (2004-02-08 16:15) [10]Да, нет. У меня такая ошибка возникает при коипиляции
← →
Юрий Федоров (2004-02-08 16:18) [11]идентификаторы ресурсов должны быть уникальными
поменяй
← →
nester (2004-02-08 19:49) [12]По поводу ресурсного файла:
HAND CURSOR "HAND.CUR"
Я так понял CURSOR - Это тип ресурса?
А какой тип для dll?
или по барабану?
← →
nester (2004-02-08 20:10) [13]Уже все сам вкурил, все заработало, всем спасибо.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.02.17;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.015 c