“Le fournisseur 'Microsoft.Jet.OLEDB.4.0' n'est pas enregistré sur la machine locale”… DNN

StackOverflow https://stackoverflow.com/questions/1201918

Question

J'essaie de créer un nouveau site DotNetNuke sur notre serveur 64 bits et je rencontre le message d'erreur suivant:

" Le fournisseur 'Microsoft.Jet.OLEDB.4.0' n'est pas enregistré sur la machine locale "

Je sais par expérience que vous rencontrez ce problème lorsque vous ciblez un assembly 64 bits sur un ordinateur 64 bits (il n'existe actuellement aucun fournisseur OLE-DB 64 bits). Dans ce cas, je cible simplement le x86 dans Visual Studio et tout fonctionne correctement.

Mais dans ce cas, le site utilise la compilation dynamique. Il n’ya donc pas de lieu simple pour spécifier que je dois cibler x86. Des pensées?

TIA.

Était-ce utile?

La solution

Vous pouvez modifier le pool d'applications sous lequel vous exécutez ce site pour qu'il s'exécute en tant qu'application 32 bits. Dans le gestionnaire IIS7, il se trouve sous "Paramètres avancés". de votre pool d'applications, puis définissez l'option "Activer les applications 32 bits". à vrai.

Vous pouvez également le faire avec AppCmd ?? à partir de une console avec les éléments suivants:

appcmd apppool set /apppool.name:MyNukeSite /enable32BitAppOnWin64:true

Dans IIS6, vous pouvez essayer quelque chose comme ceci (2 lignes ici, exécutez aspnet_regiis lorsque vous avez fini de modifier la valeur de la métabase) ...

cscript %SystemDrive%\inetpub\AdminScripts\adsutil.vbs set w3svc/AppPools/Enable32bitAppOnWin64 1
aspnet_regiis.exe -i

Voir les informations suivantes pour plus d'informations:

Autres conseils

HI, Microsoft a publié la version bêta des composants de connectivité de données du pilote Office System 2010, qui est prise en charge à la fois dans les systèmes d’exploitation 32 bits et 64 bits. Donc, utiliser ce pilote au lieu du pilote traditionnel Microsoft.Jet.OLEDB.4.0 nous donnera une application 64 bits s'exécutant sur un serveur 64 bits (c'est ce dont nous avons vraiment besoin).

Bien que ce soit en version bêta, cela a bien fonctionné pour moi.

Vous pouvez télécharger ce pilote à partir de Bêta des pilotes Office System 2010: Composants de connectivité de données

Thnks

Vous ne devez pas essayer de cibler votre application sur 32 bits, auquel cas vous perdez les avantages de l’utilisation d’un système 64 bits. Comme l'a souligné aaa, vous pouvez utiliser la dernière Access Database Engine 2010 pour résoudre ce problème. Veuillez consulter mon billet de blog pour une solution complète.

J'espère que ça aide.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top