Главная страница
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.05 c
4-1082826531
DoG
2004-04-24 21:08
2004.06.06
TerminatedProcess


1-1085074474
K@rt
2004-05-20 21:34
2004.06.06
Information for


6-1082389209
SniZ
2004-04-19 19:40
2004.06.06
Изменить IP


1-1085635471
Yuriy
2004-05-27 09:24
2004.06.06
Доступ к набор компонент для другого юзера


4-1083050607
luka
2004-04-27 11:23
2004.06.06
клавиатура и мышь