I' m trying to run a script (which takes about 5 minutes) in a powershell job.
PS1 works but not in the job.
Error I get: You cannot call a method on a null-valued expression..Exception.Message at line 6508
Please advise.
Code: Select all
Logging-Output "Setting path to script"
$CMOverviewScript = "$ScriptDirectory\CM.ps1"
Logging-Output "Done"
#if (! $(test-path $CMOverviewScript)){throw "Cannot reach $CMOverviewScript"}
<# THIS WORKS FINE
Logging-Output 'Getting CM Details'
. $CMOverviewScript #Generates $CMApplicationsOverview as global
$ProcessResults = $CMApplicationsOverview
Logging-Output 'Done'
#>
#region jobtracker
#$progressbaroverlay1.Visible = $true
Logging-Output -text "Getting CM details as job"
Add-JobTracker -Name 'CM' `
-JobScript {
. $args[0] #Generates $CMApplicationsOverview as global
$CMApplicationsOverview
}`
-CompletedScript {Param ($Job)
$ProcessResults = Receive-Job -Job $Job
#$ProcessesOutput = $ProcessResults | Out-String
#$progressbaroverlay1.Visible = $false
}`
-UpdateScript { Param ($Job)
}`
-ArgumentList $CMOverviewScript
Logging-Output -text "Done."
#endregion
$ProcessResults | Out-GridView -Title "SCCM Overview"