Sumário
Índice 🔎︎

# Função CreateUnoServiceWithArguments

Instancia um serviço UNO com o ProcessServiceManager, incluindo argumentos opcionais suplementares.

### Sintaxe:

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

Os serviços UNO que podem ser usados com a função CreateUnoServiceWithArguments são identificáveis com nomes de métodos que seguem um padrão de nomenclatura createInstanceWith.. ou createWith...

### Parâmetros:

ServiceName: O nome do serviço UNO a ser criado.

Argumentos: Um pra muitos argumentos que especificam a instância do serviço. Argumentos são armazenados como um array unidimensional, de acordo com suas posições na definição do método construtor.

### Valor de retorno:

Uma instância do nome de serviço UNO fornecido, caso contrário, valor Null.

Para obter uma lista de serviços disponíveis, visite a página de referência do com::sun::star Module.

### Exemplo:

O exemplo abaixo com.sun.star.ui.dialogs.FilePicker exibe uma caixa de diálogo Salvar como com dois controles extras: uma lista de opções e uma caixa de seleção.

        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

Os serviços UNO têm uma extensa documentação on-line no site api.libreoffice.org. Visite a página de referência do Serviço FilePicker para saber mais sobre os métodos fornecidos pelo serviço usado no exemplo acima.

### Exemplo:

O código a seguir usa o serviço com.sun.star.security.DocumentDigitalSignatures para assinar o documento atual:

    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

Métodos construtores CreateWithVersion e createWithVersionAndValidSignature em com.sun. star.security.DocumentDigitalSignatures O serviço UNO indica duas formas diferentes de instanciar este serviço com a função CreateUnoServiceWithArguments.

Tópicos relacionados

Função CreateUnoService

Objetos UNO, funções e serviços

Chamar funções do Calc em Macros