Gibt es eine einfache Möglichkeit, eine Datei von einem freigegebenen Netzlaufwerk zu löschen, das von anderen Benutzern verwendet wird?

421
KjetilNordin

An meinem Arbeitsplatz habe ich die Wartungs- und Entwicklungsaufgaben einer C # Windows-Desktopanwendung übernommen. Die Anwendung wird in eine EXE-Datei kompiliert, auf einem freigegebenen Netzlaufwerk abgelegt und von unserer Intranetseite aus verlinkt.

Bei der Bereitstellung neuer Versionen der Anwendung wurde standardmäßig die alte Datei gelöscht und einfach durch die neue ersetzt. Die Anzahl der Benutzer nimmt jedoch zu und es wird immer schwieriger, eine Tageszeit zu finden, zu der die Anwendung von keinem Benutzer geöffnet ist.

Ich habe ein wenig nachgeforscht, wie das Löschen erzwungen werden kann, auch wenn die Datei verwendet wird. Alle Lösungen beziehen sich jedoch auf ein einziges Computer- / Einzelbenutzer-Setup.

Lösungen, die einen Neustart mit Linux-CD oder was auch immer beinhalten, werden für mich nicht funktionieren, da es einfach einfacher wäre, neue Versionen des Systems mit Versionsnummern im Dateinamen hochzuladen und den Linkpfad jedes Mal zu ändern.

(Wir erwägen auch, die gesamte Anwendung von einer Desktop-App in eine Web-App zu ändern.)

Gibt es einfache Möglichkeiten, das Löschen einer freigegebenen Netzlaufwerkdatei zu erzwingen, die von einem oder mehreren Benutzern verwendet wird?

0

1 Antwort auf die Frage

0
Sylordis

Dies wurde bei der Suche bei Google gefunden: http://www.sitepoint.com/web-foundations/force-windows-delete-file/

nativer Befehl unter Windows:

del /f file 

oder ein anderes Programm

Eine andere Lösung könnte darin bestehen, alle Verbindungen der Benutzer zu dem Computer zu schließen, auf dem sich die ausführbare Datei befindet, und dann die Datei zu ändern. Die Datei sollte nicht mehr verwendet werden.

Übersetzt aus meinen Spracheinstellungen: "Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird". Dies funktioniert nicht. KjetilNordin vor 8 Jahren 0
Ich habe meine Antwort aktualisiert. Haben Sie die letzte Lösung ausprobiert? Sylordis vor 8 Jahren 0
Das ist leider keine Option. Das Laufwerk enthält eine große Anzahl von Dateien, die vom Unternehmen gemeinsam genutzt werden, und ich bin nicht der Administrator davon. KjetilNordin vor 8 Jahren 0
Folgendes gefunden: https://technet.microsoft.com/de-de/library/cc783450%28v=ws.10%29.aspx Bei jedem Zugriff auf eine gemeinsam genutzte Ressource sollte ein Netzwerkdeskriptor erstellt werden, der technisch geschlossen werden kann. Hier wird eine weitere Diskussion zum scheinbar gleichen Thema geführt: https://social.technet.microsoft.com/Forums/windowsserver/en-US/13779c78-0c73-4477-8014-f2eb10f3f10f/how-to-see- Benutzer-Dateizugriffsliste von freigegebenen Ordnern und Dateien auf dem Server-2008-r2? forum = winservergen Sylordis vor 8 Jahren 0
Das sieht vielversprechend aus, aber ich muss ein wenig in die Tiefe gehen, bevor ich es verstehe :). Vielen Dank KjetilNordin vor 8 Jahren 0