DllImportAttribute(String) Costruttore

Definizione

Inizializza una nuova istanza della classe DllImportAttribute con il nome della DLL che contiene il metodo da importare.Initializes a new instance of the DllImportAttribute class with the name of the DLL containing the method to import.

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)

Parametri

dllName
String

Nome della DLL che contiene il metodo non gestito.The name of the DLL that contains the unmanaged method. Può includere il nome visualizzato di un assembly, se la DLL è inclusa in un assembly.This can include an assembly display name, if the DLL is included in an assembly.

Esempi

Nell'esempio di codice seguente viene illustrato come utilizzare DllImportAttribute l'attributo per importare la MessageBox funzione Win32.The following code example shows how to use the DllImportAttribute attribute to import the Win32 MessageBox function. Nell'esempio di codice viene quindi chiamato il metodo importato.The code example then calls the imported method.

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

Commenti

Se un file dll non gestito è incluso in un assembly, ad esempio tramite il linker o l' /linkresource opzione del compilatore, è possibile specificare il nome visualizzato dell'assembly come parte di. dllNameIf an unmanaged DLL file is included in an assembly, for example, by using the linker or the /linkresource compiler option, you can specify the assembly display name as part of dllName. Se, ad esempio, una dll non gestita denominata unmanaged.dll viene inclusa in un assembly gestito denominato MyAssembly, l'attributo può essere specificato come illustrato nel codice seguente.For example, if an unmanaged DLL named unmanaged.dll is included in a managed assembly named MyAssembly, the attribute might be specified as shown in the following code.

[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

Si applica a