CreateUnoServiceWithArguments-funktion

Instantierer en UNO-tjeneste med ProcessServiceManager, inklusive eventuelle supplerende argumenter.

Syntaks:


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

UNO-tjenester, som kan anvendes med CreateUnoServiceWithArguments-funktionen, kan identificeres med metodenavne som følger navngivningsmønsteret createInstanceWith... eller createWith....


Returværdi:

En instans af det givne UNO-tjenestenavn, ellers værdien Null.

note

For at se en liste over tilgængelige tjenester, besøg referencesiden for com::sun::star Module.


Parametre:

Name

Type

Description

ServiceName

String

The UNO service name to be created.

Arguments

Variant

One to many arguments that specify the instance of the service. Arguments are stored as a one dimensional array, according to their positions in the constructor method definition.


Eksempel:

The com.sun.star.ui.dialogs.FilePicker example below displays a built-in LibreOfficeDev Save As dialog with two extra controls: a listbox and a checkbox.


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

Fildialoger – for eksempel Åbn, Gem som og lignende – er tilgængelige på to forskellige måder:

Brug LibreOfficeDevGenerelt for at skifte fra den ene til den anden.

tip

UNO-tjenester har en omfattende online-dokumentation på api.libreoffice.org-hjemmesiden. Besøg referencesiden for FilePicker Service for at lære mere om de metoder, som tilbydes af tjenesten brugt i eksemplet ovenfor.


Eksempel:

Den følgende kode bruger tjenesten com.sun.star.security.DocumentDigitalSignatures til at signere det aktuelle dokument:


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

Konstruktormetoderne CreateWithVersion og createWithVersionAndValidSignature i UNO-tjenesten com.sun.star.security.DocumentDigitalSignatures viser to forskellige måder at instantiere denne tjeneste med CreateUnoServiceWithArguments-funktionen.