Kopieren wird verweigert

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von artnat.

    Kopieren wird verweigert

    Mein Datensicherungsprogramm, das bisher gut lief, läuft nicht mehr. Mir ist rätselhaft, warum nicht.
    In dem Programm werden Daten auf eine andere Platte kopiert. Jetzt werden aber nur noch die Verzeichnisse, nicht aber die enthaltenen Daten kopiert.

    Ich bin in den Code gegangen um zu sehen, was da passiert. Da wird der Zugriff verweigert, weil ein anderer Prozess die Daten benötigt. Um zu sehen, welcher Prozess das ist, habe ich das Programm schrittweise ausgeführt und immer parallel der Windows-Explorer offen gehabt, um darin die zu kopierenden Files zu testen. Explorer kopiert die Datei, solange das Programm das der Datei übergeordnete Verzeichnis nicht anspricht, dann aber und bevor im Programm das Kopieren der Datei kommt und bevor die Fehlermeldung kommt, wird das Kopieren im Explorer ebenfalls verweigert, weil es von dem Prozess vshost.exe benötigt wird, also von dem VB-Programm selbst. Das Programm sperrt sich also selbst.

    Ich kann also überhaupt keine Dateien mehr mit dem Programm kopieren. Was ist da los.

    artnat

    artnat schrieb:

    Was ist da los.
    Ich denke mal, Du hast die Daten noch iwie offen.
    Des weiteren nehme ich mal an, dass Du Bilder aus Vorlagen liest oder generierst und diese speicherst.
    Wenn Du Bilder in eine Bitmap-Instanz einliest, musst Du dies über einen Stream tun, dann sind die Bild-Instanzen entkoppelt:
    docs.microsoft.com/de-de/dotne…o.filestream?view=net-5.0
    docs.microsoft.com/de-de/dotne…e.fromstream?view=net-5.0
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!