AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Probleme mit PChar

Ein Thema von Walter Landwehr · begonnen am 29. Apr 2014 · letzter Beitrag vom 29. Apr 2014
 
Walter Landwehr

Registriert seit: 28. Mär 2006
Ort: 32816 Schieder-Schwalenberg
405 Beiträge
 
Delphi 10.4 Sydney
 
#1

Probleme mit PChar

  Alt 29. Apr 2014, 09:47
Delphi-Version: XE2
Hallo,

ich habe vor Jahren in D6 oder D2007 folgende Function erstellt.

Delphi-Quellcode:
function Base16ToStr(Value: PChar; Len: Integer): String;
var
   D: PByte;
   V: Byte;
   S: PChar;
begin
   Result := '';
   if Value = nil then Exit;
   if Len < 0 then Len := StrLen(Value);
   SetLength(Result, (Len +1) div 2);
   D := PByte(Result);
   S := PChar(Value);
   while Len > 0 do
   begin
      V := Byte(UpCase(S^));
      Inc(S);
      if V > Byte('9') then D^ := V - Byte('A') + 10
         else D^ := V - Byte('0');
      V := Byte(UpCase(S^));
      Inc(S);
      D^ := D^ shl 4;
      if V > Byte('9') then D^ := D^ or (V - Byte('A') + 10)
         else D^ := D^ or (V - Byte('0'));
      Dec(Len, 2);
      Inc(D);
   end;
   SetLength(Result, PChar(D) - PChar(Result));
end;
Nun habe ich versucht Pchar durch PWideChar oder PAnsiChar zu ersetzen. Leider bringt mir die Function eine völlig anderes Ergebnis als unter D2007.

Was muß ich verändern um wieder das Ergebnis wie unter D2007 zu erreichen?

Hat jemand einen Tipp.

Vielen Dank im voraus.
Walter Landwehr
Mfg

Walter
  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:57 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-2025 by Thomas Breitkreuz