Bonjour à tous,
J'ai un petit souci de conversion que je n'arrive pas à comprendre.
Avec cette ligne je me colle une belle erreur si je remplace par cela, ça fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Car := Pied.CaractereDuChampLibre1[1]; xStr := StringofChar(Car,Pied.TailleDuChampLibre1); StrPlCopy(FinEcr.__ChampLibre1,xStr,Length(xStr));
Concretement je pars d'une structure
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 // Car := Pied.CaractereDuChampLibre1[1]; xStr := StringofChar('x',Pied.TailleDuChampLibre1); StrPlCopy(FinEcr.__ChampLibre1,xStr,Length(xStr));
Et de ce record :
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 type PFileStrucFactorPIED = ^TFileStrucFactorPIED; TFileStrucFactorPIED = packed record private __CodeEnregistrement : array[0..2] of AnsiChar; // 3 private __CodeVendeur : array[0..5] of AnsiChar; // 6 private __NomDuVendeur : array[0..39] of AnsiChar; // 40 private __DateCreationfichier : array[0..7] of AnsiChar; // 8 private __NbreDeFacture : array[0..3] of AnsiChar; // 4 private __MtTotalFactures : array[0..14] of AnsiChar; // 15 private __NbreAvoir : array[0..3] of AnsiChar; // 4 private __MtTotalAvoir : array[0..14] of AnsiChar; // 15 private __ChampLibre1 : array[0..37] of AnsiChar; // 38 private __NbrGarantie : array[0..3] of AnsiChar; // 4 private __MtTotalGaranties : array[0..14] of AnsiChar; // 15 private __NbrLCR_PRE : array[0..3] of AnsiChar; // 4 private __MtTotalLCR_PRE : array[0..14] of AnsiChar; // 15 private __ChampLibre2 : array[0..179] of AnsiChar; // 180 private __Devise : array[0..2] of AnsiChar; // 3 private __VersionRIV : array[0..5] of AnsiChar; // 6 private __FinLigne : array[0..1] of AnsiChar; // 2 end; Const SizeOfFileStrucFactorPIED = SizeOf(TFileStrucFactorPIED);
Taille du champ 1 ou 2 sont donnée
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Type TPied = Packed record CodeEnregistrement : String; CaractereDuChampLibre1: String; TailleDuChampLibre1 : Integer; CaractereDuChampLibre2: String; TailleDuChampLibre2 : Integer; end;
Caractères champs 1 et 2 sont récupérer par lecture INI
Précision Car est de type Char
Où est mon erreur ?.je comprends pas...
Merci.
Partager