![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите пожалуйста! [D6, Win2k]
Bob5 © (2001-12-04 07:52:00)Имеются DLL которые обрабатывают документы(каждая свой документ).
как обнаружить и подключить DLL с новыми документами в каталоге откуда запускается прога. DLL Юзеру ложаться без уведомления а прога должна их подцепить при запуске проги
bob5 (2001-12-05 09:23:00) [1]Спасибо всем большое! Все сделал как хотелось!
Владислав (2001-12-05 07:21:00) [2]Из Application.ExeName извлекай путь.
bob5 (2001-12-05 05:09:00) [3]Спасибо большое всем ответившим!
Последний вопрос: как определить путь откуда запускается прога?
Заранее спасибо!
Vovchik (2001-12-04 17:42:00) [4]Чтобы определить есть такая функция или нет надо вызвать
type
MyProc = function (Parametri);
var
MyF: MyProc;
begin
Handle := LoadLibrary(NameOfDll);
if GetProcName(Handle, ProcName) <> nil then MyF := GetProcName(Handle, ProcName);
MyF(Parametri);
end;
GrEG (2001-12-04 16:08:00) [5]
procedure GetFiles(sl:TstringList;DirName,FileMask:string);
var
sr:TSearchRec;
i:integer;
begin
if sl = nil then exit;
sl.Clear;
i:=FindFirst(DirName+"\"+FileMask,faAnyFile,sr);
try
while i = 0 do begin
sl.Add(DirName+"\"+sr.Name);
i:=FindNext(sr);
end;
finally
FindClose(sr);
end;
end;
Синтаксис не проверял, но, в основном, код такой.
Естественно, sl должно быть создано до вызова процедуры.
Вызови процедуру как GetFiles(sl,GetCurrentDir,"*.dll") и в sl получишь список файлов.
Владислав (2001-12-04 12:56:00) [6]Поищи на форуме "поиск файлов" и тому подобное.
bob5 (2001-12-04 12:37:00) [7]Интересует только получение имен DLL в заданном каталоге и в каталоге запуска проги остальное понятно.
Заранее спасибо!
bob5 (2001-12-04 12:19:00) [8]to Ura
Спасио за ответ!
Все что вы сказали про функцию сделано
проблема как раз в Этом и есть:
>Следует после запуска опросить все DLL - на предмет данной функции
Вот это мне и не доступно, мне приходилось работать только с базами
Если можно кусочек кода или совет как это сделать можно мылом
Заранее спасибо!
Ura (2001-12-04 11:39:00) [9]Самый простой совет -
Это сделать во всех DLL - функцию которая говорит проге какие документы она обрабатывает, или записывает это в реестре. А прога будет либо смотреть в реестр - для каждого документа, либо держать в себе список документов и DLL которые их обрабатывают.
Следует после запуска опросить все DLL - на придмет данной функции.