Forum: Win32/Win64 API (native code)
Delphi
by Delphi.Narium,
17. Dez 2017
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...
Forum: Win32/Win64 API (native code)
Delphi
by Delphi.Narium,
17. Dez 2017
Schau bitte mal, ob Du (sinngemäß) hiermit weiter kommst, es stammt aus 'ner alten Delphi 7-Komponente zum Aufruf von Konsolenprogrammen:
function OEM2Ansi(OEMString: string): string;
begin
OEMString := OEMString + #0;
OemToChar(PChar(OEMString), @OEMString);
Delete(OEMString, Length(OEMString), 1);
Result := OEMString;
end;
Forum: Win32/Win64 API (native code)
Delphi
by Delphi.Narium,
12. Dez 2017
Ja, die Änderung von 23:21 Uhr, hab' ich irgendwie nicht mitbekommen, aber genau das meinte ich. Ist wohl schon zu spät :-(
Forum: Win32/Win64 API (native code)
Delphi
by Delphi.Narium,
12. Dez 2017
Ok. Und wenn man den Schalter weglässt, dann erfolgt die Ausgabe auf die Konsole und kann dann (ohne Datei) per Pipe ins Programm übernommen werden.
Er wäre (denk ich) mal 'nen Versuch wert, ob man so die Kommunikation zwischen Programm und ExifTool vereinfachen kann und man muss sich dann nicht darum kümmern, ob man für (nur temporär benötigte) Dateien alle erforderlichen Rechte hat.
Forum: Win32/Win64 API (native code)
Delphi
by Delphi.Narium,
12. Dez 2017
Handelt es sich bei dem Inhalt der Temp-Datei um die Konsolenausgabe des ExifTools, die per > in 'ne Datei umgeleitet wurde?
Dann mal hier im Forum nach "Process Pipe" suchen. Da müsste was brauchbares zu finden sein, per Pipe bekommt man die Konsolenausgabe des ExifTools dann direkt ins Programm geliefert.
Forum: Win32/Win64 API (native code)
Delphi
by Delphi.Narium,
12. Dez 2017
Ich würd' ja mal den Wert von ProcessExitCode abfragen. <> 0 heißt Fehler. Der entsprechende Wert gibt eventuell Auskunft darüber, was beim Exiftool schiefgegangen ist, den Fehler würd' ich dann mal beseitigen.
Eventuell mal CommandLine und Parameter ausgeben und auf der Kommandozeile nachschauen, ob dort bereits eine Fehlermeldung erscheint?
Wenn es dort bereits nicht funktioniert, den...