![]() |
Получение коннекта к базе данных, путем анализа файла IDAPI32.CFG программы BDE Admin
Вложений: 1
Здравствуйте!
За ранее хочу извиниться если что то не так сделал, очень редко приходилось задавать вопросы в форумах, я в этом деле новичок. Есть задача, в общем плане такая: Имеется СУБД firebird и база данных, коннект к базе данных прописывается в программе BDE Administrator 5.01 и хранится в файле : %programfiles% \Borland\Common Files\BDE\DAPI32.CFG (путь по умолчанию) Коннект имеет вид, к примеру база находится на компьютере с ip адресом 192.168.0.1 Коннект: 192.168.0.1:C:\Base\base.gdb Задача в том что бы получить этот путь, например записать в текстовый файлик или в переменную, возможно есть какой то другой способ, если есть подскажите какой (точно есть при использовании языков программирования, но я не программист), я пытался решить это путем анализа файла DAPI32.CFG с помощью цикла for /f, в cmd, но столкнулся с проблемой, файл анализируется только в том случае если его предварительно открыть, нажать «энтер» (сделать перевод каретки) и сохранить (возможно звучит глупо, не знаю в чем дело), причем перевод каретки «батником» не помогает. В написании батников опыт небольшой. Прикрепляю файл IDAPI32.CFG в архиве. Код «батника» с помощью которого осуществлялся анализ файла: Код:
assoc .cfg=txtfile |
Цитата:
Это замечательно решается grep'ом с принудительным указанием формата данных, как текст. Так, как полученные данные содержат управляющий символ (0x04\EOT), в связи с чем выделение пути средствами for delims затруднено, они передаются по конвееру в find, который отрезает их. На выходе получаем чистый адрес:путь. Код:
For /F "delims=" %%A In ('Grep -Eoi --binary-files=text "SERVER NAME.*[.]GDB" "%ProgramFiles%\Borland\Common Files\BDE\DAPI32.CFG"^|Find ".GDB"') Do (Echo %%A) |
Добрый день, попробую оживить тему:
а как можно узнать используя Код:
For /F "delims=" %%A In ('Grep -Eoi --binary-files=text "SERVER NAME.*[.]GDB" "%ProgramFiles%\Borland\Common Files\BDE\DAPI32.CFG"^|Find ".GDB"') Do (Echo %%A) |
Время: 09:37. |
Время: 09:37.
© OSzone.net 2001-