开发者

Powershell - return custom object to C# host

I have the following powershell script which loads a custom开发者_如何学JAVA .NET DLL this contains the ScriptResult class, it is intern executed from a VB.NET app.

Add-Type -Path $myLibPath

$result = New-Object TheLibrary.ScriptResult

In the VB.NET app I want to get the result object but the following doesnt seem to work

'get the script result
Dim result As ScriptResult = run.SessionStateProxy.GetVariable("result")

What am I not doing correctly?


a) define the variable to the runtime first with

run.SessionStateProxy.SetVariable("result", null)

b) maybe could help to mark $result as global (not verified):

$global:result = New-Object TheLibrary.ScriptResult


GetVariable returns a PSVariable instance. The variable's value is in the .Value property. You'll probably need to cast it (DirectCast) to your ScriptResult type as Value returns an Object.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜