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

Вниз

fakedll   Найти похожие ветки 

 
oleggar ©   (2005-12-23 13:10) [0]

Я пытаюсь компонентом Fakedll вставить внутрь своего Exe файла unrar.dll и unarj.dll и уже понял ,что меня ожидает много работы ,чтоб все вызовы функций  из реальных dll переключить на fakedll  .Кто-то это делал реально ?Может,есть компоненты,более удобные ?


 
Digitman ©   (2005-12-23 13:17) [1]

если ты дурью маешься, то ей ты и маешься)

а если НЕТ, то поясни свою глубокогениальную идею что-то там куда-то там противоестественно засунуть ..


 
oleggar ©   (2005-12-23 15:16) [2]

я хочу ,чтоб 2 dll ,которые использует мое приложение ,находились внутри exe файла .я это уже сделал ,но код из-за несовершенства компонента громоздко выглядит ,вот и хочу узнать ,можно и делать это попроще .


 
Johnmen ©   (2005-12-23 15:45) [3]

>.я это уже сделал ,

Как, если не секрет?


 
Джо ©   (2005-12-23 15:57) [4]

А зачем вся эта надуманная возня? Какая причина сподвигает на это?


 
ancara ©   (2005-12-23 17:16) [5]

Есть предположенике, что автор использует своим приложением эти библиотеки для распаковки чего-то там, но не хочет таскать три файла, а хочет чтоб был один. Если так, то логично будет поместить их в ресурсы. Извлекать перед началом распаковки и удалять по завершении. А насчет громозкозти я что-то не понял.


 
Digitman ©   (2005-12-23 17:31) [6]

Удалено модератором


 
ancara ©   (2005-12-23 17:32) [7]

а в ресурсы добавить можно например так
 создаем файл myres.rc
в нем пишем
UNRARDLL  BIN_DATA unrar.dll
UNARJDLL  BIN_DATA unarj.dll


затем добавляем его в проект, написав в файле *.dpr
 {$R "myres.res" "myres.rc"}
и билдим, exe-шник раздувается, dll  в него помещаются,
затем извлекаем:

procedure ExtractDLL;
var
 Res: TResourceStream;
begin
 Res:=TResourceStream.Create(HInstance, "UNRARDLL", "BINDATA");
 Res.SaveToFile("unrar.dll");
 Res.Free;

 Res:=TResourceStream.Create(HInstance, "UNARJDLL", "BINDATA");
 Res.SaveToFile("unarj.dll");
 Res.Free;
end;


 
Digitman ©   (2005-12-23 17:35) [8]

Удалено модератором
Примечание: Именно


 
oleggar ©   (2005-12-23 20:52) [9]

как сделал-с помощью той же Fakedll  ,но пока одной из двух ,и долго трудиться пришлось .А не хотел сохранять DLL на диск только потому ,что там стоит NTFS и у приложения нет прав писать что-то даже в свой каталог .Да и пользователи удивляются ,откуда эти DLL взялись .Хотя как худшее решение я давно делаю это самое procedure ExtractDLL;и еще ...нервирует то ,что когда запускаешь приложение на другой машине ,оно везде "рожает" рядом эти DLL ..тоже неприятно .



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

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

Наверх




Память: 0.49 MB
Время: 0.024 c
14-1135085051
Иксик
2005-12-20 16:24
2006.01.15
Удаленная тех. поддержка


14-1134990271
data
2005-12-19 14:04
2006.01.15
Посоветуйте, пожалуйста, mp3 плеер. Хочу сыну на НГ подарить.


1-1134135702
TBeginner
2005-12-09 16:41
2006.01.15
TListView теряет первый символ


14-1134737802
Dngt
2005-12-16 15:56
2006.01.15
Из двличной в десятичную


9-1122578344
Dr.Nemo
2005-07-28 23:19
2006.01.15
Как сделать игровой сервак на php для delphi online игр