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

Вниз

загрузка dll   Найти похожие ветки 

 
Вованчик ©   (2004-05-27 08:26) [0]

Здравствуйте.
Возникла такая вот проблема:
программа была написана на D6, код загрузки Dll"ки:
function GetMessage(Name1, Name2: string; Kind: TMsgDlgType; Count_Button: byte; Caption, Messages: String; Type_Dialogs: String): boolean;
begin
 //Загрузка библиотеки
 DLLHandle := LoadLibrary("dll\Message.dll");
 if (DLLHandle = 0) then
   begin
     if Count_Button = 1 then
       Result := MessageDlg(Messages, Kind, [mbOk], 0) = mrOk
     else
       Result := MessageDlg(Messages, Kind, [mbYes, mbNo], 0) = mrYes;
     Exit;
   end;

 try
   //Получение указателя на функцию и преобразование его к соответствующему типу
   if Type_Dialogs = "MessageBox" then
     @Message_GetMessage := GetProcAddress(DLLHandle, PChar("MessageBox"))
   else
     @Message_GetMessage := GetProcAddress(DLLHandle, PChar("MessageCloud"));

   //Вызов функции
   Result := Message_GetMessage(Name1, Name2, Kind, Count_Button, Caption, Messages);
 finally
   //Выгрузка библиотеки
   FreeLibrary(DLLHandle);
 end;


в D6 все работало нормально.
Поставил D7 и начались проблемы с загрузкой Dll, постоянно выдается стандартный MessageDll, хотя никаких изменений не делал с проектом вообще - просто откомпилировал в D7 и все. Почему DLLHandle постоянно равен 0?
Помогите разобраться.
Спасибо.


 
Reindeer Moss Eater ©   (2004-05-27 08:52) [1]

Почему DLLHandle постоянно равен 0?

Потому что Getlasterror ему не равен.
Нулю.



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

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

Наверх




Память: 0.47 MB
Время: 0.03 c
8-1080491941
NarvaL
2004-03-28 20:39
2004.06.06
Антиалистинг, сглаживание линий, как осуществить, исходники!


14-1085119972
Alex_x
2004-05-21 10:12
2004.06.06
тестирование своих программ


3-1084792882
It
2004-05-17 15:21
2004.06.06
Редактирование наборов данных в БД


1-1085027044
Schummi
2004-05-20 08:24
2004.06.06
I/O 53


1-1085241554
safo
2004-05-22 19:59
2004.06.06
строки