Einzelnen Beitrag anzeigen

Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

Re: Unicode-Beschreibung eines Zeichen auslesen

  Alt 29. Jul 2006, 19:21
Zitat von stz:
so, also jetzt nochmal richtig:
Delphi-Quellcode:
function GetUName(cCodwW: WideChar; pBufferW: PWideChar): integer;
  stdcall; external 'getuname.dll';

function GetUnicodeName(code: WideChar): String;
var
  buffer: PWideChar;
begin
  GetMem(buffer, 256 * SizeOf(WideChar));
  try
    GetUName(code, buffer);
    Result := buffer;
  finally
    FreeMem(buffer, sizeof(buffer^));
  end;
end;
Anbei ein Bild von der Anwendung (ist bzw. wird ein Teil von MEdit).

Gruß
Malte
Nicht ganz ...
Zitat von Borland-Hilfe:
...
Der optionale Parameter Size enthält die Größe der freizugebenden dynamischen Variable (in Byte). Wenn er angegeben wird, muss er der Byte-Anzahl bei der Zuweisung mit GetMem entsprechen.
Lass den zweiten Parameter bei FreeMem einfach weg. Da wir nicht wissen, ob und wie wir den Rückgabewert von GetUName auswerten können, sollten man den Puffer vielleicht auch initialisieren.

Mein Vorschlag:
Delphi-Quellcode:
function GetUName(cCodwW: WideChar; pBufferW: PWideChar): integer;
  stdcall; external 'getuname.dll';

function GetUnicodeName(code: WideChar): string;
var
  Buffer: PWideChar;
begin
  GetMem(Buffer, 256 * SizeOf(WideChar));
  try
    Buffer^ := #0;
    GetUName(code, Buffer);
    Result := Buffer;
  finally
    FreeMem(Buffer);
  end;
end;
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat