Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
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
Özgün KB numarası: 942976
Belirtiler
Microsoft Windows işletim sisteminin 64 bit sürümü ODBC Veri Kaynağı Yöneticisi aracının (Odbcad32.exe) aşağıdaki sürümlerini içerir:
- Odbcad32.exe dosyasının 32 bit sürümü klasörde
%systemdrive%\Windows\SysWoW64
bulunur. - Odbcad32.exe dosyasının 64 bit sürümü klasörde
%systemdrive%\Windows\System32
bulunur.
Odbcad32.exe dosyasında aşağıdaki veri kaynağı adı türleri (DSN) görüntülenir:
- 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 aşağıdaki senaryoları düşünün. '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öneticisi 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öneticisi 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önetici aracı 32 bit sürücüleri kullanan sistem DSN'lerini görüntülemez. Benzer şekilde, 32 bit ODBC Yönetici 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.