2010-04-28 48 views
0

我是一個Windows和COM編程的完全新手,嘗試使用com4j來調用Java中的COM對象。其中DLL是iStream定義的COM接口?

Com4j根據COM定義「」通常在.ocx,.dll,.exe和/或.tlb文件中生成Java接口。我很容易找到我的目標COM對象的.ocx文件,但我對標準接口iStream沒有任何線索。

Microsoft's documentation提到OLE32.DLL(c:\ Windows \ Windows32 \ Ole32.dll?),但com4j生成器和oleviewer都不能成功打開此文件。

任何提示?

回答

1

它看起來就像是在comsvc​​s.dll定義。

+0

該DLL似乎是正確的。不幸的是,com4j無法從它生成接口。我正在尋找答案。 – 2010-04-28 21:50:37

1

您鏈接到參考文獻Objidl.idl的文檔。 com4j可能能夠處理IDL文件。

您也可以試試編譯IDL到TLB使用MIDL:http://msdn.microsoft.com/en-us/library/aa367372(VS.85).aspx

+0

任何想法,我可以找到objidl.idl? – 2010-04-28 21:51:28

+0

它是Windows平臺SDK的一部分,但如果您安裝了Visual Studio或VC++,您也可以自由使用它。在我的機器上,我發現多個版本植於C:\ Program Files(x86)\ Microsoft SDKs \ Windows \。 – 2010-04-29 08:03:14