code: public static <T extends Com4jObject> T getActiveObject(Class<T> primaryInterface, GUID clsid ) {
          return new GetActiveObjectTask<T>(clsid,primaryInterface).execute();
      }
docs: Gets an already running object from the running object table.
  
  @param <T> the type of the return value and the type parameter of the class object of primaryInterface
  
  @param primaryInterface The returned COM object is returned as this interface.
  Must be non-null. Passing in {@link Com4jObject} allows
  the caller to create a new instance without knowing
  its primary interface.
  @param clsid The CLSID of the object to be retrieved.
  
  @return the retrieved object
  
  @throws ComException if the retrieval fails.
  
  @see <a href="http://msdn2.microsoft.com/en-us/library/ms221467.aspx">MSDN documentation</a>