PowerShell,从其他PS脚本调用函数并返回一个Object

LaP*_*Phi 2 powershell pipeline object

如何从其他PowerShell脚本调用函数并返回该对象?

主脚本:

# Run function script
. C:\MySystem\Functions.ps1

RunIE

$ie.Navigate("http://www.stackoverflow.com")  
# The Object $ie is not existing
Run Code Online (Sandbox Code Playgroud)

功能脚本:

function RunIE($ie) 
{
$ie = New-Object -ComObject InternetExplorer.Application
}
Run Code Online (Sandbox Code Playgroud)

Kei*_*ill 5

只需从函数"输出"对象,如下所示:

function RunIE
{ 
    $ie = New-Object -ComObject InternetExplorer.Application 
    Write-Output $ie
} 
Run Code Online (Sandbox Code Playgroud)

或更具有惯用力

function RunIE 
{ 
    New-Object -ComObject InternetExplorer.Application 
} 
Run Code Online (Sandbox Code Playgroud)

然后将输出分配给主脚本中的变量:

$ie = RunIE
Run Code Online (Sandbox Code Playgroud)

  • 我的意思是"你也可以添加注释`.RunIE`是可能的.我在谈论原始示例,其中函数看起来像`函数RunIE {$ ie = ..}`. (2认同)