Compartir vía


DllImportAttribute(String) Constructor

Definición

Inicializa una nueva instancia de la clase DllImportAttribute con el nombre del archivo DLL que contiene el método que se va a importar.

public:
 DllImportAttribute(System::String ^ dllName);
public DllImportAttribute (string dllName);
new System.Runtime.InteropServices.DllImportAttribute : string -> System.Runtime.InteropServices.DllImportAttribute
Public Sub New (dllName As String)

Parámetros

dllName
String

Nombre del archivo DLL que contiene el método no administrado. En .NET Framework, esto puede incluir un nombre para mostrar de ensamblado, si el archivo DLL se incluye en un ensamblado.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar el DllImportAttribute atributo para importar la función Win32 MessageBox . A continuación, el ejemplo de código llama al método importado.

using System;
using System.Runtime.InteropServices;

class Example
{
    // Use DllImport to import the Win32 MessageBox function.
    [DllImport("user32.dll", CharSet = CharSet.Unicode)]
    public static extern int MessageBox(IntPtr hWnd, String text, String caption, uint type);
    
    static void Main()
    {
        // Call the MessageBox function using platform invoke.
        MessageBox(new IntPtr(0), "Hello World!", "Hello Dialog", 0);
    }
}
Imports System.Runtime.InteropServices

Module Example

    ' Use DllImport to import the Win32 MessageBox function.
    <DllImport("user32.dll", CharSet:=CharSet.Unicode)> _
    Function MessageBox(ByVal hwnd As IntPtr, ByVal t As String, ByVal caption As String, ByVal t2 As UInt32) As Integer
    End Function


    Sub Main()
        ' Call the MessageBox function using platform invoke.
        MessageBox(New IntPtr(0), "Hello World!", "Hello Dialog", 0)
    End Sub

End Module

Comentarios

Solo .NET Framework: Si un archivo DLL no administrado se incluye en un ensamblado, por ejemplo, mediante el enlazador o la /linkresource opción del compilador, puede especificar el nombre para mostrar del ensamblado como parte de dllName. Por ejemplo, si se incluye un archivo DLL no administrado denominado unmanaged.dll en un ensamblado administrado denominado MyAssembly, el atributo podría especificarse como se muestra en el código siguiente.

[DllImport("unmanaged.dll, MyAssembly, Version= 1.0.0.0,"
    "Culture=neutral, PublicKeyToken=a77e0ba5eab10125")]
int SomeFuncion1(int parm);
[DllImport("unmanaged.dll, MyAssembly, Version= 1.0.0.0," +
    "Culture=neutral, PublicKeyToken=a77e0ba5eab10125")]
internal static extern int SomeFuncion1(int parm);
<DllImport("unmanaged.dll, MyAssembly, Version= 1.0.0.0," +
    "Culture=neutral, PublicKeyToken=a77e0ba5eab10125")>
Friend Shared Function DummyFuncion1(parm As Integer) As Integer
End Function

Se aplica a