方法: Windows API を呼び出す (Visual Basic)

次に示すのは、user32.dll の MessageBox 関数を定義および呼び出して、その関数に文字列を渡す例です。

使用例

' Defines the MessageBox function.
Public Class Win32
    Declare Auto Function MessageBox Lib "user32.dll" (
        ByVal hWnd As Integer, ByVal txt As String,
        ByVal caption As String, ByVal Type As Integer
        ) As Integer
End Class

' Calls the MessageBox function.
Public Class DemoMessageBox
    Public Shared Sub Main()
        Win32.MessageBox(0, "Here's a MessageBox", "Platform Invoke Sample", 0)
    End Sub
End Class

コードのコンパイル

この例には、次の項目が必要です。

  • System 名前空間への参照

信頼性の高いプログラミング

次の条件を満たす場合は、例外が発生する可能性があります。

  • メソッドが静的でないか、抽象であるか、定義済みである場合。親の型がインターフェイスであるか、name または dllName の長さがゼロである場合(ArgumentException)

  • name または dllName が Nothing である場合(ArgumentNullException)

  • コンテナーの型が CreateType を使用して作成済みの型である場合(InvalidOperationException)

参照

処理手順

チュートリアル: Windows API の呼び出し (Visual Basic)

概念

プラットフォーム呼び出しの詳細

プラットフォーム呼び出しの例

アンマネージ DLL 関数の処理

リフレクション出力によるメソッドの定義

その他の技術情報

COM 相互運用 (Visual Basic)