verwendetes Datenbanksystem: DBase IV Files
Hallo,
ich habe eine Anwendung geschrieben, die DBF-Files für eine andere Anwendung (UMN Mapserver) erzeugt. Dafür verwende ich den OleDbProvider.
Die Anwendung habe ich ursprünglich unter Windows XP erstellt, da lief alles gut.
Jetzt habe ich einen Windows 7 Entwicklungsrechner (64 bit). Wenn ich die Anwendung darauf teste werden die Sonderzeichen im Mapserver nicht mehr richtig dargestellt.
Ich habe am Source nichts geändert, ich habe das Projekt lediglich in meienm VS geöffnet und das Debuggen gestartet.
Wenn ich die DBF-Datei nachbearbeite und die Datei mit einem Editor von OEM auf ANSI konvertiere gehts auch wieder. Da das Programm aber jede Nacht automatisch läuft kann das so nicht bleiben.
Weiss jemand von euch, wie ich dem OleDbProvider sagen kann, das er wieder ANSI-konforme Files schreibt?
Gruß Dominik
Hallo,
die behandlung OEM oder ANSI müsste sich eigentlich über die Registry abändern lassen:
Der Registry-Schlüssel \HKEY_LOCAL_MACHINE\Software\Microsoft\Jet\4.0\Engines\Xbase\DataCodePage
ist verantwortlich für die Behandlung der Umlaute:
Wert "ANSI" => Windows-Zeichentabelle
Wert "OEM" => DOS-Zeichentabelle
Mfg,
Daniel
Hi,
danke ich werds mal probieren und dann hier über den Erfolg berichten.
also das mit dem Registry-Schlüssel hat sehr gut funktioniert.
Jetzt bleibt noch die Frage: Kann ich die DataCodePage auf im Programmcode setzen, damit ich nicht auf jedem neuen Rechner den Registry-Schlüssel ändern muss??