【问题标题】:Powershell ' add-type -Language JScript 'Powershell 'add-type -Language JScript'
【发布时间】:2020-07-27 16:15:31
【问题描述】:
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 is not supported。无论如何,为什么不使用 $env:computername 而不是使用 WScript 呢?

标签: powershell jscript


【解决方案1】:

【讨论】:

  • 我看到了那个例子,但是如何正确地从问题帖子中编写代码?
  • 这是一种不同的语言。 en.wikipedia.org/wiki/JScript_.NET 您可以使用 cscript 在外部运行 jscript。或者使用 new-object 访问像 wscript.network 这样的 com 对象。
  • 我不懂那种语言。正如其他人所说,您可以轻松使用$env:computername
猜你喜欢
  • 1970-01-01
  • 2011-04-15
  • 1970-01-01
  • 2014-12-19
  • 2020-11-10
  • 2023-03-27
  • 2014-01-21
  • 2011-08-17
  • 2017-01-05
相关资源
最近更新 更多