FDPhysFBDriverLink ведет себя странно с VendorLib Path

Я запускаю свое первое приложение с FireDAC и Firebird 3.0, и у меня возникает странная проблема с FDPhysFBDriverLink,

Настройка требует от вас установки VendorHome а также VendorLib чтобы получить ссылку на драйвер работает...

Когда я их устанавливаю, драйвер продолжает добавлять "\bin\" в конец моего VendorHome дорожка.

Например:
Во время выполнения моего приложения FDPhysFBDriverLinkсвойства устанавливаются так:

FDPhysFBDriverLink.VendorHome := ExtractFilePath(Application.ExeName);
FDPhysFBDriverLink.VendorLib  := 'fbclient_64.dll';

В дизайне они задаются в свойствах, они всегда одинаковы, я могу вас в этом убедиться.

Я также могу убедиться, что эта DLL всегда находится в одной папке с приложением.

Но когда я запускаю свое приложение, FireDAC отображает это исключение:

[FireDAC] [Phys] [FB] -314. Не удается загрузить библиотеку поставщика [C:\Development\bin\fbclient_64.dll]. Нет информации о том, что нужно делать.

Подсказка: проверьте, что он находится в каталогах PATH или EXE-файла приложения и имеет битность x86.

Просто быть чистым, ExtractFilePath(Application.ExeName) возвращает это: C:\Development\, Я дважды проверил это.

Я попытался создать эту папку bin внутри папки моего приложения, и она начала работать.

Теперь проблема в том, что я не хочу создавать одну папку для одного файла DLL.

Кто-нибудь знает обходной путь к этой проблеме или как исправить это должным образом?

1 ответ

Решение

По предложению Виктории, настройка VendorLib по полному пути разрешает проблему. Проблема все еще существует, но если вы не используете свойство VendorHome, все будет в порядке.

Другие вопросы по тегам