Intrukcja Declare

Spis treści

# Instrukcja Declare

Deklaruje i definiuje podprogram w pliku DLL, który należy uruchomić z programu LibreOffice Basic.

Zobacz także: FreeLibrary

### Składnia:

    Declare {Sub | Function} nazwa Lib "nazwa_biblioteki" [Alias "nazwa_aliasu"] [lista_argumentów] [As typ]

### Parametry:

Nazwa: Nazwa inna niż zdefiniowana w bibliotece DLL, używana w celu uruchomienia podprogramu z programu LibreOffice Basic.

Nazwa_aliasu: Nazwa podprogramu taka, jak zdefiniowana w bibliotece DLL.

Nazwa_biblioteki: Nazwa pliku lub nazwa systemowa biblioteki DLL. Biblioteka jest automatycznie ładowana podczas pierwszego użycia funkcji.

Lista_argumentów: Lista parametrów określających argumenty przekazywane do procedury podczas jej wywoływania. Typ i liczba parametrów zależą od uruchamianej procedury.

Typ: Definiuje typ danych wartości, która jest wynikiem działania procedury funkcji. Jeśli po nazwie został umieszczony znak deklaracji typu, można wykluczyć ten parametr.

Aby przekazać parametr do podprogramu w postaci wartości (zamiast postaci odwołania), należy oznaczyć go słowem kluczowym ByVal.

### Przykład:

    Declare Sub MyMessageBeep Lib "user32.dll" Alias "MessageBeep" ( Long )
    Sub ExampleDeclare
    Dim lValue As Long
        lValue = 5000
        MyMessageBeep( lValue )
        FreeLibrary("user32.dll" )
    End Sub

## Przykład 2

      REM Podczas przekazywania tablic przez referencję nie należy określać typu ich elementów.
      Declare Function GetDiag Lib "C:\\...\\Math.dll" _
         Alias "GetDiag" ( _
         ByVal varName As String, _
         A, _
         ByVal len As Long, _
         ByVal FunctionName As String, _
         B, _
         C) As Long
    Sub MyCode
      Dim A(100) As Long, B(100) As Long, C(100) As Long ' arrays
      R = GetDiag("f", A, 100, "g", B, C)
      Print R
    End Sub

Prosimy o wsparcie!