Hallo,
eigentlich sollte mein Projekt eine Kleinigkeit sein, aber machmal kommt es anders...
Also:
Gegeben ist eine dBase-Datei aus einem Fremdsystem mit Kundendaten. Mein Programm soll auf diese
DB zugreifen, eine Kundenadresse aufgrund der Kundennummer heraussuchen und diese auf ein Dokument drucken. Die
DB liegt übrigens im Netzwerk.
Die
BDE sollte nach möglichkeit nicht benötigt werden.
Ich greife also per
ADO auf die Dbase-Datei zu und kann problemlos den gewünschten Datensatz lesen und damit auch ausdrucken.
Allerdings verzweifele ich langsam an folgender Kleinigkeit:
Entwickelt wurde die App unter D2007 auf einem Vista-Rechner. Hier klappt das Programm hervorragend, inklusive dem Ausdruck auf dem Drucker, also genau so wie es sein sollte.
Beim Kunden soll die App allerdings auf einem XP-Rechner laufen. Teste ich nun mein Programm unter XP, dann läuft es ganz normal, allerdings werden hier die deutschen Umlaute nicht korrekt angezeigt. (Aus dem ü wird z.B. eine hochgestellte 3)
Seit Tagen suche ich nun eine Lösung dafür. Vermutlich liegt es an den Datenbanktreibern, die unter Vista eine andere Version haben, als unter XP.
Trotzdem muss es doch eine Möglichkeit geben, einen anderen Zeichensatz anzugeben.
In der dBase-Datei finde ich als Sprachtreiber: dBase ENU cp437
Weiß jemand, wie ich der ADOConnection den richtigen Sprachtreiber beigringen kann?
Ich habe schon mit "Locale Identifier" im ConnectionString rumprobiert, hat aber nichts gebracht. Auch andere Tipps, die ich im Internet gefunden habe, haben keine Änderung bewirkt.
Ich habe es mit dem "Microsoft
OLE DB Provider for
ODBC Drivers" als auch mit dem "Microsoft Jet 4.0
OLE DB Provider" probiert. Hat alles nichts gebracht.
Wie gesagt, langsam verzweifele ich. Ich habe jetzt schon mehr Zeit in das Problem gesteckt, als ich für die eigentliche Entwicklung des Programm benötigt habe.
Also: Für Vorschläge bin ich sehr dankbar!