AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Datei

"Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Datei

Ein Thema von mjustin · begonnen am 6. Nov 2017 · letzter Beitrag vom 15. Nov 2017
Antwort Antwort
Seite 1 von 3  1 23   
mjustin

Registriert seit: 14. Apr 2008
3.003 Beiträge
 
Delphi 2009 Professional
 
#1

"Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Datei

  Alt 6. Nov 2017, 09:17
Datenbank: Excel • Version: 2010 • Zugriff über: ADO
Hallo,

in einem Delphi 2009 Projekt wird eine Excel-Datei über ADO geöffnet, gelesen und geschrieben. In der Vergangenheit lief dies in den VMWare Produktivumgebungen (Windows 7) und allen Entwicklungsumgebungen (Windows 7) problemlos.

Vermutlich durch ein Windows Update hat sich in den Office-Treibern auf den Entwicklungsrechnern etwas geändert, die Anwendung wirft die EOleException mit dem Text "Unerwarteter Fehler vom externen Datenbanktreiber (1)" sofort beim Öffnen der XLS-Datei. Wir können das in Frage kommende Windows Update vielleicht durch Deinstallationen der letzten Updates einkreisen, und müssen solange in den Produktivumgebungen auf Office-Updates verzichten.

Gibt es Möglichkeiten die Ursache des Fehlers weiter einzukreisen (ADO-Logging / Debugging)?

Ist es möglich, dazu ein Supportticket bei Embarcadero zu öffnen?
Miniaturansicht angehängter Grafiken
unbenannt.png  
Michael Justin
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.058 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat

  Alt 6. Nov 2017, 09:22
Habt ihr mit dem Process Monitor das Problem untersucht?
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
961 Beiträge
 
Delphi 6 Professional
 
#3

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat

  Alt 6. Nov 2017, 09:23
Hmm..

Zeig mal deinen ConnectionString..

Embarcadero hat damit nichts zu tun, da es sich um eine Fehlermeldung des Treibers handelt!

Edit:
Und gib die Excel-Version vom Altsystem (Win7) und Neusystem an.

Geändert von HolgerX ( 6. Nov 2017 um 09:25 Uhr)
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.003 Beiträge
 
Delphi 2009 Professional
 
#4

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat

  Alt 6. Nov 2017, 09:33
Hmm..

Zeig mal deinen ConnectionString..

Embarcadero hat damit nichts zu tun, da es sich um eine Fehlermeldung des Treibers handelt!

Edit:
Und gib die Excel-Version vom Altsystem (Win7) und Neusystem an.

Der Connection String ist:

Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\Sandbox\***.xls; Extended Properties="Excel 8.0; HDR=YES; IMEX=0"

Excel Version in den Entwicklungsumgebungen:
14.0.7188.5002 (32 Bit)

In der Produktionsumgebung:
14.0.7184.5000 (32 Bit)
Michael Justin

Geändert von mjustin ( 6. Nov 2017 um 09:38 Uhr)
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
961 Beiträge
 
Delphi 6 Professional
 
#5

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat

  Alt 6. Nov 2017, 09:40
Hmm..

Alternativ den Provider Microsoft.ACE.OLEDB.X.0 (Bei X die installierte Version, müsste bei dir 12 sein) verwenden anstelle von Microsoft.Jet.OLEDB.4.0.
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.003 Beiträge
 
Delphi 2009 Professional
 
#6

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat

  Alt 6. Nov 2017, 09:55
Hmm..

Alternativ den Provider Microsoft.ACE.OLEDB.X.0 (Bei X die installierte Version, müsste bei dir 12 sein) verwenden anstelle von Microsoft.Jet.OLEDB.4.0.
Ok, der Connection String beginnt nun mit

Code:
Provider=Microsoft.ACE.OLEDB.12.0;
Dann erscheint eine andere Fehlermeldung:

"Der Provider kann nicht gefunden werden. Möglicherweise ist der Provider nicht richtig installiert worden."
Michael Justin

Geändert von mjustin ( 6. Nov 2017 um 10:00 Uhr)
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#7

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat

  Alt 6. Nov 2017, 10:06
Den "unerwarteten Fehler" bei ADO kenne ich ganz gut, er taucht gerne bei Datumswerten mit Range Verletzung (erlaubten Range kenne ich nicht) auf. (Unabhängig von der Datenquelle, hier Excel)
Was scheinbar nach einem Fehler nach Windows Update aussieht, ist also vielleicht einfach Zufall (so wie mit der schwarzen Katze).

Mein Tipp: Exceldaten im Originalprogramm auf mögliche, außergewöhnliche Datumswerte prüfen. Das gilt besonders, wenn es sich um Handeingabedaten handelt oder zumindest manuell bearbeitet bzw. "korrigiert" (ein anderer Grund würde mir auch kaum einfallen, Excel als Importformat zu nutzen)
Gruß, Jo
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.003 Beiträge
 
Delphi 2009 Professional
 
#8

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat

  Alt 6. Nov 2017, 10:09
Den "unerwarteten Fehler" bei ADO kenne ich ganz gut, er taucht gerne bei Datumswerten mit Range Verletzung (erlaubten Range kenne ich nicht) auf. (Unabhängig von der Datenquelle, hier Excel)
Was scheinbar nach einem Fehler nach Windows Update aussieht, ist also vielleicht einfach Zufall (so wie mit der schwarzen Katze).
Wir können einiges ausschliessen, da der Fehler auch dann auftritt, wenn wir alte Dateien und alte Programmversionen in der Entwicklungsumgebung testen, und in der Produktivumgebung diese Dateien fehlerfrei geöffnet werden können.
Michael Justin
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
961 Beiträge
 
Delphi 6 Professional
 
#9

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat

  Alt 6. Nov 2017, 10:11
Hmm..

Alternativ den Provider Microsoft.ACE.OLEDB.X.0 (Bei X die installierte Version, müsste bei dir 12 sein) verwenden anstelle von Microsoft.Jet.OLEDB.4.0.
Ok, der Connection String beginnt nun mit

Code:
Provider=Microsoft.ACE.OLEDB.12.0;
Dann erscheint eine andere Fehlermeldung:

"Der Provider kann nicht gefunden werden. Möglicherweise ist der Provider nicht richtig installiert worden."
Wie geschrieben, könnte es 12 sein, jedoch auch 14 oder 15 je nach installierter Office-Version.
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.003 Beiträge
 
Delphi 2009 Professional
 
#10

AW: "Unerwarteter Fehler vom externen Datenbanktreiber (1)" beim Öffnen einer XLS-Dat

  Alt 6. Nov 2017, 10:32
Hmm..

Alternativ den Provider Microsoft.ACE.OLEDB.X.0 (Bei X die installierte Version, müsste bei dir 12 sein) verwenden anstelle von Microsoft.Jet.OLEDB.4.0.
Ok, der Connection String beginnt nun mit

Code:
Provider=Microsoft.ACE.OLEDB.12.0;
Dann erscheint eine andere Fehlermeldung:

"Der Provider kann nicht gefunden werden. Möglicherweise ist der Provider nicht richtig installiert worden."
Wie geschrieben, könnte es 12 sein, jedoch auch 14 oder 15 je nach installierter Office-Version.
Erst mal vielen Dank, wir schauen ob wir mit ACE ans Ziel kommen.
Michael Justin
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz