Java 无法同时打开包含Win32 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位 这是我的密

我对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;
    }