Bonjour à tous,
Voilà j'ai ce petit message d'erreur sous Delphi 7 au moment de la verification du projet puis de la compilation.
C'est dans le code de la librairie variants.pas présente dans le dossier LIB.[Erreur fatale] Variants.pas(1024): Le programme ou l'unité 'Variants' s'utilise récursivement lui-même
Cela intervient suite à l'installation D2K9 et D2K10.
J'ai tester sur mon projet mais aussi sur un projet vierge.
Du coup j'ai désinstallé les deux derniers Delphi (versions d'essais). puis remis la librairie venant de mon autre poste.
Rien à faire.
A la vérification voici le code incriminé :
A la compilation :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 function VarArrayOf(const Values: array of Variant): Variant; var I: Integer; begin Result := VarArrayCreate([0, High(Values)], varVariant); for I := 0 to High(Values) do Result[I] := Values[I]; end;
Quelqu'un aurait-il une petite idée ?
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 procedure VarCopyByRef(var Dest: TVarData; const Source: TVarData); begin case Source.VType and not varByRef of varSmallint: Variant(Dest) := PSmallint(Source.VPointer)^; varInteger: Variant(Dest) := PInteger(Source.VPointer)^; varSingle: Variant(Dest) := PSingle(Source.VPointer)^; varDouble: Variant(Dest) := PDouble(Source.VPointer)^; varCurrency: Variant(Dest) := PCurrency(Source.VPointer)^; varDate: Variant(Dest) := PDate(Source.VPointer)^; varOleStr: Variant(Dest) := VarCopyNoIndOleStr(Source); varBoolean: Variant(Dest) := PWordBool(Source.VPointer)^; varShortInt: Variant(Dest) := PShortInt(Source.VPointer)^; varByte: Variant(Dest) := PByte(Source.VPointer)^; varWord: Variant(Dest) := PWord(Source.VPointer)^; varLongWord: Variant(Dest) := PLongWord(Source.VPointer)^; varInt64: Variant(Dest) := PInt64(Source.VPointer)^; varVariant: _VarCopyNoInd(Dest, PVarData(Source.VPointer)^); varDispatch, varUnknown: VarCopyNoIndViaOS(Dest, Source); else if Source.VType and varArray <> 0 then VarArrayCopyForEach(Dest, Source, VarCopyNoIndCopyProc) else VarCopyNoIndDeep(Dest, Source); end end;
Dois-je réinstaller D7 ?
merci par avance de vos réponses avisées
Partager