Nicht starten?

Deutscher Support für die Software AllSync
Post Reply
zernetsch
Posts: 53
Joined: 25 Feb 2011, 15:28

Nicht starten?

Post by zernetsch »

Hallo an Alle,

gibt es eine Möglichkeit AllSync oder einfach einzelne Jobs NICHT zu starten, wenn ein bestimmtes, anderes Programm läuft?

Es soll z. B. nicht syncronisiert werden, wenn schon mein Desktopbackup-Programm läuft (da beide VSS verwenden, kommt es zu Problemen).

Weiß jemand eine Lösung?

Vielen Dank bereits im Voraus.

Gruß
Volker
Administrator
Site Admin
Posts: 4123
Joined: 04 Oct 2004, 18:38
Location: Thailand
Contact:

Re: Nicht starten?

Post by Administrator »

Sie könnten z.b. mit einem VB-Skript überprüfen, ob der Task des anderen Programmes läuft und damit das Profil abbrechen.

Beispielskript:

Code: Select all

ProcessName = "notepad.exe" 

Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")

Set colProc = objWMIService.ExecQuery ("Select * from Win32_Process Where Name = '" & ProcessName & "'")

If colProc.Count > 0 Then
    Err.Raise -99
End if
Processname = Name des Tasks, welcher geprüft werden soll. Siehe Windows Taskmanager.

Der spezielle Fehlercode -99 in Verbindung mit der Option "Profil abbrechen..." erzeugt dann keine Fehlermeldung im Protokoll.
zernetsch
Posts: 53
Joined: 25 Feb 2011, 15:28

Post by zernetsch »

Super, das werde ich probieren.

Vielen Dank.

Gruß
Volker
zernetsch
Posts: 53
Joined: 25 Feb 2011, 15:28

Post by zernetsch »

Hm, leider funktioniert das nicht.
Es heißt zwar im Protokoll: 15.05.2011 10:42:10 Extern\VBSkript\Start: Skript 'C:\ProgramData\AllSync\Scripts\Nicht bei Homeserverbackup starten.vbs' wird gestartet...

Aber der Kopiervorgang läuft weiter.

Hier nochmal mein Script:
ProcessName = "BackupEngine.exe"

Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")

Set colProc = objWMIService.ExecQuery ("Select * from Win32_Process Where Name = '" & ProcessName & "'")

If colProc.Count > 0 Then
Err.Raise -99
End if

ProcessName = "BackupEngine.exe"

Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")

Set colProc = objWMIService.ExecQuery ("Select * from Win32_Process Where Name = '" & ProcessName & "'")

If colProc.Count > 0 Then
Err.Raise -99
End if

Mache ich noch etwas verkehrt?

Danke
Volker
Administrator
Site Admin
Posts: 4123
Joined: 04 Oct 2004, 18:38
Location: Thailand
Contact:

Post by Administrator »

Wenn das Skript den von Ihnen angegebenen Prozessnamen NICHT findet, dann wird kein Fehler -99 ausgelöst und auch kein Profil abgebrochen.

Setzen Sie testweise die Variable ProcessName auf "notepad.exe" und starten Sie dann NotePad und dann Ihr Profil. Dies sollte funktionieren. Und nicht vergessen die Option "Profil abbrechen..." zu aktivieren.
zernetsch
Posts: 53
Joined: 25 Feb 2011, 15:28

Post by zernetsch »

Wie immer haben Sie recht. Es funktioniert. Man sollte natürlich die Option "Abbrechen" auch einschalten!

Vielen Dank nochmals.

Gruß
Volker
Post Reply