64 bit windows Microsoft.Jet.OLEDB.4.0 provider is not registered hatası çözümü

Kullandığınız işletim sistemi 64 bit ise ve siz Access yada Excel e bağlanan bir uygulama yazdıysanız muhtemelen şöyle bir hata alacaksınız.

“The ‘Microsoft.Jet.OLEDB.4.0′ provider is not registered on the local machine.”

Eğer uygulamanız web uygulaması ise:
IIS 7 ve üzeri 64 Bit Kullananlar : (Test edildi bu şekilde sorun çözülmektedir)

IIS üzerinde şu ayarları yapmalısınız. IIS Yönetim panelinden Application Pools ta sizin uygulamanızın pool ayarlarından -> Advanced Settings -> Enable 32-Bits Applications değerini True olarak değiştiriniz.

 


IIS 6 – 64 Bit Kullananlar : (IIS6 -64 bit için anlatılanlar tarafımdan test edilmemiştir ancak test eden diğer insanlar bu şekilde çözüldüğünü söylemektedir)

Öncelikle asp.net 2.0 32 bit versionu iis e yükleyin. Aşağıdaki örnekteki gibi.

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

32 bit uygulama desteğini aşağıdaki komut ile açın.

cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
IIS te yeni bir Application Pool oluşturun. Uygulamanızın bu pool da çalışması için uygulamanızın properties bölümünden Home Directory -> Application Pool olarak biraz önce açtığınız Pool u atayın.  Configuration butonuna tıklayın ve Extension Mappings bölümünde bütün uzantılar için “C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll” olan dizin ayarlarını “C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll” olarak değiştirin.

Web service extension list bölümünden ASP.NET version 2.0.50727 (32-bit) eklentisine izin verin.

Technorati Tags: , , , , ,

Leave a Reply