Pilote ODBC Excel: erreur inattendue du pilote de base de données externe




delphi ado (6)

Ce problème a été introduit par une mise à jour récente de Microsoft Office. il n'y a pas de solutions alternatives pour le moment.

Depuis la mise à jour Windows du 10 octobre, les pilotes ODBC Excel ont cessé de fonctionner. Nous obtenons l'erreur suivante en essayant de lire un fichier:

"Erreur inattendue du pilote de base de données externe (1)"

Nous ouvrons des fichiers Excel dans Delphi en utilisant une connexion ADO avec la chaîne de connexion suivante:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyExcel.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1";

Je peux le faire fonctionner en passant à Microsoft.ACE.OLEDB.12.0, mais pour que cela fonctionne, tous nos clients devraient installer Microsoft Access Database Engine Redistributable sur tous les ordinateurs sur lesquels ils utilisent notre logiciel.

Quelqu'un at-il une autre solution ou solution de contournement? Merci d'avance.


Sur une machine client, j'ai désinstallé KB4041681 (Windows 7) fourni avec le dernier correctif Microsoft. Sur ma machine j'ai désinstallé KB4041676 (Windows 10). Après cela, Microsoft.Jet.OLEDB.4.0 fonctionne maintenant.

J'espère que Microsoft va corriger ce bug bientôt.


ICI est la solution ... je l'ai trouvé dans un autre forum et fonctionne parfaitement pour moi ... ça marchera 100%

Comme mentionné dans forums.embarcadero.com/thread.jspa?messageID=902557&tstart=0 et forum.kanors-emr.org/showthread.php?tid=571&pid=2652#pid2652, le KB4041681 installe la version 4.0.9801.1 de msexcl40.dll .

  1. Trouver la version précédente (4.0.9801.0) de msexcl40.dll

  2. Placez dans un autre répertoire. Ils suggèrent le répertoire de l'application, mais puisque dans l'étape suivante vous allez modifier le registre pour pointer vers cette ancienne version, il peut probablement aller n'importe où.

  3. Mettez à jour la clé de Registre HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ Jet \ 4.0 \ Moteurs \ Excel \ win32 pour pointer vers l'emplacement de l'étape 2.


J'ai eu le même problème avec 2 applications développées par moi depuis 3 ans (c # et java). Depuis le 10-oct-2017, je n'ai pas pu exporter vers Excel 2003 mais 2007 a fonctionné, et n'a pas pu importer d'Excel 2003, mais 2007 a aussi fonctionné pour l'importation.

Dans ArcGIS Desktop 10.5.1 Par ESRI (un logiciel le plus populaire pour le traitement géographique) Impossible d'ouvrir les fichiers Excel 2003 et .mdb.

Solution temporaire: désinstaller KB4041693, KB4041687 dans Windows 8.1 (peut-être pour w10).

Dans Microsoft changelog des deux chemin dire quelque chose sur "mises à jour [...] et mises à jour de sécurité pour Microsoft Jet". Après la désinstallation et le redémarrage, tous les logiciels redeviennent normaux.

ce problème a été introduit dans 10-oct-2017. Dans les forums de Microsoft, ce problème a été signalé (kb4041693 devrait "réparer" mais ne fonctionne toujours pas). Peut-être que dans quelques semaines, ils iront (correctement) sur ce problème.


J'ai eu le même problème. Changement Excel 2007 dans les destinations Excel. Ça a marché. C'est la même chose que changer le fournisseur = Microsoft.ACE.OLEDB.12.0.


Si vous travaillez avec le paquet SSIS alors s'il vous plaît changer votre feuille Excel version 2003 à 2007 dans Excel Source ou destination Excel. Généralement ce problème en raison de la version Excel.





delphi-10.1-berlin