Как узнать версию odbc драйвера

Обновлено: 07.07.2024


Как можно узнать из файла .m3u название песни и вывести это название в Label?
Я делаю свою программку для прослушивания радиостанций (хоть таких и полно - но мне хочется создать.

Как скачать новые драйвера на материнскую плату, название которой неизвестно?
у меня долгое время была винда ХР, но буквально недавно купил себе Висту. хочу скачать драйвера на.


Как узнать название монитора
Как узнать название монитора, как это делает виндоус

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

WoodHead, давай в одном старом проете гляну. Когда дома буду. Вроде там реализацию такой проверки делал.
Точно делал на чтении реестра. Т.е. проверял наличие ключей. Хотя могу ошибаться там было несколько проверок.С целью деплоя программы на абсолютно чистой машине.

Добавлено через 4 часа 9 минут

Тут проверяется наличие источника данных.
Но в принципе исходя из моего кода можно проверить наличие файлов драйвера в папке C:\\WINNT\\system32\\myodbc3.dll

rdama, спасибо за подсказку.
В коде не совсем то, что мне нужно, но смысл я понял - копать в реестре.
Вот рабочий код:

добавляем в uses модуль Registry

если при добавлении в uses модуля Registry дельфи ругается, что не смог найти файл Registry.dcu, то попробуйте вместо Registry написать System.Win.Registry (актуально для Delphi XE2).

Возникла та же необходимость, но данный код не подходит.
Например в системе стоит:
MySQL ODBC 5.2 ANSI Driver
MySQL ODBC 5.2 Unicode Driver
Данный код можно для этого переработать.
НО!
Если мое приложение х86 но работает под операционной системой х64 и установлены те же драйверы, только х64.
Нужно проверить их разрядность.

Добавлено через 5 минут
Буду пробовать обработкой исключений определять.
Выложу код если получится.

Добавлено через 1 час 43 минуты
Разобрался.

В данном случае вы указываете в точности какой драйвер вам необходим:

Иногда приходится запускать свое х86 приложение под х64 ОС.
В данном случае необходимо, чтобы в ОС был установлен MySQL Connector/ODBC х86, иначе приложение не увидит драйвера, даже если в системе установлен MySQL Connector/ODBC х64.

Данный пример решает и эту проблему.

KMSNasgool, вот тут я немного не понимаю.
Получается, мы диктуем пользователю, какой драйвер ставить в систему. Но если у пользователя будет установлена более поздняя версия драйвера, не получится ли так, что свой драйвер нельзя будет поставить? А значит, и приложение работать не будет.

WoodHead, если немного подумать и поработать руками, то можно в цикле запустить проверку на сотню драйверов более поздних версий. И! Если вы можете предложить более удобный и функциональный вариант, мы оценим.
=)

Добавлено через 25 минут
Пришел домой и перепроверил, извиняюсь но вышла ошибочка.
Ошибки подключения имеют тот же класс. Сделал на проверку источник ошибки.
Поправил в выше описанном коде.

Добавлено через 58 секунд

На данный момент у меня следующие соображения по решению проблемы, обозначенной в стартовом топике.

Постановка задачи:
- имеем компьютер под управлением Windows, при этом заранее неизвестно, какая разрядность операционной системы и какие драйвера установлены в ней для работы с MySQL;
- необходимо установить свое приложение на этот компьютер и работать с БД MySQL.

Решение №1:
- устанавливаем на компьютер свое приложение;
- из инсталлятора своего приложения также запускаем установку коннектора, содержащего драйвер подключения к БД (необходим коннектор только для Windows (x86, 32-bit), т.к. Delphi не работает с 64-bit драйвером); выбор типа инсталлятора - MSI или noinstall (в ZIP-архиве) - дело вкуса. Мне больше нравится noinstall, т.к. при установке не требует никаких телодвижений от пользователя;
- при формировании строки подключения не испытываем никаких трудностей, т.к. заранее знаем название драйвера;
- так как драйвер пользователь может деинсталлировать из системы, то при неудачном подключении к БД приложение составляет список имен драйверов для подключения к MySQL, присутствующих в системе, и поочередно пытается подключиться к БД, используя эти имена; при удачном подключении имя драйвера заносится в реестр или в файл настроек приложения;
- если в системе нет подходящего драйвера, то запускается установка драйвера MySQL, который шел в дистрибутиве приложения (здесь тоже лучше использовать инсталлятор коннектора вида noinstall).

Читайте также: