小编nhr*_*bin的帖子

为什么PowerShell使用双冒号(::)来调用.NET类的静态方法?

是否有任何特定的理由使用c ++样式的双冒号'::'?为什么不使用像c#这样的简单点?

powershell

11
推荐指数
1
解决办法
1万
查看次数

无法加载文件或程序集

在我的power shell脚本中,我正在加载一个自定义程序集,然后通过实例化该程序集的类New-Object.

Assembly.LoadFile()执行成功,但New-Object语句给出了波纹管异常.

New-Object : Exception calling ".ctor" with "1" argument(s): "Could not load file or assembly 'MyAssembly, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of i
ts dependencies. The system cannot find the file specified."
Run Code Online (Sandbox Code Playgroud)

脚本:

[System.Reflection.Assembly]::LoadFile("MyAssembly.dll")
$a=New-Object MyAssembly.MyClass -ArgumentList "arg1"
Run Code Online (Sandbox Code Playgroud)

此自定义程序集仅引用以下程序集

System
System.Core
System.Runtime.Serialization
System.Xml.Linq
System.Data
System.Xml
Run Code Online (Sandbox Code Playgroud)

我尝试显式加载System.Runtime.Serialization dll,如下所示.但同样的例外

[System.Reflection.Assembly]::Load("System.Runtime.Serialization, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089")
Run Code Online (Sandbox Code Playgroud)

任何的想法?

powershell powershell-2.0

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

powershell ×2

powershell-2.0 ×1