Doppelgeklickte Datei blockiert beschrieben zu werden



  • Guten Abend,

    ich habe eine Dateierweiterung mit meiner Anwendung verknüpft, immer wenn ich nun einen Doppelklick auf eine solche Datei ausführe, wird meine Anwendung gestartet und ich bekomme über die Kommandozeile den Namen der Datei und kann sie auslesen. Leider kann ich nicht in die Datei schreiben, was muß mein Programm nach einer solchen Doppelklick Aktion ausführen um die Datei beschreiben zu können. Wenn ich nun mein Programm normal starte und über dessen Menü die Datei zum beschreiben öffne klappt es. Weiterhin ist mir aufgefalllen, daß ich eine doppelgeklickte Datei nicht von der HDD löschen kann solange meine Proggy läuft. Wenn ich es beeende kann ich die Datei löschen. Es wird also irgendwas mit der Datei angestellt, das solange anhält wie das Program läuft das durch den Doppelklick der Datei aufgerufen wurde, was muß ich also tun um in die Datei schreiben zu können oder generell, damit die Datei gleich nach Programmstart wieder frei gegeben wird.



  • Errorcode ist : ERROR_SHARING_VIOLATION. The process cannot access the file because it is being used by another process. Also wie kann ich das beheben?





  • Bei deinem Hauptproblem kann ich dir leider auch nicht helfen...

    aber das mit dem schließen kann daran liegen das z.B. Windows Dateien nur dann löschen lässt wenn sie von keinem anderen Programm verwendet werden...spricht: Wenn du sie mit deinem Programm öffnest wird sie verwendet und Windows lässt somit nicht zu das du sie löscht...wenn du ein anderes Betriebsystem benutzt dann kann weis ich nicht wie das ist

    mfg Dimo



  • Ähm, die ganze Sache hat sich erledigt. War reine Dummheit. Bei meiner Procedur zum Lesen der Datei habe ich übersehen den Filehandle zu schließen, daher war die Datei für nachfolgende Schreiboperationen gesperrt. Oh Mann.



  • Ehrlich gesagt, war das meine erste Vermutung, nur dachte ich "So dumm, wird er nicht sein, das nicht wenigstens vorm posten überprüft zu haben".
    😃
    Aber ähnlich peinliches ist mir auch schon passiert.


Anmelden zum Antworten