Instrução Declare

Declara e define uma sub-rotina a partir da qual se deseja executar do LibreOfficeDev Basic.

Consulte também: FreeLibrary

Sintaxe:


Declare {Sub | Function} Name Lib "Libname" [Alias "Aliasname"] [Parameter] [As Type]

Parâmetros:

Name: um nome (diferente do definido na DLL) para chamar a sub-rotina do LibreOfficeDev Basic.

Aliasname: Nome da sub-rotina conforme definido na DLL.

Libname: nome do sistema ou arquivo da DLL. Esta biblioteca é automaticamente carregada na primeira vez que a função é usada.

Argumentlist: lista dos parâmetros que representam os argumentos que são passados para o procedimento quando ele é chamado. O tipo e o número dos parâmetros dependem do procedimento executado.

Type: define o tipo de dados do valor retornado por um procedimento de função. Você poderá excluir esse parâmetro se houver um caractere de declaração de tipo incluído após o nome.

Ícone Aviso

Para enviar um parâmetro para uma sub-rotina como um valor (em vez de como uma referência), é necessário indicar o parâmetro com a palavra-chave ByVal.


Exemplo:


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

Example 2


  REM When passing arrays by reference, do not specify the type of its elements.
  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
♥ Doe para nosso projeto! ♥

♥ Doe para nosso projeto! ♥