Съдържание

# Функция CreateUnoService

Създава екземпляр на услуга на Uno с ProcessServiceManager.

### Синтаксис:

         CreateUnoService(serviceName As String) As Object

За списък на наличните услуги посетете справочната страница com::sun::star Module.

### Пример:

В следващия пример се създава функцията FileExists, която използва услугата com.sun.star.ucb.SimpleFileAccess, за да провери дали даден път води до съществуващ файл.

        Function FileExists(sPath as String) As Boolean
            Dim svcSFA As Object
            Set svcSFA = CreateUnoService("com.sun.star.ucb.SimpleFileAccess")
            Dim bExists As Boolean : bExists = svcSFA.exists(sPath)
            Dim bIsFolder As Boolean : bIsFolder = svcSFA.IsFolder(sPath)
            FileExists = bExists And Not bIsFolder
        End Function ' FileExists

Услугите на UNO са подробно документирани онлайн в уебсайта api.libreoffice.org. Посетете справочната страница SimpleFileAccess Service, за да научите повече за методите, предоставяни от използваната в горния пример услуга.

### Пример:

В долния код се използва услугата com.sun.star.ui.dialogs.FilePicker, за да се покаже диалог за отваряне на файл:

    Sub Main
        fName = FileOpenDialog ("Моля, изберете файл")
        Print "Избран файл: " + fName
    End Sub

    Function FileOpenDialog(title As String) As String
        res = com.sun.star.ui.dialogs.ExecutableDialogResults
        filepicker = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")
        filepicker.Title = title
        If res.OK = filepicker.execute() Then
            files = filepicker.getSelectedFiles()
            FileOpenDialog=files(0)
        EndIf
    End Function ' Main

Теми, свързани с показаната

Функция CreateUnoServiceWithArguments

Обекти, функции и услуги на UNO

Използване на функции на Calc в макроси