Obsah

# Funkce CreateUnoServiceWithArguments

Vytvoří instanci služby UNO se službou ProcessServiceManager, a to včetně dodatečných volitelných argumentů.

### Syntaxe:

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

Služby UNO, které je možné používat s funkcí CreateUnoServiceWithArguments, lze identifikovat pomocí názvů metod začínajících řetězci createInstanceWith.. nebo createWith...

### Parametry:

ServiceName: Název služby UNO, která se má vytvořit.

Arguments: Jeden či více argumentů pro instanci služby. Argumenty jsou uloženy jako jednorozměrné pole v pořadí odpovídajícím definici konstruktoru.

### Návratová hodnota:

Instance služby UNO zadaného názvu, případně hodnota Null.

Seznam dostupných služeb naleznete na stránce s popisem modulu com::sun::star.

### Příklad:

V následujícím příkladu se službou com.sun.star.ui.dialogs.FilePicker se zobrazí dialogové okno Uložit jako se dvěma dodatečnými ovládacími prvky: polem se seznamem a zaškrtávacím polem.

        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

Služby UNO mají obsáhlou dokumentaci online na stránce api.libreoffice.org. Další informace o metodách služby použité v předchozím příkladu naleznete na stránce FilePicker Service.

### Příklad:

Následující kód využívá službu com.sun.star.security.DocumentDigitalSignatures pro podepsání aktuálního dokumentu:

    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

Konstruktory CreateWithVersion a createWithVersionAndValidSignature služby UNO com.sun.star.security.DocumentDigitalSignatures představují dva různé způsoby vytvoření instance této služby pomocí funkce CreateUnoServiceWithArguments.

Související témata

Funkce CreateUnoService

Objekty, funkce a služby UNO

Použití funkcí Calcu v makrech