Sumário

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

### Tipo de retorno:

Objeto

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

### Parâmetros:

Nome | Tipo | Descrição
--- | --- | ---
ServiceName | String | O nome do serviço UNO a criar.
Argumentos | Variant | Um ou mais 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.

### Exemplo:

O exemplo com.sun.star.ui.dialogs.FilePicker abaixo exibe a caixa de diálogo Salvar como do LibreOffice com dois controles adicionais: uma lista suspensa 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))
           dlg.execute()
        End Sub ' FileSaveAsDialog

As caixas de diálogo de arquivo - tais como Abrir, Salvar como, Inserir texto e similares - estão disponíveis de duas maneiras diferentes:

- Como caixas de diálogo do seletor de arquivos nativo do gerenciador de janelas do seu sistema operacional.

- Como caixa de diálogo de seleção de arquivo do LibreOffice integradas.

Escolha LibreOffice - PreferênciasFerramentas - Opções - LibreOffice - Geral para trocar de caixa de diálogo.

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

♥ Doe para nosso projeto! ♥