bonjour a tous ,
attention je suis débutant sans expérience , ne vous offusquer pas par mes réponses
logiciel Delphi 7

sauriez vous me dire comment je peut retourné une valeur hexadécimal par poids
exemple edit7.text' 0D8000' ; en edit8.text 00800D;
voici le code que j'ai tenter d'utilisé mais je retourne mes valeur
0D8000 en 0008D0 ?
ai fait de nombreuse recherche sans succès, il est vrai que je ne sais pas trop dans quel direction chercher
je fait donc appel a votre savoir
cordialement



voici ce que j'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
//-------------------------------------------------------------------------------------pour la fonction je n'ai pas trouver juste une procédure 
procedure ReverseBytes(Source, Dest: Pointer; Size: Integer);
var
  BA: TByteArray;
  s: string;
begin
// Length(BA, 4);         // ici message d'erreur
//  BA[0] := 65;          //
//  BA[1] := $41;        //
//  BA[2] := 1000001; // ceux la ne fonctionne pas
// BA[0] := ord('A');   //
 
  s := ByteArrayToHexString(BA);                    // 41414141    //
  s := ByteArrayToHexString(BA ,' ');                // 41 41 41 41// je devrai les espacé mais cela ne marche pas et peut être pas besoin nom plus ?
  Dest := PByte( NativeUInt(Dest) + Size - 1); 
  while (Size > 0) do
  begin
    PByte(Dest)^ := PByte(Source)^;    //
    Inc(PByte(Source));                         // ici je retourne bien mais tout les chiffre et lettre hexadécimal 
    Dec(PByte(Dest));                           //   0D8000 en 0008D0 ? au lieu de """ 00 80 0d "" ou """ 00800D """
    Dec(Size);                                      //
  end;
end;
//--------------------------------------------------------------------------------------- ici un speedbutton de test
procedure TForm1.SpeedButton1Click(Sender: TObject);
var
  s: AnsiString;
  P: Pointer;
begin
  s := #0 + edit7.Text;
  GetMem(P, Length(s));
  ReverseBytes(Pointer(s),P, Length(s));            // je pense qu'il me manque le contrôle des poids par 2 caractère 
 
  ShowMessage(PAnsiChar(p));   // esrevertset
  FreeMem(P);
end;