E2176 Type illégal dans la section OLE Automation : '%s' (Delphi)
Remonter à Messages d'erreur et d'avertissement (Delphi)
<nomtype> n'est pas un type autorisé dans une section OLE automation. Seul un petit sous-ensemble des types du langage Delphi sont autorisés dans les sections automation.
program Produce; type Base = class function GetC : Char; procedure SetC(c : Char); automated property Ch : Char read GetC write SetC dispid 151; end; procedure Base.SetC(c : Char); begin end; function Base.GetC : Char; begin GetC := '!'; end; begin end.
Puisque le type caractère n'est pas autorisé dans la section 'automated', la déclaration de 'Ch' produira une erreur lors de la compilation.
program Solve; type Base = class function GetC : String; procedure SetC(c : String); automated property Ch : String read GetC write SetC dispid 151; end; procedure Base.SetC(c : String); begin end; function Base.GetC : String; begin GetC := '!'; end; begin end.
Il y a deux façons de résoudre ce problème. La première est de déplacer la déclaration incriminée hors de la section 'automated'. La deuxième est de changer le type incriminé en un type autorisé dans les sections 'automated'.