Powershell ' add-type -Language JScript '

Powershell ' add-type -Language JScript '

Add-Type @'
class Network {
    var WsNetwork,str;
    function getPcName(){
        WsNetwork = WScript.CreateObject("WScript.Network");
        str="PC name: "+WsNetwork.ComputerName;
        return str;
    }
}
'@ -Language JScript

$PcName = [Network]::new()
$PcName.getPcName()

如何正确添加此 JScript 代码? 那不是编译

UPD--------------------

这个有效:

Add-Type @'
class Network {
    var WsNetwork;
    
    function getPcName(){
        WsNetwork= new ActiveXObject("WScript.Network"); 
        return WsNetwork;
    } 
}
'@ -Language JScript

$PcName = [Network]::new()
$PcName.getPcName().ComputerName

但是为什么 return WsNetwork.ComputerName; 不起作用?

支持的是 Jscript.net,以及 VB.net 和 F#.net。 5.1 文档有一个例子。 https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/add-type?view=powershell-5.1#example-6--add-a-class-with-jscript-net