在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