在C++程序中,我试图#导入.NET进程外的TLB服务器。.NET进程外#服务器的问题
我得到这样的错误:
Z:\ server.tlh(111):错误C2146:语法错误:缺少 ';'标识符 '之前的GetType'
Z:\ server.tlh(111):错误C2501: '_TypePtr':缺少存储类或类型说明
Z:\ server.tli(74):错误C2143:语法错误:缺少';'前 '标记:: ID'
Z:\ server.tli(74):错误C2433: '_TypePtr':对数据声明不允许 '内联'
Z:\ server.tli(74):错误C2501: '_TypePtr':缺少存储类或类型说明
Z:\ server.tli(74):致命错误C1004:意外的文件结束发现
的TLH看起来像:
_bstr_t GetToString();
VARIANT_BOOL Equals (const _variant_t & obj);
long GetHashCode();
_TypePtr GetType();
long Open();
我并不是真的对像GetType(),Equals()等基对象的.NET对象方法感兴趣,但GetType()似乎是造成问题。
一些谷歌的研究表明我可以#import mscorlib.tlb
(或把它放在路径中),但我无法得到的编译。
任何提示?
TLBEXP没有帮助我,raw_interfaces_only没有。为什么代码示例包含named_guids而不是raw_interfaces_only? – 2010-11-08 11:47:52