ODBC Yöneticisi aracı, hem 32 bit hem de 64 bit kullanıcı DSN'lerini, 64 bit Windows sürümünde gösterir
Bu makalede, ODBC Veri Kaynağı Yöneticisi aracında oluşan sorun için geçici çözüm sağlanır.
Özgün ürün sürümü: SQL Server
Orijinal KB numarası: 942976
Belirtiler
Microsoft Windows işletim sisteminin 64 bit sürümü ODBC Veri Kaynağı Yöneticisi aracının aşağıdaki sürümlerini içerir (Odbcad32.exe):
- Odbcad32.exe dosyasının 32 bit sürümü klasörde bulunur
%systemdrive%\Windows\System32
. - Odbcad32.exe dosyasının 64 bit sürümü klasörde bulunur
%systemdrive%\Windows\SysWoW64
.
Odbcad32.exe dosyası aşağıdaki veri kaynağı adı türlerini (DSN) görüntüler:
- Sistem DSN'leri
- Kullanıcı DSN'leri
Belirti 1
ODBC Yönetici aracının 32 bit sürümü, 32 bit sistem DSN'lerini, 32 bit kullanıcı DSN'lerini ve 64 bit kullanıcı DSN'lerini görüntüler. ODBC Yönetici aracının 64 bit sürümü, 64 bit sistem DSN'lerini, 32 bit kullanıcı DSN'lerini ve 64 bit kullanıcı DSN'lerini görüntüler.
Belirti 2
SQLDataSources
işlevi, uygulamanın mimarisinden bağımsız olarak kullanıcı DSN'lerinin tüm sürümlerini döndürür. 32 bit bir uygulamada çağrılan SQLDataSources
işlevi, yalnızca 32 bit sürücüler için sistem DSN'lerini döndürür ancak hem 32 bit sürücüler hem de 64 bit sürücüler için kullanıcı DSN'lerini döndürür. Benzer şekilde 64 bit bir uygulamada çağrılan SQLDataSources
işlevi, yalnızca 64 bit sürücüler için sistem DSN'lerini döndürür ancak hem 32 bit sürücüler hem de 64 bit sürücüler için kullanıcı DSN'lerini döndürür. Bu nedenle uygulama, SQLDataSources
işlevinden döndürülen bir kullanıcı DSN'sini kullanarak bağlantı kurarsa aşağıdaki hata iletisini alabilirsiniz:
Veri kaynağı adı bulunamadı ve varsayılan sürücü belirtilmedi
Örneğin, şu senaryoyu inceleyin: 'Microsoft Access Sürücüsü (*.mdb)' 32 bit sürücüsü için kullanıcı DSN'sini oluşturursunuz. Bu sürücünün karşılık gelen 64 bit sürümü yok. 64 bit uygulamada çağrılan SQLDataSources
işlevi, bu 32 bit kullanıcı DSN'sini döndürür. Ancak bu 32 bit kullanıcı DSN'sini kullanarak bağlantı yaparsanız bu bölümün başlarında bahsedilen hata iletisini alırsınız.
Neden
Kullanıcı DSN'leri aşağıdaki kayıt defteri alt anahtarı altında depolanır:
HKEY_CURRENT_USER\Software\ODBC\ODBC.INI
Bu kayıt defteri alt anahtarı için kayıt defteri yeniden yönlendirmesi etkinleştirilmedi. Bu nedenle, ODBC Yönetici aracının hem 32 bit hem de 64 bit sürümlerinde kullanıcı DSN'leri görünür.
Çözüm
Geriye dönük uyumluluğu korumak için şu anda bu sorunun çözümü yoktur.
Geçici Çözüm
Bu sorunu geçici olarak çözmek için ODBC Yönetici aracının uygun sürümünü kullanın. Bir uygulamayı 64 bit işletim sisteminde 32 bit uygulama olarak derleyip çalıştırırsanız ODBC veri kaynağını oluşturmak için ODBC Yönetici aracını kullanmanız %windir%\SysWOW64\odbcad32.exe
gerekir. DSN türünü belirtmek için 32 bit kullanıcı DSN'lerine '_32' ve 64 bit kullanıcı DSN'lerine '_64' ekleyebilirsiniz.
Daha fazla bilgi
64 bit ODBC Yönetici aracı, 64 bit işlemler tarafından kullanılan kullanıcı DSN'lerini ve sistem DSN'lerini yönetmek için Denetim Masası'ndan çağrılabilir. Bir 64 bit işletim sisteminde, Windows 64 (WOW64) işlemlerinde Windows için 32 bit ODBC Yönetici aracı kullanılır. SysWoW64 klasöründen doğrudan 32 bit ODBC Yönetici aracını çağırmanız gerekir. WOW64 işlemleri tarafından kullanılan kullanıcı DSN'lerini ve sistem DSN'lerini yönetmek için 32 bit ODBC Yönetici aracını kullanabilirsiniz.
Sistem DSN'leri, aşağıdaki kayıt defteri alt anahtarında depolanır:
HKEY_LOCAL_MACHINE\Software\ODBC\ODBC.INI
Bu kayıt defteri alt anahtarı için kayıt defteri yeniden yönlendirmesi etkinleştirildi. Bu nedenle, 32 bit sürücüler ve 64 bit sürücüler için sistem DSN'leri ayrılır. 64 bit ODBC Yönetici aracı, 32 bit ODBC Yönetici aracı tarafından oluşturulan sistem DSN'lerini görüntülemez. Benzer şekilde, 32 bit ODBC Yöneticisi aracı 64 bit ODBC Yönetici aracı tarafından oluşturulan sistem DSN'lerini görüntülemez. Ayrıca, 64 bit ODBC Yöneticisi aracı 32 bit sürücüleri kullanan sistem DSN'lerini görüntülemez. Benzer şekilde, 32 bit ODBC Yöneticisi aracı 64 bit sürücüleri kullanan sistem DSN'lerini görüntülemez.
Kullanıcı DSN'leri, aşağıdaki kayıt defteri alt anahtarında depolanır:
HKEY_CURRENT_USER\Software\ODBC\ODBC.INI
Bu kayıt defteri alt anahtarı için kayıt defteri yeniden yönlendirmesi etkinleştirilmedi. Bu nedenle, her iki ODBC Administrator aracı da tüm kullanıcı DSN'lerini görüntüler.
Kayıt defteri yeniden yönlendirmesi hakkında daha fazla bilgi için bkz. Kayıt Defteri Yeniden Yönlendiricisi.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin