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

Вниз

Реализация DLL   Найти похожие ветки 

 
Cranium ©   (2003-01-08 01:09) [0]

Нужен пример кода реализующей следующее, в исполняемом файле дата модуль с DataSource в DLL дочерняя форма с гридом сваязанная с выше упомянутым DataSource... Если у кого есть похожий пример или ссылка на оный просьба поделиться....


 
cranium ©   (2003-01-08 21:40) [1]

Что, ни кто не вкурсе?


 
Cranium ©   (2003-01-09 09:34) [2]

Очень жаль, что ни у кого нет примера исходника....


 
asmith   (2003-01-09 20:01) [3]

Делаем примерно так:
1. в исполняемом файле дата модуль с набором данных и с соединенным с ним TDataSource с именем, например, MyDS
2. программа запускается, загружает DLL, запускает форму из нее, открывает набор данных
3. далее программа инициализирует данные-вызывает некую процедуру из DLL, передавая в нее ссылку на TDataSource
type
TInitData = procedure(ds : TDataSource); stdcall;
...
var
InitData: TInitData;
...
InitData := GetProcAddress(FHLib, "InitData");
if Assigned(InitData) then
InitData(MyDS);
4. в DLL содержится описание этой функции
exports
..., InitData;
и ее тело
procedure InitData(ds : TDataSource); stdcall; export;
begin
MyDLLForm.DBGrid1.DataSource := ds;
end;
ИМНО лучше делать чуть сложнее - завести в DLL собственный модуль данных и при ее загрузке инициализировать его активным соединением с источником данных (передать TDatabase.Handle при работе через BDE или TADOConnection.ConnectionObject для ADO).





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

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

Наверх




Память: 0.47 MB
Время: 0.021 c
4-62942
Lipa
2002-12-05 20:40
2003.01.20
Уважаемые профи! помогите разобратся.


3-62413
satron
2002-12-26 13:37
2003.01.20
Как ограничить кол-во пользователей таблицы Paradox ?


14-62785
Starik
2002-12-25 20:13
2003.01.20
TidPOP3


1-62540
Shil
2003-01-10 21:48
2003.01.20
Освобождение памяти


14-62825
John
2002-12-29 19:47
2003.01.20
Компиляция из