2013-05-27 52 views
4

在C(而不是 C++)源代碼中,Microsoft C++編譯器的#import指令的替代方法是什麼?C中的#import指令

是否有任何工具可以從給定的類型庫自動生成C接口?

+2

用C語言編寫COM代碼是殘酷且常見的懲罰,被日內瓦人權公約所取締。只是不要,用C++編寫你的程序的這些位。 –

+0

您可以'#import'一次,然後將生成的文件'.tl *'文件轉換爲您的C代碼,可能還會分別編輯C語言的可編譯性(日內瓦公約涵蓋的內容,我沒有機會檢查這些文件標題是C友好的)。 –

+0

@Hans:這可能是事實,但是,由於世界衛生組織禁止C++從健康安全的編程語言列表中刪除,我仍然希望讓我的大腦不受損害:)我會考慮你的評論。 @羅曼:這是不可能的; '.tl *'文件不僅C不友好,而且也是C++專有的。 – alecov

回答

1

我所知道的最接近的是使用OLE/COM對象查看器(OLEVIEW.EXE)來獲取IDL的一部分,糾正一些丟失的東西,然後再次通過MIDL運行它。