![]() |
|
|
#1
|
|||
|
|||
|
Использую:
Код:
dllHandle := LoadLibrary(PChar(Path + 'my.dll')); Если запускаю из под делфи, то dllHandle = 0 Если запускаю ехе файл, то загружается всё нормально. Почему не загружается длл из под Делфи? Как исправить ошибку? Windows 7 x32. Delphi 2010 PS: SysErrorMessage(GetLastError) Выдал: The handle is invalid Последний раз редактировалось MAcK, 02.07.2011 в 21:10. |
|
#2
|
||||
|
||||
|
MAcKZloy
А как с правами? |
|
#3
|
|||
|
|||
|
Цитата:
Сама делфя запускается от имени администратора. |
|
#4
|
||||
|
||||
|
Сама да, но каталог обращения?
|
|
#5
|
||||
|
||||
|
Попробуй
dllHandle := LoadLibrary(PChar('"'+Path + 'my.dll"')); и проверь значение Path, может у нее значение '' или вида 'C:\SomeDir' и тогда полный путь принимает вид 'C:\SomeDirmy.dll'. |
|
#6
|
|||
|
|||
|
Цитата:
PAth := ExtractFilePath(Application.ExeName); Это всё я уже проверял. Если бы была ошибка, то и при запуске ехе файла, выдало ошибку загрузки длл, а тут только если запускать из под делфи Последний раз редактировалось MAcK, 03.07.2011 в 08:41. |
|
#7
|
||||
|
||||
|
Цитата:
Код:
var
h: THandle;
begin
h:=LoadLibrary('dll.dll');
if h=0 then ShowMessage(SysErrorMessage(GetLastError));
end; |
|
#8
|
|||
|
|||
|
Проблема решена:
Цитата:
|