请帮助在 C# 应用程序中使用 ATL COM DLL 方法
在 ATLLib.idl
...
interface IATLLibMain : IUnknown{
[helpstring("method hello")] HRESULT hello([out,retval] BSTR* res);
};
...
在 ATLLibMain.cpp(ATLSimpleObject
类)中
STDMETHODIMP CATLLibMain::hello(BSTR* res)
{
*res = SysAllocString(L"Hello world!!!");
return S_OK;
}
我已经编译并注册了 COM。在 C# 项目中,添加了对 ATLLib.dll 的引用并尝试这样的调用方法
IATLLibMain atllib = new ATLLibMainClass();
Console.WriteLine(atllib.hello());
VS给出错误
System.Runtime.InteropServices.COMException
ATLLibTest.exe中出现未处理的类型异常。由于以下错误 80040154,检索具有 CLSID {...} 的组件的 COM 类工厂失败。
在线的
IATLLibMain atllib = new ATLLibMainClass();
请显示在 C# 应用程序中使用 ATL DLL 的任何项目示例或帮助修复此错误?谢谢...