![]() |
Zugriffsverletzung TStringList
Hallo!
Ich war mir nicht sicher in welches SubForum ich das hier posten sollte, also wenns flasch ist bitte nicht schimpfen und verschieben^^ Ich hab folgendes Problem bei diesem Code:
Delphi-Quellcode:
Ich hab in das Verzeichnis von demprojekt eine Pfad.ini datei gelegt, die aus diesen 2 Zeilen besteht:
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IniFiles, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; k: tstringlist; ini: Tinifile; pfad: string; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin ini.readsection('Pfad',k); Pfad := k[1]; end; procedure TForm1.FormCreate(Sender: TObject); begin ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+'Pfad.ini'); end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin ini.Free; end; end. [Pfad] c:\xyz\qod\irgendwas.exe=1 Ich bekomme keinen Fehler wenn ich das ganze kompiliere, aber wenn ich dann auf den Button klicke, der das ganze Auslösen soll, bekomme ich eine Zugriffsverletzung-Fehlermeldung... Woran könnte das liegen?^^ Danke schonmal im Voraus! |
Re: Zugriffsverletzung TStringList
Vermutlich, weil du k nie erzeugst.
|
Re: Zugriffsverletzung TStringList
Uh das ging aber schnell^^
ach natüüüürlich :D^^ ichs chau mal obs so geht^^ danke^^ ;D oh man im nachhinein ist die Antwort sooo logisch xD EDIT: danke schonmal! ich hab es jetzt so abgeändert:
Delphi-Quellcode:
und jetzt bekomme ich beim kompilieren einen Zugriffsverletzungsfehler^^ woran könnte das jetzt liegen?^^
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, IniFiles, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; k: tstringlist; ini: Tinifile; pfad: string; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin ini.readsection('Pfad',k); Pfad := k[1]; end; procedure TForm1.FormCreate(Sender: TObject); begin ini:=TIniFile.create(ExtractFilePath(ParamStr(0))+'Pfad.ini'); k.Create; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin ini.Free; k.Free; end; end. |
Re: Zugriffsverletzung TStringList
Schau dir mal den Create Aufruf vom TIniFile an und vergleiche es mit deinem Create Aufruf von deiner TStringList.
|
Re: Zugriffsverletzung TStringList
:wall: Achso^^
VIELEN DANK AN EUCH BEIDE :D:D:D |
Re: Zugriffsverletzung TStringList
Und wozu die ganzen globalen Variablen?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz