【发布时间】:2015-07-17 18:51:58
【问题描述】:
我创建了一个简单的 C# dll 并使用 RegAsm.exe 注册它。一个非常简单的方法是在没有参数的情况下调用并返回一个数字,这里是一个简化版本。
namespace AVL_test {
interface ITestClass {
int GetNumber();
}
[ComVisible(true)]
public class TestClass: ITestClass {
public TestClass() { }
public int GetNumber() {
return 10;
}
}
}
我需要从 Powershell 调用该方法,所以我添加了类型
Add-Type -Path "C:\myPath\AVL_test.dll"
它似乎已加载,因为如果我 [AVL_test.TestClass] 我得到这个输出
IsPublic IsSerial 名称 BaseType
-------- -------- ---- --------
True False TestClass System.Object
但如果我尝试通过键入[AVL_test.TestClass]::GetNumber() 来调用GetNumber(),我会收到此错误
方法调用失败,因为 [AVL_test.TestClass] 不包含名为“GetNumber”的方法。
我做错了吗?
【问题讨论】:
标签: c# powershell dll