Lazarus блокирует dll для доступа из других приложений.
Модератор: Модераторы
-
tryexceptend
- незнакомец
- Сообщения: 4
- Зарегистрирован: 14.04.2014 23:11:04
Lazarus блокирует dll для доступа из других приложений.
Здравствуйте. У меня происходит такая ситуация. Есть dll для доступа к БД. Скада использует ее для чтения данных. Если из своей программы вызываю функцию из этой dll то скада виснит, поскольку видимо Lazarus блокирует ее для себя. Что можно попробовать, что бы такого не происходило и я мог вызывать dll без монопольного доступа?
Lazarus не блокирует dll для доступа из других приложений. Вы либо не умеете пользоваться этой длл, либо длл не предназначена для многопоточного использования, либо скада или ваше приложение запрашивает монопольный доступ к БД, например.
-
tryexceptend
- незнакомец
- Сообщения: 4
- Зарегистрирован: 14.04.2014 23:11:04
Хотел бы согласиться, но пробовал с Delphi и там такой проблемы нет.
tryexceptend писал(а):Хотел бы согласиться, но пробовал с Delphi и там такой проблемы нет.
Работа с DLL под виндой возможна только через WinAPI: LoadLibrary и т.п. Компилятор на это не может влиять.
Поэтому копайте в сторону использования вами этой DLL, Вы судя по всему что-то делаете не так. При этом что за Скада, что за библиотека (DLL), что за функцию Вы вызываете, с какой БД работает Скада и с какой работаете Вы? И что значит "скада виснет"?
