【发布时间】:2010-09-05 23:27:39
【问题描述】:
在 C++ 程序中,我正在尝试 #import .NET 进程外服务器的 TLB。
我收到如下错误:
z:\server.tlh(111):错误 C2146:语法错误:缺少 ';'在标识符“GetType”之前
z:\server.tlh(111):错误 C2501:'_TypePtr':缺少存储类或类型说明符
z:\server.tli(74):错误 C2143:语法错误:缺少 ';'在'tag::id'之前
z:\server.tli(74) : 错误 C2433: '_TypePtr' : 'inline' 不允许在数据声明中使用
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();
我对拥有基本对象 .NET 对象方法(如 GetType()、Equals() 等)并不真正感兴趣。但 GetType() 似乎会导致问题。
一些谷歌研究表明我可以#import mscorlib.tlb(或将其放在路径中),但我也无法编译。
有什么建议吗?
【问题讨论】: