Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
3-1084847163
Krechetov
2004-05-18 06:26
2004.06.06
Поиогите разобраться с SQL запросом


14-1085266276
Profi
2004-05-23 02:51
2004.06.06
Глюк?


1-1085573870
Прямой
2004-05-26 16:17
2004.06.06
считать данные из DOS окна


1-1085128914
-SeM-
2004-05-21 12:41
2004.06.06
EXE как DLL


14-1084555929
Knight
2004-05-14 21:32
2004.06.06
Есть ли возможность узнать какое приложение держит файл?




   Наверх