Функция CreateUnoServiceWithArguments

Създава екземпляр на UNO услуга с ProcessServiceManager, включително допълнителни аргументи по желание.

Синтаксис:


     CreateUnoServiceWithArguments(ServiceName As String, Arguments() As Variant) As Object
  
tip

UNO услугите, които могат да се използват с функцията CreateUnoServiceWithArguments, се разпознават по имената на методите, които следват схемата createInstanceWith.. или createWith...


Параметри:

ServiceName: името на UNO услугата, която да бъде създадена.

Arguments: един или няколко аргумента, които описват екземпляра на услугата. Arguments се съхранява като едномерен масив в реда на позициите на аргументите в дефиницията на метода конструктор.

Резултат:

Екземпляр на UNO услугата с даденото име, в противен случай стойност Null.

note

За списък на наличните услуги посетете справочната страница com::sun::star Module.


Пример:

Примерът с com.sun.star.ui.dialogs.FilePicker по-долу показва диалог Записване като с две допълнителни контроли: списъчно поле и поле за отметка.


    Sub FileSaveAsDialog()
       td = com.sun.star.ui.dialogs.TemplateDescription
       options = td.FILESAVE_AUTOEXTENSION_TEMPLATE
       dlg = CreateUnoServiceWithArguments( _
          "com.sun.star.ui.dialogs.FilePicker", _
          Array(options))
    End Sub ' FileSaveAsDialog
  
tip

Услугите на UNO са подробно документирани онлайн в уебсайта api.libreoffice.org. Посетете справочната страница FilePicker Service, за да научите повече за методите, предоставяни от използваната в горния пример услуга.


Пример:

В следващия код е използвана услугата com.sun.star.security.DocumentDigitalSignatures, за да се подпише текущият документ:


Sub  SignCurrentDocDialog
   Dim pv(0) as new com.sun.star.beans.PropertyValue
   pv(0).Name  = "StorageFormat"
   pv(0).Value = "ZipFormat"
   mode = com.sun.star.embed.ElementModes
   sf = CreateUnoService("com.sun.star.embed.StorageFactory")
   storage = sf.createInstanceWithArguments(Array(ThisComponent.URL, mode.WRITE, pv))
   dds = CreateUnoServiceWithArguments( _
      "com.sun.star.security.DocumentDigitalSignatures", _
      Array("1.2", True)) 
   dds.signDocumentContent(storage, Null)
End Sub ' SignCurrentDocDialog

Методите конструктори CreateWithVersion и createWithVersionAndValidSignature в UNO услугата com.sun.star.security.DocumentDigitalSignatures показват два различни начина за създаване екземпляр на тази услуга с функцията CreateUnoServiceWithArguments.

Моля, подкрепете ни!