E2130 Impossible de lire une propriété en écriture seule (Delphi)
Remonter à Messages d'erreur et d'avertissement (Delphi) - Index
La propriété dont vous essayez de lire la valeur n'a pas spécifié de clause 'read', elle devient par conséquent une propriété en écriture seule.
program Produce; type Base = class s: String; property Password : String write s; end; var c: Base; s: String; begin s := c.Password; end.
Puisque c.Password n'a pas spécifié de clause read, il est impossible de lire sa valeur.
program Solve; type Base = class s: String; property Password : String read s write s; end; var c: Base; s: String; begin s := c.Password; end.
Une solution simple à ce problème, si vous avez le code source, serait d'ajouter une clause read à la propriété write-only. Mais, ajouter une clause read n'est pas toujours souhaitable et peut provoquer des déficiences dans un système de sécurité. Prenez, par exemple, une propriété write-only appelée 'Password', comme ici : vous ne voudrez certainement pas permettre occasionnellement à des programmes d'utiliser cette classe pour lire le mot de passe stocké. Si une propriété a été créée en écriture seule, il existe probablement une bonne raison pour cela et vous devez réexaminer pourquoi vous voulez lire cette propriété.