Indhold

# CreateUnoServiceWithArguments-funktion

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

### Syntaks:

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

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

### Returtype

Object

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

### Parametre:

Navn | Type | Beskrivelse
--- | --- | ---
ServiceName | String | UNO-tjenestenavnet, som skal oprettes.
Arguments | Variant | Et eller flere argumenter, som specificerer instansen af tjenesten. Arguments gemmes som et endimensionalt array, i henhold til argumenternes position i konstruktør-metodedefinitionen.

### Eksempel:

Eksemplet com.sun.star.ui.dialogs.FilePicker nedenfor viser en indbygget LibreOffice Gem som-dialog med to ekstra kontrolelementer: En rulleliste og et afkrydsningsfelt.

        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, Indsæt tekst og lignende – er tilgængelige på to forskellige måder:

- Som dit operativsystems indbyggede filvælgerdialoger.

- Som indbyggede LibreOffice filvælger-dialoger.

Brug LibreOffice ▸ IndstillingerFunktioner ▸ Indstillinger ▸ LibreOffice ▸ Generelt for at skifte fra den ene til den anden.

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 underskrive 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.

Relaterede emner

funktionen CreateUnoService

UNO-objekter, -funktioner og -tjenester

Brug af Calc-funktioner i makroer