AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Werkzeuge ExpressQuantumGrid TcxIniFileWriter: Ini-Datei wird "von anderem Prozess verwendet"
Thema durchsuchen
Ansicht
Themen-Optionen

ExpressQuantumGrid TcxIniFileWriter: Ini-Datei wird "von anderem Prozess verwendet"

Ein Thema von mjustin · begonnen am 26. Jun 2018 · letzter Beitrag vom 26. Jun 2018
Antwort Antwort
mjustin

Registriert seit: 14. Apr 2008
3.004 Beiträge
 
Delphi 2009 Professional
 
#1

ExpressQuantumGrid TcxIniFileWriter: Ini-Datei wird "von anderem Prozess verwendet"

  Alt 26. Jun 2018, 07:46
Guten Morgen

In einer Delphi 2009 Anwendung verwenden wir StoreToIniFile um die benutzerbezogenen Einstellungen eines QuantumGrids zu speichern.

In dieser Anwendung wird an zwei Stellen auf die gleiche Datei zugegriffen:

* beim Öffnen des Hauptformulars werden die Einstellungen für alle Grids die auf dem Hauptformular sind gelesen
* beim Öffnen eines weitren, modalen Bearbeitungsformulars werden dessen Grid-Einstellungen gelesen und beim Schliessen wieder gespeichert

Beim beim Speichern der Grid-Einstellungen des modalen Formulars kommt es oft (aber nicht immer) zu einer Exception die besagt die INI-Datei wäre bereits geöffnet.

Frage: wenn die Fehlermeldung lautet "Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird.", ist damit tatsächlich ein anderer Prozess gemeint, der die Datei verwendet? Also definitiv nicht der Prozess der die Datei zu öffnen versucht?

Wenn es definitiv ein anderer Prozess ist, dann wäre es nur erklärbar mit einer gleichzeitig laufenden weiteren Instanz der Anwendung (die INI-Datei wird nur von dieser einen Anwendung erzeugt), denkbar z.B. wenn die Anwendung "hängt" und der Benutzer sie erneut startet.
Doch die Zugriffe auf die INI-Datei sind zu kurz um dann den Fehler mit einer zweiten Instanz erklären zu können.
Zweite Möglichkeit: ein Virenscanner oder ähnliches greift auf die Datei zu. Hat damit jemand schon ähnliches erlebt oder ist das nur Spekulation?

Code:
exception class  : EFCreateError
exception message : Cannot create file "\\server\dfs\Home\Username\Documents\i4Settings\Abfertigung41.1.ini". Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird.

main thread ($10fc):
004822d1 +0b9 Ladelist411.exe Classes                  TFileStream.Create
004821f4 +020 Ladelist411.exe Classes                  TFileStream.Create
004809fc +018 Ladelist411.exe Classes                  TStrings.SaveToFile
0048f45d +039 Ladelist411.exe IniFiles                 TMemIniFile.UpdateFile
006e94ad +005 Ladelist411.exe cxStorage                TcxIniFileWriter.EndWrite
006e710b +05b Ladelist411.exe cxStorage                TcxStorage.StoreWithExistingWriter
006e7087 +037 Ladelist411.exe cxStorage                TcxStorage.StoreTo
006e712a +00e Ladelist411.exe cxStorage                TcxStorage.StoreToIni
0079ebc9 +06d Ladelist411.exe cxGridCustomView         TcxCustomGridView.StoreToIniFile
Michael Justin
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.685 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: ExpressQuantumGrid TcxIniFileWriter: Ini-Datei wird "von anderem Prozess verwende

  Alt 26. Jun 2018, 07:48
*entfernt* sorry.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.735 Beiträge
 
Delphi 2007 Professional
 
#3

AW: ExpressQuantumGrid TcxIniFileWriter: Ini-Datei wird "von anderem Prozess verwende

  Alt 26. Jun 2018, 14:44
Bei uns wurden ähnliche Probleme mit Ini-Dateien schon von Virenscannern verursacht (vorzugsweise seit Windows 10 WIMRE). Umkonfigurieren derselbigen hat die Probleme beseitigt.
Uli Gerhardt
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.004 Beiträge
 
Delphi 2009 Professional
 
#4

AW: ExpressQuantumGrid TcxIniFileWriter: Ini-Datei wird "von anderem Prozess verwende

  Alt 26. Jun 2018, 15:15
Bei uns wurden ähnliche Probleme mit Ini-Dateien schon von Virenscannern verursacht (vorzugsweise seit Windows 10 WIMRE). Umkonfigurieren derselbigen hat die Probleme beseitigt.
Vielen Dank für die Bestätigung meiner "wilden Spekulation"!

Dann wäre es tatsächlich genau so wie die Fehlermeldung besagt; es ist ein anderer Prozess, der die Datei verwendet, nicht die Delphi Anwendung, die das TFileStream.Create versucht.
Michael Justin
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: ExpressQuantumGrid TcxIniFileWriter: Ini-Datei wird "von anderem Prozess verwende

  Alt 26. Jun 2018, 15:34
Hallo,
da es eine Netzwerk-Freigabe ist, könnte man auch auf dem Server nachsehen,
welches Programm dieser "andere" Prozess ist.

Das klappt natürlich nur, wenn der andere Prozess sich etwas Zeit lässt,
wenn das zu schnell geht, dann nicht.

Ich würde da wieder pragmatisch vorgehen.
Delphi-Quellcode:
for i:= 1 to 10 do
begin
  try
    Speichern;
    break;
  except
    ;
  end;
end;
Wenn es keine überlebenswichtigen Einträge sind.


Dann würde ich noch die Schreibzugriffe optimieren
(nur schreiben, wenn sich wirklich was geändert hat)
Heiko

Geändert von hoika (26. Jun 2018 um 15:41 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


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 20:49 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