Java 无法同时打开包含Win32 OLE嵌入对象的Excel文档和SWT应用程序
我对Win32OLE在Windows 64位上打开带有嵌入对象的Excel文档有问题。我可以分别打开带有OLE嵌入对象的SWT应用程序和Excel文档,以查看工作表中的每个更新 但是,我无法在Windows 64位中使用OLE对象打开Excel文档和SWT应用程序 我正在使用以下环境:Java 无法同时打开包含Win32 OLE嵌入对象的Excel文档和SWT应用程序,java,eclipse,swt,eclipse-rcp,jface,Java,Eclipse,Swt,Eclipse Rcp,Jface,我对Win32OLE在Windows 64位上打开带有嵌入对象的Excel文档有问题。我可以分别打开带有OLE嵌入对象的SWT应用程序和Excel文档,以查看工作表中的每个更新 但是,我无法在Windows 64位中使用OLE对象打开Excel文档和SWT应用程序 我正在使用以下环境: JDK:jdk1.8.09164位 操作系统:Windows 7 Professional 64位 服务包1 JAR:jre1.8.0_91 64位 Microsoft Office:2016 64位 这是我的密
OleClientSite clientSite ;
try {
clientSite = new OleClientSite(frame, SWT.NONE, new File(filelocation));
} catch (SWTException e) {
e.printStackTrace();
disposeClient();
}
if (clientSite != null){
clientSite.doVerb(OLE.OLEIVERB_SHOW); // Show property use
hideToolbars(clientSite);
}
//Hide Toolbar and menubar
public static void hideToolbars(OleClientSite site) {
int result = site.queryStatus(OLE.OLECMDID_HIDETOOLBARS);
if ((result & OLE.OLECMDF_SUPPORTED) == OLE.OLECMDF_SUPPORTED) {
site.exec(OLE.OLECMDID_HIDETOOLBARS, OLE.OLECMDEXECOPT_DODEFAULT, new Variant(), new Variant());
}
}
// Dispose object
void disposeClient() {
if (clientSite != null)
clientSite.dispose();
clientSite = null;
}