![]() |
AW: Externes Programm ausführen
Delphi.Narium, das hatte ich hier schon gefunden, es läuft nicht.
Auf -lang de verzichten ist auch keine Lösung, es gibt den Tag City er zeigt z.B. Düsseldorf falsch in Unicode an, doof. Ich habe es gerade ausprobiert, auf dem Rechner vor dem letzten Windows 10 Update werden Umlate z.B. Düsseldorf korrekt angezeigt. Die Windows Console ist wohl verändert worden. Was sagt ihr jetzt. Willie. |
AW: Externes Programm ausführen
Was wird denn von ExifTool auf der Kommandozeile für Düsseldorf ausgegeben? Sieht's dort richtig aus. Habe schon Kommandozeilenprogramme erlebt, die nicht den dort üblichen Zeichensatz nutzen, so dass dort Düsseldorf "falsch" ausgegeben wurde. Wenn dem so ist, scheitert auch eine Übersetzung nach Ansi, Unicode ...
Könntest Du bitte mal die Ausgabe von ExifTool auf der Kommandozeile für diesen Problemfall in eine Datei umleiten? Und dann (ohne eine von Dir vorgenommene Konvertierung) die Ausgabe, die Du in Deinem Programm erhältst? Und das dann beides hier mal anhängen, eventuell kommen wir damit ja irgendwie weiter. Wenn Du das entsprechende JPG mir dazulegen könntest, wäre nett, dann könnte man mal schauen, was da "wirklich" dinnesteht, um dem Zeichensatzwirrwarr, der momentan herrscht, mal auf die Sprünge zu kommen. |
AW: Externes Programm ausführen
Liste der Anhänge anzeigen (Anzahl: 2)
Also, wenn ich K-Dom.txt im Explorer öffne, wird Köln korrekt angezeigt. Ween ich erst Notepad öffne und dann K-Dom.txt öffne, wirden die Umlaute falsch angezeigt. Es geht um den Tag City.
Anbei Bild und Txt-Datei. P.S Stattdessen ein Bild von der schönen Nachbarstadt. |
AW: Externes Programm ausführen
Die Textdatei ist die unveränderte Ausgabe von ExifTool? Dann dürfte das nicht den "DOS-Zeichensatz" benutzen.
Hab' mir mal die aktuelle Fassung geholt. Bei mir sieht es so aus, als wären die Umlaute ... bei der Ausgabe auf der Kommandozeile UTF8. Wenn man die in eine Datei umgeleitet Ausgabe mit Totalcommander anschaut und dort als Zeichensatz UTF8 wählt, werden die Umlaute korrekt angezeigt. |
AW: Externes Programm ausführen
Zitat:
Alles weitere später ... Schönen Abend Willie. |
AW: Externes Programm ausführen
Dir ist im Öffnen-Dialog des Notpad etwas aufgefallen?
Wenn die Datei per Parameter geöffnet wird, dann läuft eine Automatik über die Datei und erkennt das UTF-8. Beim manuellen Öffnen mußt du die Standard-Codierung angeben und die steht nunmal auf ANSI, wenn du das nicht änderst. Problem: Die Datei ist zwar UTF-8, aber ohne explizite Angabe der Codierung -> ![]() Das Selbe gibt übrigens auch für LoadFromFile und den TFileStream -> Standard-Kodierung über den Encoding-Parameter. |
AW: Externes Programm ausführen
Hallo, ich habe mir Folgendes ausgedacht, es funktioniert zuerst mal. Nach den vielen Pleiten vielleicht ein Fortschritt. In meinem Archiv gefunden.
Delphi-Quellcode:
Willie.
function Ex195(const s: string): string;
var // Die deutschen Umlaute + ß werden falsch dargestellt (Unicode) po: Integer; ch: Char; // Durch Ausprobieren habe ich die Codes herausbekommen begin // erst #195 dann Zeichen ... - 16-10-2008 Result:=s; // Utf8ToAnsi() von Delphi macht genau das po:=Pos(#195,Result); while (Length(Result) > 0) and (po > 0) do begin ch:=Result[Po+1]; System.Delete(Result,po,2); case ch of #$84: ch:='Ä'; #$96: ch:='Ö'; #$9C: ch:='Ü'; #$A4: ch:='ä'; #$B6: ch:='ö'; #$BC: ch:='ü'; #$9F: ch:='ß'; else ch:='.' end; System.Insert(ch,Result,po); po:=Pos(#195,Result,Succ(po)) end end; |
AW: Externes Programm ausführen
In dem von dir angehängten Bild finde ich nicht die Informationen, die du ausgelesen hast. Kannst du mal das Original einstellen oder zumindest eins, in dem alle Informationen erhalten geblieben sind?
PS: Ich denke mal, ich habe die Lösung gefunden, und zwar ![]() Probiere mal folgende beiden Kommandos:
Delphi-Quellcode:
dann
exiftool.exe -charset IPTC=UTF8 -city=Köln -lang de C:\Temp\K-Dom.jpg
Delphi-Quellcode:
.
exiftool.exe C:\Temp\K-Dom.jpg -w! .txt
Wenn du meine Lösung mit Delphi verwendest, dann musst du
Delphi-Quellcode:
nochmal explizit angeben:
-charset IPTC=UTF8
Delphi-Quellcode:
exiftool.exe -k -a -u -g1 -lang de -charset IPTC=UTF8 C:\Temp\K-Dom.jpg
|
AW: Externes Programm ausführen
Hallo
-charset IPTC=UTF8 in den Parameter aufnehmen, hilft bei mir nicht!!!
Delphi-Quellcode:
Damit funktioniert es! Bei Delphi 2005 gab es diese Funktion noch nicht, deshalb mein Eigenkonstrukt, das ebenfalls funktioniert. Warum sollte ich das nicht nutzen. Ich habe die Exiftool-Textdatei vom JPG-Bild mit einem Hexeditor ausgewertet.
s:=UTF8ToAnsi(ETout.Text);
Wiellie. |
AW: Externes Programm ausführen
Delphi 7 hatte doch UTF8ToAnsi schon in der System.pas. Und bei Delphi 2005 soll das nicht mehr dabei sein?
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz