Страница 1 из 1

Программное определение наличие сервера или клиента IB

Добавлено: 15 мар 2005, 00:28
December
Подскажите пожалуйста, как программно определить наличие на машине установленного сервера (клиента) Interbase с помощью Delphi.

Если где-то что-то проглядел, то ткните носом в ссылочку...

Заранее спасибо

Re: Программное определение наличие сервера или клиента IB

Добавлено: 15 мар 2005, 09:23
eugeney
December писал(а):Подскажите пожалуйста, как программно определить наличие на машине установленного сервера (клиента) Interbase с помощью Delphi.

Если где-то что-то проглядел, то ткните носом в ссылочку...

Заранее спасибо
Превер наличие gds32 или fbclient в путях поиска. Или лезь в реестр.

Re: Программное определение наличие сервера или клиента IB

Добавлено: 16 мар 2005, 05:31
December
eugeney писал(а):Превер наличие gds32 или fbclient в путях поиска. Или лезь в реестр.
Уважаемый тезка! А нет какого-либо более цивилизованного решения?

Re: Программное определение наличие сервера или клиента IB

Добавлено: 16 мар 2005, 09:36
eugeney
December писал(а):
eugeney писал(а):Превер наличие gds32 или fbclient в путях поиска. Или лезь в реестр.
Уважаемый тезка! А нет какого-либо более цивилизованного решения?
:-/
А чем не цивилизованное решение. Реестр редко кто читает но там ничего нет сложного. А проверить библиотеку это вызов LoadLibrary("gds32.dll")!=NULL , всего две строки. Вродебы FIB грузит библиотеку динамически и кидает Exception.

Добавлено: 16 мар 2005, 22:54
December
Спасибо, тезка. Хоть и не элегантное решение, но хоть есть от чего отталкиваться.

Добавлено: 17 мар 2005, 10:26
kdv
давай думать, каким может быть "элегантное" решение. Примеры?
Клиент IB/FB вообще может быть установлен просто в каталог exe. то есть его для "публичного" доступа может и не быть. Если клиенту IB еще надо запись в services, то FB, включая embedded, вообще ничего не надо. И на машине может стоять пяток приложений с embedded, которые могут быть "клиентами" любых серверов, и которые ты найдешь только поиском файлов по винчестеру.