Seite 2 von 5
Re: robocopy email benachrichtigung
Verfasst: 24. Apr 2014, 23:16
von Nobby1805
und dann ist auch noch ein Fehler in der Prozedur
danach funktioniert es bei mir
Re: robocopy email benachrichtigung
Verfasst: 25. Apr 2014, 02:26
von Coolzero
Also das Skript Ansich funktioniert bei mir, hatte das vorher schon mal eingestellt, aber der Fehler in der Prozedur ist mir nicht Aufgefallen, den werde ich nachher mal korrigieren und dann mal sehen , danke für den tip
Re: robocopy email benachrichtigung
Verfasst: 26. Apr 2014, 14:17
von Coolzero
Auch nach der änderung
bekomme ich keine Mail.....

Re: robocopy email benachrichtigung
Verfasst: 26. Apr 2014, 14:17
von Coolzero
Auch nach der änderung
bekomme ich keine Mail.....

Re: robocopy email benachrichtigung
Verfasst: 26. Apr 2014, 14:36
von Nobby1805
Dann kommentier doch mal den Aufruf von Robocopy aus und führ das Script Schritt für Schritt im Debug-Modus aus ... wie gesagt, bei mir funktioniert es (gmx)
Re: robocopy email benachrichtigung
Verfasst: 26. Apr 2014, 14:48
von Coolzero
Nobby1805 hat geschrieben:Dann kommentier doch mal den Aufruf von Robocopy aus und führ das Script Schritt für Schritt im Debug-Modus aus ... wie gesagt, bei mir funktioniert es (gmx)
Wie mache ich das genau?
Ich hab gleichen Einstellungen jetzt mal in den "Warenungsbenarchitungen per Email" in der Meldungsanzeige vom WHS eingegen und damit funktioniert es problemlos
Re: robocopy email benachrichtigung
Verfasst: 26. Apr 2014, 15:45
von Nobby1805
rechte Mausklick auf die .ps1-Datei > Bearbeiten
vor die Zeile "cmd /k Robocopy ..." ein # zum Auskommentieren
auf die erste Zeile die mit rotem Text anfängt klicken ($ SourceFolder ...) und mit F9 einen Haltepunkt setzen
mit F5 das Skript starten
mit F11 im Einzelschritt das Skript ausführen und beobachten was passiert
Re: robocopy email benachrichtigung
Verfasst: 26. Apr 2014, 17:01
von Coolzero
Also ein Problem liegt dann wohl am WHS 2011, denn wenn ich dort mit rechts auf dir ps1 klicke gibts kein bearbeiten.
Hab das Skript jetzt mal auf meinem Win7 rechner debugt, ab hier
Code: Alles auswählen
$Message = New-Object Net.Mail.MailMessage($EmailFrom, $EmailTo, $EmailSubject, $EmailBody)
gehen die Meldungen los:
Code: Alles auswählen
PS E:\> E:\Sicherung_D2.ps1
[DBG]>>> Treffer Zeilenhaltepunkt bei "E:\Sicherung_D2.ps1:12"
[DBG]>>> Angehalten bei: if ($_.FullyQualifiedErrorId -ne "NativeCommandErrorMessage" -and $ErrorView -ne "CategoryView") {
[DBG]>>> Angehalten bei: $myinv = $_.InvocationInfo
[DBG]>>> Angehalten bei: switch -regex ( & { Set-StrictMode -Version 1; $myinv.MyCommand.CommandType } )
[DBG]>>> Angehalten bei: switch -regex ( & { Set-StrictMode -Version 1; $myinv.MyCommand.CommandType } )
[DBG]>>> Angehalten bei: switch -regex ( & { Set-StrictMode -Version 1; $myinv.MyCommand.CommandType } )
[DBG]>>> Angehalten bei: if ( & { Set-StrictMode -Version 1; $myinv.MyCommand.Name } )
[DBG]>>> Angehalten bei: if ( & { Set-StrictMode -Version 1; $myinv.MyCommand.Name } )
[DBG]>>> Angehalten bei: if ( & { Set-StrictMode -Version 1; $myinv.MyCommand.Name } )
[DBG]>>> Angehalten bei: $myinv.MyCommand.Name + " : "; break;
[DBG]>>> Angehalten bei: $myinv.MyCommand.Name + " : "; break;
[DBG]>>> Angehalten bei: if ($_.FullyQualifiedErrorId -eq "NativeCommandErrorMessage") {
[DBG]>>> Angehalten bei: if ($_.InvocationInfo) {
[DBG]>>> Angehalten bei: $posmsg = $_.InvocationInfo.PositionMessage
[DBG]>>> Angehalten bei: if ( & { Set-StrictMode -Version 1; $_.PSMessageDetails } ) {
[DBG]>>> Angehalten bei: if ( & { Set-StrictMode -Version 1; $_.PSMessageDetails } ) {
[DBG]>>> Angehalten bei: if ( & { Set-StrictMode -Version 1; $_.PSMessageDetails } ) {
[DBG]>>> Angehalten bei: & { Set-StrictMode -Version 1; $this.Exception.InnerException.PSMessageDetails }
[DBG]>>> Angehalten bei: & { Set-StrictMode -Version 1; $this.Exception.InnerException.PSMessageDetails }
[DBG]>>> Angehalten bei: & { Set-StrictMode -Version 1; $this.Exception.InnerException.PSMessageDetails }
[DBG]>>> Angehalten bei: $indent = 4
[DBG]>>> Angehalten bei: $width = $host.UI.RawUI.BufferSize.Width - $indent - 2
[DBG]>>> Angehalten bei: $indentString = "+ CategoryInfo : " + $_.CategoryInfo
[DBG]>>> Angehalten bei: $posmsg += "`n"
[DBG]>>> Angehalten bei: foreach($line in @($indentString -split "(.{$width})")) { if($line) { $posmsg += (" " * $indent + $line) } }
[DBG]>>> Angehalten bei: foreach($line in @($indentString -split "(.{$width})")) { if($line) { $posmsg += (" " * $indent + $line) } }
[DBG]>>> Angehalten bei: foreach($line in @($indentString -split "(.{$width})")) { if($line) { $posmsg += (" " * $indent + $line) } }
[DBG]>>> Angehalten bei: foreach($line in @($indentString -split "(.{$width})")) { if($line) { $posmsg += (" " * $indent + $line) } }
[DBG]>>> Angehalten bei: $indentString = "+ FullyQualifiedErrorId : " + $_.FullyQualifiedErrorId
[DBG]>>> Angehalten bei: $posmsg += "`n"
[DBG]>>> Angehalten bei: foreach($line in @($indentString -split "(.{$width})")) { if($line) { $posmsg += (" " * $indent + $line) } }
[DBG]>>> Angehalten bei: if ($ErrorView -eq "CategoryView") {
[DBG]>>> Angehalten bei: elseif (! $_.ErrorDetails -or ! $_.ErrorDetails.Message) {
[DBG]>>> Angehalten bei: $_.Exception.Message + $posmsg + "`n "
New-Object : Ausnahme beim Aufrufen von ".ctor" mit 2 Argument(en): "Ein Teil des Pfades "C:\Logs\Backup.log2014-04-26.log" konnte nicht gefunden werden."
Bei E:\Sicherung_D2.ps1:30 Zeichen:25
+ $Attachment = New-Object <<<< Net.Mail.Attachment($Logfile, 'text/plain')
+ CategoryInfo : InvalidOperation: (:) [New-Object], MethodInvocationException
+ FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand
[DBG]>>> Angehalten bei: if ($_.FullyQualifiedErrorId -ne "NativeCommandErrorMessage" -and $ErrorView -ne "CategoryView") {
[DBG]>>> Angehalten bei: $myinv = $_.InvocationInfo
[DBG]>>> Angehalten bei: switch -regex ( & { Set-StrictMode -Version 1; $myinv.MyCommand.CommandType } )
[DBG]>>> Angehalten bei: switch -regex ( & { Set-StrictMode -Version 1; $myinv.MyCommand.CommandType } )
[DBG]>>> Angehalten bei: switch -regex ( & { Set-StrictMode -Version 1; $myinv.MyCommand.CommandType } )
[DBG]>>> Angehalten bei: if ( & { Set-StrictMode -Version 1; $myinv.MyCommand.Name } )
[DBG]>>> Angehalten bei: if ( & { Set-StrictMode -Version 1; $myinv.MyCommand.Name } )
[DBG]>>> Angehalten bei: if ( & { Set-StrictMode -Version 1; $myinv.MyCommand.Name } )
[DBG]>>> Angehalten bei: if ($_.FullyQualifiedErrorId -eq "NativeCommandErrorMessage") {
Ausnahme beim Aufrufen von "Add" mit 1 Argument(en): "Der Wert darf nicht NULL sein.
Parametername: item"
Bei E:\Sicherung_D2.ps1:31 Zeichen:25
+ $Message.Attachments.Add <<<< ($Attachment)
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : DotNetMethodException
Ok, liegt nicht am Skript sondern am WHS2011, wenn ich dasSkript untern Win7 ausführe bekomme ich die Email, was kann das sein?
Re: robocopy email benachrichtigung
Verfasst: 26. Apr 2014, 18:13
von Nobby1805
ruf mal (auf W7 und WHS) in einem DOS-Fenster PowerShell auf und gib dann das Kommando $PSVersionTable
bei mir in beiden Fällen
Code: Alles auswählen
Name Value
---- -----
CLRVersion 2.0.50727.5477
BuildVersion 6.1.7601.17514
PSVersion 2.0
WSManStackVersion 2.0
PSCompatibleVersions {1.0, 2.0}
SerializationVersion 1.1.0.1
PSRemotingProtocolVersion 2.1
scheint ein Grundsatzproblem von Serverversionen zu sein ... schau mal hier
http://technet.microsoft.com/de-de/libr ... 19514.aspx
Re: robocopy email benachrichtigung
Verfasst: 26. Apr 2014, 18:35
von Coolzero
Win7:
Code: Alles auswählen
Name Value
---- -----
CLRVersion 2.0.50727.5477
BuildVersion 6.1.7601.17514
PSVersion 2.0
WSManStackVersion 2.0
PSCompatibleVersions {1.0, 2.0}
SerializationVersion 1.1.0.1
PSRemotingProtocolVersion 2.1
WHS2011
Code: Alles auswählen
Name Value
---- -----
CLRVersion 2.0.50727.5477
BuildVersion 6.1.7601.17514
PSVersion 2.0
WSManStackVersion 2.0
PSCompatibleVersions {1.0, 2.0}
SerializationVersion 1.1.0.1
PSRemotingProtocolVersion 2.1
Bei mir auch, ich hab, jetzt mal unter meinem WHS das fehlende das Feature
Windows PowerShell Integrated Scripting Environment
, das über den Server-Manger nachinstalliert.
Aber leider gehts trotzdem nicht, unter meinem Win7 Rechner kommt die Email, unterm WHS nicht
Seltsam ist das ich beim debuggen unter dem WHS keinen Fehler bekomme, aber unterm Win7 schon.....
Hoffe es hat noch einer eine idee
Danke für die Hilfe
Re: robocopy email benachrichtigung
Verfasst: 27. Apr 2014, 13:09
von Coolzero
Habs jetzt nochmal komplett debugt, dann bekomme ich diese Meldungen:
Code: Alles auswählen
PS C:\Windows\system32> C:\Logs\Sicherung_D2.ps1
2014/04/27 13:07:39 FEHLER 32 (0x00000020) Protokolldatei wird geöffnet C:\Logs\Backup.log2014-04-27.log
Der Prozess kann nicht auf die Datei zugreifen, da sie von einem anderen Prozess verwendet wird.
-------------------------------------------------------------------------------
ROBOCOPY :: Robustes Dateikopieren für Windows
-------------------------------------------------------------------------------
Gestartet: Sun Apr 27 13:07:39 2014
Quelle - D:\
Ziel - \\SERVER-BACKUP\Server-Backup\Sicherung_D\
Dateien :
Ausführbare Dateien : pagefile.sys
NTUSER.Dat
Ausf. Verzeichnisse : System Volume Information
Optionen: /FFT /S /E /COPY:DAT /PURGE /MIR /A-:SH /R:1000000 /W:30
------------------------------------------------------------------------------
FEHLER: Ungültiger Parameter #11 : "/LOG:C:\Logs\Backup.log2014-04-27.log"
Einfache Syntax :: ROBOCOPY Quelle Ziel /MIR
Quelle :: Quellverzeichnis (Laufwerk:\Pfad oder \\Server\Freigabe\Pfad)
Ziel :: Zielverzeichnis (Laufwerk:\Pfad oder \\Server\Freigabe\Pfad)
/MIR :: Spiegelt eine vollständige Verzeichnisstruktur.
Weitere Informationen erhalten Sie über den Befehl "ROBOCOPY /?"
**** Der Befehl "/MIR" kann Dateien sowohl kopieren als auch LÖSCHEN.
Vieleicht hat da noch einer eine idee?
Danke
Re: robocopy email benachrichtigung
Verfasst: 27. Apr 2014, 15:03
von Nobby1805
wo genau kommt denn die Meldung wenn du mit Einzelschritt durchgehst ...
Ich bin mir jetzt nicht sicher ob das CMD /K nicht einen Parallelprozess für das Robocopy erzeugt aber nicht wartet ... ruf doch einfach direkt robocopy auf
Re: robocopy email benachrichtigung
Verfasst: 29. Apr 2014, 10:33
von Coolzero
genau das wars, nachdem ich jetzt das
entfernt hab, bekomme ich jetzt auch die Email.
Nur jetzt schließt sich nach abschluss das Fenster automatisch, das würde ich aber gerne offen lassen bis ich es manuell schliesse, geht das irgendwie?
Danke
Re: robocopy email benachrichtigung
Verfasst: 29. Apr 2014, 13:48
von Nobby1805
und wie startest du das Script ?
Re: robocopy email benachrichtigung
Verfasst: 29. Apr 2014, 15:41
von Coolzero
Über die Aufgabenplanung