我有以下powershell脚本,它加载一个包含ScriptResult类的自定义.NET DLL,它是从VB.NET应用程序实习的。
Add-Type -Path $myLibPath
$result = New-Object TheLibrary.ScriptResult
在VB.NET应用程序中,我想获取结果对象,但以下似乎无法正常工作
'get the script result
Dim result As ScriptResult = run.SessionStateProxy.GetVariable("result")
我做得不好?
答案 0 :(得分:2)
a)首先使用
将变量定义到运行时 run.SessionStateProxy.SetVariable("result", null)
b)也许有助于将$ result标记为全局(未经验证):
$global:result = New-Object TheLibrary.ScriptResult
答案 1 :(得分:1)
GetVariable
会返回PSVariable
个实例。变量的值在.Value
属性中。您可能需要将其DirectCast
投射到ScriptResult
类型,因为Value
会返回Object
。