Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];

Вниз

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

 
oleg_   (2004-10-21 23:43) [0]

Здраствуйте.
Помогите,если не трудно.

модуль dll
dll-ка (содержит ImageList, и должна ресурсы
переводить в форму)
procedure lib;
begin
lib.Images:=form1.ImageList1;
main_f.s1.ImageIndex:=24;
end;

модуль формы
на кнопке вызываем dll:
var
 h: THandle;
 lib:procedure;
begin
 h := LoadLibrary("lib_.DLL");
на кнопке окна, вызываем dll:
if h = 0 then
     raise Exception.Create("Unable to Load DLL...")
   else
   begin
     try @lib := GetProcAddress(h, "lib");
       if @lib <> nil then
         lib;
     except
       on E: Exception do
         ShowMessage("Exception error: " + E.Message);
     end;
   end;
   FreeLibrary(h);

end;

Помогите пожалуйста, где ошибка?
Спасибо


 
GuAV ©   (2004-10-22 03:20) [1]

Ошибка в том, что глобальные переменные ехе не доступны в dll и наоборот.

Хотя моё предположение об ошибке на уровне телепатии. Вам следовало бы привести код более полностью. Например что есть lib в процедуре lib, что есть form1 main_f ?

И потом в чём проявляется ошибка ?


 
oleg_   (2004-10-22 08:16) [2]

А dll имеет uses на main_u, и в ней, кроме
кода и формы - нет ничего

library lib_;

uses
 SysUtils,
 Classes,
 forms, messages, dialogs,
 lib in "lib.pas" {Form1},main_u;

{$R *.res}

procedure lib;
begin
main_f.ToolBar1.Images:=form1.ImageList1;
main_f.s1.ImageIndex:=24;
end;
end.


 
GuAV ©   (2004-10-22 14:37) [3]

Так в приложении свой main_u а в dll свой - две разные копии !



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

Форум: "Основная";
Текущий архив: 2004.11.07;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.034 c
1-1098531353
Grundic
2004-10-23 15:35
2004.11.07
Самая страшная и темная для меня тема: динам. создание объектов.


14-1098087893
Vlad Oshin
2004-10-18 12:24
2004.11.07
Outlook 2003 and Outlook 2002 do not access to attachmen


4-1096818141
Гость
2004-10-03 19:42
2004.11.07
Как определить в какой CD-rom вставлен диск, если сидюк не 1


1-1098697952
Artemius
2004-10-25 13:52
2004.11.07
Как определить путь к программе?


1-1098765141
Sash
2004-10-26 08:32
2004.11.07
excel





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский