Перед вызовом функции из подключенной DLL-библиотеки не мешает проверить, существует ли в данной библиотеке такая функция. Пример возвращает True если функция найдена, или False, если не найдена.
function FuncAvail (VLibraryname, VFunctionname: string;
var VPointer: pointer): boolean;
var
Vlib: tHandle;
begin
Result := false;
VPointer := NIL;
if LoadLibrary(PChar(VLibraryname)) = 0 then
exit;
VPointer := GetModuleHandle(PChar(VLibraryname));
if Vlib <> 0 then
begin
VPointer := GetProcAddress(Vlib, PChar(VFunctionname));
if VPointer <> NIL then
Result := true;
end;
end;
Комментарии