当前位置: 首页>>代码示例>>Java>>正文


Java XDesktop.terminate方法代码示例

本文整理汇总了Java中com.sun.star.frame.XDesktop.terminate方法的典型用法代码示例。如果您正苦于以下问题:Java XDesktop.terminate方法的具体用法?Java XDesktop.terminate怎么用?Java XDesktop.terminate使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.sun.star.frame.XDesktop的用法示例。


在下文中一共展示了XDesktop.terminate方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: doStopProcess

import com.sun.star.frame.XDesktop; //导入方法依赖的package包/类
private void doStopProcess() {
	try {
		XDesktop desktop = OfficeUtils.cast(XDesktop.class, connection.getService(OfficeUtils.SERVICE_DESKTOP));
		desktop.terminate();
	} catch (DisposedException disposedException) {
		// expected
	} catch (Exception exception) {
		// in case we can't get hold of the desktop
		doTerminateProcess();
	}
	doEnsureProcessExited();
}
 
开发者ID:qjx378,项目名称:wenku,代码行数:13,代码来源:ManagedOfficeProcess.java

示例2: stopOffice

import com.sun.star.frame.XDesktop; //导入方法依赖的package包/类
private void stopOffice() {
    try {
        if (componentContext != null) {
            // Only the uno test suite which started the office can stop it
            XMultiComponentFactory xMngr = componentContext.getServiceManager();
            Object oDesktop = xMngr.createInstanceWithContext("com.sun.star.frame.Desktop", componentContext);
            XDesktop xDesktop = (XDesktop)UnoRuntime.queryInterface(XDesktop.class, oDesktop);
            
            xDesktop.terminate();
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}
 
开发者ID:indic-ocr,项目名称:LibreOCR,代码行数:15,代码来源:UnoSuite.java

示例3: disconnect

import com.sun.star.frame.XDesktop; //导入方法依赖的package包/类
/**
 * Disconnects from an OOo server using the connection string from the
 * previous connect.
 * 
 * If there has been no previous connect, the disconnects does nothing.
 * 
 * If there has been a previous connect, disconnect tries to terminate
 * the OOo server and kills the OOo server process the connect started.
 */
public void disconnect() {

    if (oooConnectionString == null)
        return;

    // call office to terminate itself
    try {
        // get local context
        XComponentContext xLocalContext = getLocalContext();

        // create a URL resolver
        XUnoUrlResolver xUrlResolver = UnoUrlResolver.create(xLocalContext);

        // get remote context
        XComponentContext xRemoteContext = getRemoteContext(xUrlResolver);

        // get desktop to terminate office
        Object desktop = xRemoteContext.getServiceManager().createInstanceWithContext("com.sun.star.frame.Desktop",xRemoteContext);
        XDesktop xDesktop = (XDesktop) UnoRuntime.queryInterface(XDesktop.class, desktop);
        xDesktop.terminate();
    }
    catch (Exception e) {
        // Bad luck, unable to terminate office
    }

    oooServer.kill();
    oooConnectionString = null;
}
 
开发者ID:cuba-platform,项目名称:yarg,代码行数:38,代码来源:BootstrapConnector.java

示例4: main

import com.sun.star.frame.XDesktop; //导入方法依赖的package包/类
/**
 * Stellt eine Verbindung mit OpenOffice.org her (und startet dabei einen
 * soffice-Prozess, falls noch keiner läuft) und beendet dann OpenOffice.org
 * mittels XDesktop.terminate(). Das Programm beendet die JVM mit Statuscode 0,
 * wenn das Beenden von Openoffice.org erfolgreich war und mit einem Statuscode !=
 * 0, wenn OpenOffice.org nicht beendet wurde bzw. irgendetwas schief gelaufen ist
 * (z.B. beim Verbindungsaufbau). Zudem wird auf der Standardausgabe eine
 * entsprechende Meldung ausgegeben.
 * 
 * @param args
 *          wird nicht ausgewertet
 * @author Daniel Benkmann (D-III-ITD-D101)
 */
public static void main(String[] args)
{
  boolean terminated = false;
  try
  {
    XMultiComponentFactory xMCF = Bootstrap.bootstrap().getServiceManager();
    XComponentContext defaultContext =
      (XComponentContext) UnoRuntime.queryInterface(
        XComponentContext.class,
        ((XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, xMCF)).getPropertyValue("DefaultContext"));
    XDesktop desktop =
      (XDesktop) UnoRuntime.queryInterface(XDesktop.class,
        xMCF.createInstanceWithContext("com.sun.star.frame.Desktop",
          defaultContext));

    // Quickstarter soll das Terminieren des Prozesses nicht verhindern
    XPropertySet xPropSet =
      (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class, desktop);
    xPropSet.setPropertyValue("SuspendQuickstartVeto", Boolean.TRUE);
    //ACHTUNG: Der obige Code hat keine Auswirkung auf den Quickstarter der
    //WollMuxBar! Wenn die WollMuxBar mit "--quickstarter" gestartet wird,
    //kann OpenOffice nicht beendet werden.
    

    // Versuch OOo zu beenden
    terminated = desktop.terminate();
  }
  catch (Exception e)
  {
    System.out.println("Exception occured while trying to terminate OpenOffice.org!");
    e.printStackTrace();
    System.exit(2);
  }

  if (terminated)
  {
    System.out.println("OpenOffice.org was terminated successfully!");
    System.exit(0);
  }
  else
  {
    System.out.println("OpenOffice.org was NOT terminated!");
    System.exit(1);
  }
}
 
开发者ID:WollMux,项目名称:WollMux,代码行数:59,代码来源:TerminateOOo.java


注:本文中的com.sun.star.frame.XDesktop.terminate方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。