AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Zugriffsverletzung

Ein Thema von Privateer3000 · begonnen am 24. Jun 2002 · letzter Beitrag vom 14. Aug 2002
Antwort Antwort
Seite 5 von 5   « Erste     345   
Benutzerbild von Privateer3000
Privateer3000

Registriert seit: 10. Jun 2002
Ort: Jena
1.128 Beiträge
 
Delphi 10.4 Sydney
 
#41
  Alt 28. Jun 2002, 18:14
Hi, mach ich ja...ist nur nicht sichtbar gewesen...ausserdem hab ich nun alles schon ausprobiert.
Im übrigen gibts jetzt nur noch einen Fahler wenn die ini gelesen wird.Lass ich es beim Schreibvorgang ist alles Banane.
Peter
+++Versuch es nicht mit Gewalt + Nimm einen größeren Hammer! +++
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#42
  Alt 28. Jun 2002, 20:35
Moin Privateer,

vielleicht kannst Du Dir einen Teil des Problems erleichtern indem Du die Ini nur einmal erzeugst, und nur einmal freigibst. Dazu müsstest Du dann eine globale Variable vom Typ TIniFile anlegen, und die Datei dann, am Besten wohl in der Hauptunit, initialisieren, bzw. freigeben.
Ungefähr so:

Code:
.....

var
  INI : TIniFile;

implementation

.....


initialization
begin
  INI := TIniFile.Create(....);
end;

finalization
begin
  FreeAndNil(INI);
end;
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Marco Haffner
(Gast)

n/a Beiträge
 
#43
  Alt 28. Jun 2002, 21:14
Tritt die Schutzverletzung eigentlich nur auf nachdem die Ini-Datei mindestens einmal geschrieben wurde oder auch direkt nach einem Neustart von Windows?
Wenn der Fehler erst auftritt wenn mindestens einmal in die Ini-Datei geschrieben wurde, könnte es sein die Pufferung von Ini-Dateien der Übeltäter für die Schutzverletzung ist. Versuche mal nachdem Du die Ini-Datei geschrieben hast einen aufruf von TIniFile.Create ohne angabe eines Dateinames:

Code:
// ... hier wird die Ini-Datei geschrieben ...

with TIniFile.Create('') do
  Free;
Jedenfalls funzt das ganze unter XP. Aber hier habe ich auch keine Schutzverletzung.
Vor einigen Jahren hatte ich aber auch einmal Probleme beim zugriff auf Ini-Dateien.
  Mit Zitat antworten Zitat
Marco Haffner
(Gast)

n/a Beiträge
 
#44
  Alt 28. Jun 2002, 22:17
Oh, da hab' ich wohl etwas voreilig reagiert, habe hier noch etwas mit einem kleinen Testprogramm herumgespielt und siehe da ich erhalte eine Schutzverletzung.
Bei meinem Programm lag der Fehler das die Einstellungen im OnClick Ereignis gespeichert werden. Entferne ich das Speichern aus dem OnClick Ereignis läuft das Programm auch wieder ohne eine Fehlermeldung.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#45
  Alt 28. Jun 2002, 22:27
Moin Privateer,

ich hab' noch mal einen Blick auf Deinen Code geworfen.

Warum schreibst Du nicht einfach:

Code:
procedure TForm1.RadioGroup2Click(Sender: TObject);
begin
   WriteInteger('pause','mpause',RadioGroup2.ItemIndex);
end;
Wenn ich mein voriges Posting voraussetze, kann ich mir die Freigabe der INI sparen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Privateer3000
Privateer3000

Registriert seit: 10. Jun 2002
Ort: Jena
1.128 Beiträge
 
Delphi 10.4 Sydney
 
#46
  Alt 13. Aug 2002, 22:07
KAnn ich davon ausgehen das die Ini dann die ganze Laufzeit "offen" ist?
Wenn ja, ist es glaub ich keine gute Idee.Ich glaub eher das Marco recht hat.Es ist die Pufferung.Seltsam ist nur, das dies schon beim Start geschiet.Bis heute hab ich keine vernünftige Lösung.
Bis auf das ich die Einstellungen in der Reg speichere.Damit hatte ich noch gar kein Problem.

Grüsse
Privateer
Peter
+++Versuch es nicht mit Gewalt + Nimm einen größeren Hammer! +++
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#47
  Alt 13. Aug 2002, 22:57
Moin Privateer,

in der Hoffnung, dass ich jetzt (nach 6 Wochen ) an der richtigen Stelle anknüpfe:

Wenn Du im initialization die INI erzeugst, und in finalization wieder schliesst, ist sie die ganze Zeit offen, aber was stört Dich daran?

Was so das Speichern von Einstellungen angeht verfahre ich allerdings doch noch etwas anders. Ich benutze dazu ein Objekt, dessen Properties den Einstellungen entsprechen, und dass dann die Werte durch Get- und Setmethoden ausliest bzw. speichert. Ob sich die Daten dann in der Registry oder einer Datei (ini, oder was auch immer) befinden lässt sich dann relativ leicht ändern.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Marco Haffner
(Gast)

n/a Beiträge
 
#48
  Alt 14. Aug 2002, 00:22
Ich häng' mal ein Beispiel an (sind einentlich 3).
Bei dem ersten tritt eine Schutzverletzung auf, bei den anderen
zweien nicht.

Die Datei ist ca. 7KB groß, hast Du WinRAR 3, dann wären's nur 3KB.

Geändert von Marco Haffner ( 6. Jan 2014 um 21:28 Uhr)
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#49
  Alt 14. Aug 2002, 06:35
Zitat von Marco Haffner:
Die Datei ist ca. 7KB groß, hast Du WinRAR 3, dann wären's nur 3KB.
Ich denke das er es selbst mit einem Handy überleben würde.
  Mit Zitat antworten Zitat
Marco Haffner
(Gast)

n/a Beiträge
 
#50
  Alt 14. Aug 2002, 18:14

Und da hab' ich noch nicht mal ein Handy.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 5 von 5   « Erste     345   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz