-
C#生成COM组件:
VS2017 ——> 新建 ——> 项目 ——> Visual C# ——> 类库(.NET Framework)
*注意:如果选择 "类库(.NET Standard)" 后面可能无法选择 "为COM互操作注册",同时记住选择的.NET Framework的版本
示例:新建的工程名为 ComExample,重命名Class1.cs为ComTest.cs,添加 System.Runtime.InteropServices
1.添加外部调用接口,C++只能调用COM中的接口,无法直接调用类和函数
[Guid("7B25B7CE-2D31-47BE-9066-9E0B1FDA1F89")]
public interface ComTestInterface
{
[DispId(1)]
int comTestMul(int a, int b);
}
2.添加事件接口
[Guid("80C1DA98-0D57-42B3-B3F6-A496FB684B1C"), InterfaceType(ComInterfaceType.InterfaceIsIDispatch)]
public interface ComTestEvents
{
}
3.添加具体的类
[Guid("3AFE4870-5760-4144-8339-C8676D97174E"),
ClassInterface(ClassInterfaceType.None),
ComSourceInterf