DotNet (16.10.2016)
- 
	05.10.2016, 20:39 #1 Dateien auf Änderungen überwachen und in Ordner kopieren Dateien auf Änderungen überwachen und in Ordner kopierenIch arbeite an einem Projekt, das aus mehreren Teilen wie Plugins und Themes besteht. Das CMS verwaltet diese Dateien in verschiedenen Ordnern. Es gehört aber alles zum gleichen Projekt. Damit ich in der Versionsverwaltung nicht immer zwischen 99 Projekten wechseln muss, habe ich ein Repository erstellt, dass jeweils die Komponenten als Unterordnet verwaltet: 
 Dieser Ordner wird getrennt vom CMS gespeichert, damit ich dessen Dateien nicht in der SVN habe. Um die Software zu testen, kopiere ich sie mittels xcopy auf einen lokalen Testserver. Da ich die Verzeichnisstruktur gleich wie im CMS aufgebaut habe, genügt eine Zeile:Code:Dev-Repo -- Plugins ---- Plugin A ---- Plugin B -- Themes ---- Theme X 
 Es nervt aber, bei jeder kleinen Änderung von Hand diese Batchdatei starten zu müssen. Da es scheinbar keine Möglichkeit gibt, mit Batch auf Dateiänderungen zu reagieren, habe ich mir als Workaround eine Endlosschleife überlegt:Code:xcopy Dev-Repo C:\xampp\htdocs\project /S /d /Y 
 So habe ich meine Änderungen in Echtzeit auf dem Apache. Die Lösung funktioniert, aber gefällt mir nicht optimal. Sie erzeugt unnötig CPU Last (ca 10%) und IO. Es hält sich zwar in Grenzen, doch mir wäre eine Art EventWatcher lieber, der auf Änderungen an der Datei reagiert und sie automatisch rüberkopiert, ohne Polling. Gibt es da was in der Richtung? Ich denke mit der Powershell wäre das über .NET zu realisieren. Bei der PS stört mich, dass man die Skripte nicht per Doppelklick starten kann, sondern man immer erst die Richtlinie ändern bzw. den Inhalt in der ISE einfügen muss. Auch möchte ich nicht zu viel Zeit in dieses Problem investieren.Code::copy xcopy Dev-Repo C:\xampp\htdocs\project /S /d /Y Timeout 1 goto copy 
 Im Krieg gibt es keine Gewinner, nur Verlierer!
 
- 
	06.10.2016, 09:11 #2 AW: Dateien auf Änderungen überwachen und in Ordner kopieren AW: Dateien auf Änderungen überwachen und in Ordner kopierenDu kannst den Ordner mit dem FSRM (FileServerRessourcenManager) überwachen. Mit FSRM kann jegliche Veränderung überwacht werden und dann eine entsprechende Aktion durchgeführt werden. Hierfür ist aber ein Serverbetriebssystem erforderlich. Was aber auch machbar ist wäre eine Synchronisation von 2 Verzeichnissen mit Hilfe von FreeFileSync. Wenn du die Dateien im Ursprungsordner änderst werden die Änderungen automatisch im Zielordner angepasst. Das entsprechende Programm über eine Aufgabe in der Aufgabensteuerung im Intervall (alle 30 Sec oder alle 2 Min) starten. Noch besser ist PureSync, der reagiert auf Änderungen an den Ursprungsdateien und führt die Synchronisation direkt durch.  Auch in einem Berg voller Scherben, kann man ein Muster erkennen. Auch in einem Berg voller Scherben, kann man ein Muster erkennen.
 
- 
	The Following User Says Thank You to ewasp For This Useful Post:
 
- 
	06.10.2016, 09:47 #3 AW: Dateien auf Änderungen überwachen und in Ordner kopieren AW: Dateien auf Änderungen überwachen und in Ordner kopieren.NET bietet ein Steuerelement namens "FileSystemWatcher", mit dem du das Quellverzeichnis überwachen kannst. Beim Aufruf vom OnChanged-Event könntest du dann die Dateien ins Zielverzeichnis verschieben. 
 
 FileSystemWatcher watcher; 
 
 private void watch()
 {
 watcher = new FileSystemWatcher();
 watcher.Path = path;
 watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite
 | NotifyFilters.FileName | NotifyFilters.DirectoryName;
 watcher.Filter = "*.*";
 watcher.Changed += new FileSystemEventHandler(OnChanged);
 watcher.EnableRaisingEvents = true;
 }
 
 private void OnChanged(object source, FileSystemEventArgs e)
 {
 //Copies file to another directory.
 }Mfg
 
 .\
 
- 
	The Following User Says Thank You to Negok For This Useful Post:DotNet (16.10.2016) 
 
Ähnliche Themen
- 
  Ordner/Dateien Duplikate finden und löschenVon Quasar im Forum WindowsAntworten: 7Letzter Beitrag: 28.02.2015, 16:45
- 
  Win7 Dateien ohne Eigenschaft kopieren?Von Gast78236 im Forum WindowsAntworten: 3Letzter Beitrag: 11.07.2014, 09:35
- 
  VB.Net Datei in ausgewählten Ordner kopierenVon Mobilitas im Forum .NetAntworten: 1Letzter Beitrag: 12.02.2012, 14:59
- 
  Ordner mit .class Dateien zu einer .jarVon DreisT im Forum JavaAntworten: 3Letzter Beitrag: 22.11.2011, 19:45
- 
  Dateien im /var/ Ordner öffnenVon Comu im Forum SkriptsprachenAntworten: 6Letzter Beitrag: 27.06.2011, 17:54
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.
 
									 
														 
														 
				
				 
			 
					
					
					
						 Zitieren
  Zitieren 
			 Zitat von DotNet
 Zitat von DotNet
					