Powershell Inventarisierungsscript bleibt stehen
Hi
ich habe mir ein Inverntarieiserungsscript mit powershell gebastelt, dass aus unersichtlichen Gründen manchmal stehenbleibt.
Vermute das ist bei gwmi.
man kann ja kein Timeout bei gwmi mitgeben.
Gibt es in Powershell prinzipiell die Möglichkeit ein Timeout für einen Befehl anzugeben ?
Danke
Scroller
ich habe mir ein Inverntarieiserungsscript mit powershell gebastelt, dass aus unersichtlichen Gründen manchmal stehenbleibt.
Vermute das ist bei gwmi.
man kann ja kein Timeout bei gwmi mitgeben.
Gibt es in Powershell prinzipiell die Möglichkeit ein Timeout für einen Befehl anzugeben ?
Danke
Scroller
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 157698
Url: https://administrator.de/forum/powershell-inventarisierungsscript-bleibt-stehen-157698.html
Ausgedruckt am: 22.04.2025 um 08:04 Uhr
1 Kommentar
Hi,
ich habe einen Rasenmäher verbastelt der aus unersichtlichen Gründen manchmal stehen bleibt.
Vermute das liegt am Motor.
VG
PS:
Wenn du ggf. Zeilen eingegrenzt hast wie wärs wenn du diese postest? Dann gibt es vielleicht eher Leute die dir einen Tipp geben können.
Zum Timeout:
Soweit mir bekannt haste die Möglichkeit eines Timeouts nur wenn du dich selber drum kümmerst.
Beispiel Cmdlet das ein Timeout beinhaltet:
ich habe einen Rasenmäher verbastelt der aus unersichtlichen Gründen manchmal stehen bleibt.
Vermute das liegt am Motor.
VG
PS:
Wenn du ggf. Zeilen eingegrenzt hast wie wärs wenn du diese postest? Dann gibt es vielleicht eher Leute die dir einen Tipp geben können.
Zum Timeout:
Soweit mir bekannt haste die Möglichkeit eines Timeouts nur wenn du dich selber drum kümmerst.
Beispiel Cmdlet das ein Timeout beinhaltet:
Function Get-WmiCustom([string]$computername,[string]$namespace,[string]$class,[int]$timeout=15)
{
$ConnectionOptions = new-object System.Management.ConnectionOptions
$EnumerationOptions = new-object System.Management.EnumerationOptions
$timeoutseconds = new-timespan -seconds $timeout
$EnumerationOptions.set_timeout($timeoutseconds)
$assembledpath = "\\" + $computername + "\" + $namespace
#write-host $assembledpath -foregroundcolor yellow
$Scope = new-object System.Management.ManagementScope $assembledpath, $ConnectionOptions
$Scope.Connect()
$querystring = "SELECT * FROM " + $class
#write-host $querystring
$query = new-object System.Management.ObjectQuery $querystring
$searcher = new-object System.Management.ManagementObjectSearcher
$searcher.set_options($EnumerationOptions)
$searcher.Query = $querystring
$searcher.Scope = $Scope
trap { $_ } $result = $searcher.get()
return $result
}