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
  
tip

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.

note

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
  
tip

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.

♥ Doe para nosso projeto! ♥