Einzelnen Beitrag anzeigen

Benutzerbild von milos
milos

Registriert seit: 14. Jul 2008
Ort: Bern (CH)
509 Beiträge
 
Delphi 11 Alexandria
 
#1

Access Violation beim hinzufügen einer neuen TDirecotory

  Alt 11. Okt 2013, 02:31
Hallo,
ich habe hier ein object, welches ich erstellt habe um unsere Geräte und dessen Zubehör aufzulisten.
Ich habe eine CSV Liste vorliegen die ich Parsen will und jedes Gerät in einer Liste voller TDevice's stecke.

Ich habe das Problem das wenn ich eine neue Directory in einer List adden will, kommt beim debuggen bei der markierter stelle im code ein Access Violation. Ich habe leider keine ahnung wieso dieser fehler entsteht, für mich sieht alles richtig aus :/

Das lustige ist, dass dieser Fehler erst beim 2. aufruf passiert.

Delphi-Quellcode:
unit Device;
 
interface
  uses
    Sysutils, System.Generics.Collections;
 
  type
  TDevices = class
    DeviceName : string;
  private
    { Private-Deklarationen }
  public
    AList: TList<TDictionary<string, string>>;
    procedure SetDeviceName(Device : string);
    procedure AddAccessories(Name : string; Description: string; Price: string; OType:string);
  end;
var
  Name: string;
 
implementation
 
{ Devices }
 
procedure TDevices.AddAccessories(Name, Description, Price, OType: string);
begin
  AList.Add(TDictionary<string, string>.Create()); // <------- Hier wird beim 2. Aufruf eine Access Violation gemeldet.
  AList[AList.Count-1].Add('name', Name);
  AList[AList.Count-1].Add('description', Description);
  AList[AList.Count-1].Add('price', Price);
  AList[AList.Count-1].Add('type', OType);
end;
 
procedure TDevices.SetDeviceName(Device: string);
begin
  Name:=Device;
  AList := TList<TDictionary<string, string>>.Create();
 
end;
 
end.
Ich hoffe ihr könnt mir helfen

MfG
Milos
  Mit Zitat antworten Zitat