Delphi-PRAXiS
Seite 2 von 5     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Zugriffsverletzung (https://www.delphipraxis.net/243-zugriffsverletzung.html)

Daniel B 24. Jun 2002 21:18

Hi,

Das with IniSet do
begin nach dem Try. Aber das Create auf jedenfall davor.

Privateer3000 24. Jun 2002 21:34

Alles schon ausprobiert...
Auffallend kommt jetzt hinzu, dass er sich die Einstellungen merkt,das heisst die Radios.Nur die Checkbox merkt er sich nicht.Wenn ich Prog starte die Radios verändere und die Checkbox auch...merkt er sich nur die Radios.
Ausserdem kommt jetzt zusätzlich eine Accessviolation Fehlermeldung an Adresse sowieso!

Ich fahr gleich in den Urlaub..wenn's so weitergeht :lol:

RomanK 24. Jun 2002 21:40

Kannst du die "Merken"-Speicher-Prozedure mal posten!!!

Privateer3000 25. Jun 2002 06:52

Merk-Proze für die Checkbox

Code:
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
IniSet:=TIniFile.Create('.\sndset.ini');
try
   if Checkbox1.Checked then
   IniSet.WriteBool('Musik','zustand',True)
   else
   IniSet.WriteBool('Musik','zustand',False);
   finally
   IniSet.Free;
   end;
end;
hmm

Tpercon 25. Jun 2002 06:58

Ist was kürzer:
Code:
IniSet:=TIniFile.Create('.\sndset.ini');
try
IniSet.WriteBool('Musik','zustand',Checkbox1.Checked)
finally
IniSet.Free;
end;

MrSpock 25. Jun 2002 07:09

Hallo Privateer3000,

eine Zeile ist mir auch nicht ganz klar:

Zitat:

check(passw = passwrd);
Wird passwrd bereits vorher schon ein Wert zugewiesen oder ist es eine Konstante?

Ist es so gewollt, dass der Dateinname der Ini-Datei beim Einlesen und in der neu geposteten CheckBoxClick Methode nicht übereeinstimmen oder hast du den Namen geändert?

Außerdem solltest du den Pfad angeben z.B über:
Code:
IniSet:=TIniFile.Create(ExtractFilePath(Application.ExeName)+'sndset.ini');

Privateer3000 25. Jun 2002 07:47

:o)
 
stimmt :shock:

Privateer3000 25. Jun 2002 20:23

Hi Spocki,

passw ist eine const..passt scho

Erklär mir bitte mal diese näher:
Code:
IniSet:=TIniFile.Create(ExtractFilePath(Application.ExeName)+'sndset.ini');
Extractfilepath ist klar aber applic...aaahhhhh alles klar :PLatzhalter für den Anwendungsname,ok ok
mmhhh..und das hilft?
Ich probiers

Danke Spocki

PS: Ja, habe den ini-Name geändert

Daniel B 25. Jun 2002 20:27

Zitat:

Zitat von Privateer3000
Extractfilepath ist klar aber applic...aaahhhhh alles klar :PLatzhalter für den Anwendungsname,ok ok
mmhhh..und das hilft?

Damit wird nicht nur die ini im gleichen Verzeichnis wie die exe angelegt, sondern bekommt auch den namen der exe. Somit heisst deine ini: MeinProg.ini und ist im gleichen Ordner wie die exe. Soweit Klar?

Nachtrag: das sndset.ini fällt dann natürlich weg. Du schreibst dann nur noch .ini rein.

MrSpock 25. Jun 2002 20:30

Hallo Privateer3000,

Application.Exename enthält den Programmnamen einschließlich kompletten Pfad und der .EXE Endung. Du kannst deshalb ExtractFilePath auf diesen Dateinamen anwenden und erhälst den Pfad einschließlich dem abschließenden Backslash (\).

Ich nenne meine Ini-Dateien immer genauso, wie das Programm und ersetze so nur die Endung .EXE durch .INI, dazu gibt es noch eine Funktion, die das für mich macht:

Code:
    Ini := TIniFile.Create(ChangeFileExt(Application.ExeName), '.INI');


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:03 Uhr.
Seite 2 von 5     12 34     Letzte »    

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