DllImportAttribute(String) Oluşturucu
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
İçeri aktaracak yöntemi içeren DLL'nin adıyla sınıfının yeni bir örneğini DllImportAttribute başlatır.
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)
Parametreler
- dllName
- String
Yönetilmeyen yöntemi içeren DLL'nin adı. .NET Framework'te, DLL bir derlemeye dahilse, bu bir derleme görünen adını içerebilir.
Örnekler
Aşağıdaki kod örneği, Win32 MessageBox
işlevini içeri aktarmak için özniteliğinin nasıl kullanılacağını DllImportAttribute gösterir. Kod örneği daha sonra içeri aktarılan yöntemi çağırır.
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
Açıklamalar
Yalnızca .NET Framework: Örneğin bağlayıcıyı veya derleyici seçeneğini kullanarak yönetilmeyen bir DLL dosyası bir derlemeye /linkresource
dahil edilmişse, derleme görünen adını öğesinin dllName
bir parçası olarak belirtebilirsiniz. Örneğin, adlı yönetilmeyen bir DLL adlı unmanaged.dll
MyAssembly
yönetilen derlemeye dahil edilirse, özniteliği aşağıdaki kodda gösterildiği gibi belirtilebilir.
[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