最简单的 COM ,有些疑问,不知道如何测试

PatrickGamp PatrickGamp 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我用 VC6 的 New Project->ATL COM AppWozard 生成一个简单的
工程,加入一个接口 IHello,在 IDL 文件中有如下定义:

#define MAX_HELLO_LEN 255
typedef [string] WCHAR HELLO_BSTR[MAX_HELLO_LEN];
[
object,
uuid(5B5DBA30-B6F3-45C3-ACCE-E96A2EAAA778),
helpstring("IHello Interface"),
pointer_default(unique)
]
interface IHello : IUnknown
{
HRESULT GetHelloGreeting([out,string]HELLO_BSTR p);
};
该接口就定义了一个函数 GetHelloGreeting ,在实现类里这样实现的:
// IHello
public:
STDMETHOD(GetHelloGreeting)(HELLO_BSTR p)
{
if(p)
wcscpy(p,L"Hello World!");
return (HRESULT)NO_ERROR;
}

然后编译通过之后,我怎么测试这个 COM 呢?我生成另外一个测试用的 Project,
想用 Add class from a type library ,结果提示没有 IDispatch capable type
...全文
评论 2
收藏 已收藏
分享
返回顶部
PatrickGamp
ATL 3,248 成员 48,530 内容