DLL 呼び出しの例

この例では、user32.dllSendMessage DLL 関数を呼び出して、フィールドに「hello world!」というテキストを書き出します。

DLL の宣言:

// VB .NET code
<Dll("user32.dll")> Public Interface IUserDll32Functions
  Function SendMessageW( _
    ByVal obj As TestObject,ByVal message As Integer,ByVal wParam As Integer,ByVal lParam As String) As Integer
End Interface
以下のコードは、AUT で宣言された DLL 関数を呼び出す方法を示します。
// VB .NET code
Public Sub Main()
  Dim user32Functions As IUserDll32Functions = DllCall.CreateInProcessDllCall(Of IUserDll32Functions)()
  Dim textField = _desktop.Window().TextField()
  user32Functions.SendMessageW(textField, WindowsMessages.WM_SETTEXT, 0, "my text")
End Sub
注: DLL 関数の最初のパラメーターに C データ型の HWND が指定されている場合は、AUT 内で DLL 関数の呼び出しのみを実行できます。
次のコードは、Open Agent のプロセスで宣言された DLL 関数を呼び出す方法を示します。
// VB .NET code
Public Sub Main()
  Dim user32Functions As IUserDll32Functions = DllCall.CreateAgentDllCall(Of IUserDll32Functions)()
  Dim textField = _desktop.Window().TextField()
  user32Functions.SendMessageW(textField, WindowsMessages.WM_SETTEXT, 0, "my text")
End Sub
注: コード例では、DLL 関数で使用するのに便利な Windows メッセージングに関連する定数を定義した WindowsMessages クラスを使用しています。