COM获取INetFWMgr错误

时间:2012-08-30 09:58:22

标签: c++ com windows-firewall

所以问题是当我尝试获取该接口的指针时,它会告诉我error LNK2001: unresolved external symbol _CLSID_NetFwMgr

我查看了标题,并以这种方式声明了CLSID _ NetFwMgr

EXTERN_C const CLSID CLSID_NetFwMgr;

#ifdef __cplusplus

class DECLSPEC_UUID("304CE942-6E39-40D8-943A-B913C40C9CD4")
NetFwMgr;
#endif

所以我想我应该在我的C ++库中添加一个* .lib文件,其中包含一个像

这样的字段
DEFINE_GUID( CLSID_ActiveDesktop, 0x75048700L, 0xEF1F, 0x11D0, 0x98, 0x88, 0x00, 0x60, 0x97, 0xDE, 0xAC, 0xF9);

Ps:我使用VC++ 6作为编译器。

1 个答案:

答案 0 :(得分:0)

不完全是。它的定义如下:

extern "C" const CLSID CLSID_NetFwMgr = {0x304CE942,0x6E39,0x40D8,{0x94,0x3A,0xB9,0x13,0xC4,0x0C,0x9C,0xD4}};

如果您想在标题中定义此__declspec(selectany)而不是以cpp为单位,则可以在const之后添加CLSID