Das assembler-Schlüsselwort ist zwar seit Jahrzehnten nicht mehr nötig, aber egal,
und sonst
funktioniert dieser Code eigentlich immernoch (Delphi 12).
Du weißt, dass man Fehlermeldungen auch kopieren kann,
wenn man selbst nicht in der Lage ist den Fehler zu benennen?
Strg+C
Was heißt fehlt?
Die Funktion selbst ist weg, also im Turbopower, nicht im Delphi, oder wie?
Du hast sie ja noch, also warum nicht einfach kopieren und in eigene
Unit?
Seit vielen Jahren gibt es die
Unit AnsiStrings, bzw. inzwischen System.AnsiStrings, in welcher sich seit 2009 die
ANSI-Versionen vieler Funktionen aus z.B. SysUtils verstecken.
Durch die Variable wird der Code etwas aufgebläht, aber Hauptsache es geht.
Delphi-Quellcode:
// würde auch mit Win64 funktionieren
function LoCase(C: AnsiChar): AnsiChar;
var
P:
array[0..1]
of AnsiChar;
begin
P[0] := C;
// PWideChar(@P)^ := WideChar(C {and #$00FF});
P[1] := #0;
Result := CharLowerA(@P)[0];
// Result := Winapi.Windows.CharLowerA(@P)[0];
end;
oder
Delphi-Quellcode:
function LoCase(C: AnsiChar): AnsiChar;
begin
Result := System.AnsiStrings.LowerCase(C)[1];
end;
Ein Therapeut entspricht 1024 Gigapeut.