scroller
Goto Top

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

Content-Key: 157698

Url: https://administrator.de/contentid/157698

Printed on: April 25, 2024 at 15:04 o'clock

Member: H41mSh1C0R
H41mSh1C0R Dec 29, 2010 at 09:54:59 (UTC)
Goto Top
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:

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 
}