我正在使用JACOB库。我可以创建activeXComponent("Word.Application")
的新实例,然后打开一些文件。如何获取已经打开的文件的实例?
在MS Word宏中,我可以使用Windows("name.doc").Activate
,其中“ name.doc”代表文件名。如何在JACOB中完成?
最佳答案
您可以连接到正在运行的Word-Application:
val com_wordApp: ActiveXComponent = ActiveXComponent.connectToActiveInstance("Word.Application")
这是scala代码。我不确定,但是在Java中应该是
ActiveXComponent com_wordApp = ActiveXComponent.connectToActiveInstance("Word.Application")
然后,您可以访问活动文档,例如获得书签:
val bookMarks: Dispatch = Dispatch.call(com_wordApp.getProperty("ActiveDocument").toDispatch, "Bookmarks").toDispatch
或者您可以获取所有文档:
val com_documents: AnyRef = com_wordApp.getProperty("Documents").toDispatch
对不起,scala代码。我需要很多时间才能开始工作,所以我希望可以为任何人提供帮助。