Fonction CreateUnoServiceWithArguments

Instancie un service UNO avec le ProcessServiceManager, y compris des arguments facultatifs supplémentaires.

Syntaxe :


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

Les services UNO qui peuvent être utilisés avec la fonction CreateUnoServiceWithArguments sont identifiables avec des noms de méthode qui suivent un modèle de nommage createInstanceWith.. ou createWith...


Type de renvoie :

Objet

note

Pour une liste des services disponibles, visitez la page de référence com::sun::star Module.


Paramètres :

Nom

Type

Description

ServiceName

String

Le nom du service UNO à créer.

Arguments

Variant

Un à plusieurs arguments qui spécifient l'instance du service. Les arguments sont stockés sous la forme d'une matrice unidimensionnel, en fonction de leur position dans la définition de la méthode du constructeur.


Exemple :

L'exemple com.sun.star.ui.dialogs.FilePicker ci-dessous affiche une boîte de dialogue LibreOffice Enregistrer sous intégrée avec deux contrôles supplémentaires : une liste déroulante et une case à cocher.


    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
  

Les boîtes de dialogue de fichiers - telles que Ouvrir, Enregistrer sous et similaires - sont disponibles de deux manières différentes :

Utilisez - LibreOffice - Général pour passer de l'un à l'autre.

tip

Les services UNO disposent d'une documentation en ligne complète sur le site Web api.libreoffice.org. Visitez la page de référence FilePicker Service pour en savoir plus sur les méthodes fournies par le service utilisé dans l'exemple ci-dessus.


Exemple :

Le code suivant utilise le service com.sun.star.security.DocumentDigitalSignatures pour signer le document actuel :


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

Les méthodes de constructeur CreateWithVersion et createWithVersionAndValidSignature dans le service UNO com.sun. star.security.DocumentDigitalSignatures indiquent deux manières différentes d'instancier ce service avec la fonction CreateUnoServiceWithArguments.

Aidez-nous !