Share via


Comment : appeler des API Windows (Visual Basic)

Cet exemple définit et appelle la fonction MessageBox dans user32.dll et lui passe une chaîne.

Exemple

Cet exemple de code est également disponible sous forme d'extrait de code IntelliSense. Dans le sélecteur d'extrait de code, il se trouve en Langage Visual Basic. Pour plus d'informations, consultez Comment : insérer des extraits de code IntelliSense.

' 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

Compilation du code

Cet exemple nécessite :

  • Référence à l'espace de noms System.

Programmation fiable

Les conditions ci-dessous peuvent générer une exception.

  • La méthode n'est pas statique, elle est abstraite ou a été définie précédemment. Le type parent est une interface, ou la longueur de name ou dllName est zéro. (ArgumentException)

  • Le name ou dllName est Nothing. (ArgumentNullException)

  • Le type conteneur a été créé précédemment à l'aide de CreateType. (InvalidOperationException)

Voir aussi

Tâches

Procédure pas à pas : appel des API Windows (Visual Basic)

Concepts

Présentation détaillée de l'appel de code non managé

Exemples d'appel de code non managé

Consommation de fonctions DLL non managées

Définition d'une méthode avec l'émission de réflexion

Autres ressources

COM Interop (Visual Basic)