Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - OemToChar


Klaus Müller - So 22.07.18 13:38
Titel: OemToChar
Hallo Kollegen,

Ich habe in einem alten Programm "Delphi 7" eine Procedure:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
Procedure Ascii2Ansi(var s: string);
var
  s0: string;
begin
  Setlength(s0,length(s));
   if (length(s0)>0)
   then Begin
       OemToChar(Pchar(s),PChar(s0));
    s:=s0;
  End;
end;

Diese läst sich unter XE und höher nicht mehr übersetzen.
Fehler:
Inkompatible Typen: 'PAnsiChar' und 'PWideChar'
Wie kann ich die Typen hier Konvertieren?

Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt


Delete - So 22.07.18 14:14

- Nachträglich durch die Entwickler-Ecke gelöscht -


Klaus Müller - Di 24.07.18 18:10

Hallo Frühlingsrolle,

Danke für die Info, hilft mir aber leider nicht.
Wenn ich in die Procedure OemToCharA, oder OemToCharW einsetze gibt es auch wieder Fehler.
Das Problem ist ich komme mit einem String in dem Ascii Text drin steht, ein Import von Datanorm.
Den muss ich auf auf Windows Format umwandeln, wegen den Sonderzeichen (ü,ö,ä,ß).

Gruß
Klaus

Moderiert von user profile iconNarses: Komplettzitat des letzten Beitrags entfernt.


Delete - Mi 25.07.18 00:20

- Nachträglich durch die Entwickler-Ecke gelöscht -


Klaus Müller - Do 26.07.18 18:54

Hallo Frühlingsrolle,

Danke für die Infos, das ist jetzt ja ziemlich ausführlich.
Ich werde es noch Testen und mich dann noch mal Melden.

gruß
Klaus Müller