Verificar los controladores ODBC en C# .NET

by | May 2, 2019

El sistema operativo almacena una lista de los controladores ODBC instalados en el registro HKEY_LOCAL_MACHINE.
Hay dos ubicaciones diferentes para los controladores de 32 bits y 64 bits:

[text]
32bit: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers
64bit: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\ODBC Drivers
[/text]

En el siguiente ejemplo se pueden obtener toso los de 32Bit:

[csharp]
using (RegistryKey reghklm = Registry.LocalMachine)
using (RegistryKey regdrivers = reghklm.OpenSubKey(@"SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers"))
{
if (regdrivers != null)
{
foreach (string driver in regdrivers.GetValueNames())
{
// Muestra los drivers
Console.WriteLine(driver);
}
}
}
[/csharp]