DllImportAttribute.ExactSpelling Veld
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee bepaalt u of het CharSet veld ervoor zorgt dat de algemene taalruntime een niet-beheerde DLL doorzoekt op andere invoerpuntnamen dan de opgegeven DLL.
public: bool ExactSpelling;
public bool ExactSpelling;
val mutable ExactSpelling : bool
Public ExactSpelling As Boolean
Waarde van veld
Voorbeelden
In sommige gevallen gebruiken Visual Basic ontwikkelaars de DllImportAttribute in plaats van de instructie Declare te gebruiken om een DLL-functie in beheerde code te definiƫren. Het instellen van het ExactSpelling veld is een van deze gevallen.
[DllImport("user32.dll", CharSet = CharSet::Ansi, ExactSpelling = true)]
int MessageBoxA(IntPtr hWnd, String^ Text,
String^ Caption, unsigned int Type);
internal static class NativeMethods
{
[DllImport("user32.dll", CharSet = CharSet.Unicode,
ExactSpelling = true)]
internal static extern int MessageBoxW(
IntPtr hWnd, string lpText, string lpCption, uint uType);
}
Friend Class NativeMethods
<DllImport("user32.dll", ExactSpelling:=False)>
Friend Shared Function MessageBox(hWnd As IntPtr, lpText As String,
lpCaption As String, uType As UInteger) As Integer
End Function
End Class
Opmerkingen
Als falsede naam van het invoerpunt die is toegevoegd aan de letter A, wordt aangeroepen wanneer het DllImportAttribute.CharSet veld is ingesteld op CharSet.Ansien de naam van het beginpunt die is toegevoegd aan de letter W, wordt aangeroepen wanneer het DllImportAttribute.CharSet veld is ingesteld op de CharSet.Unicode. Normaal gesproken stellen beheerde compilers dit veld in.
In de volgende tabel ziet u de relatie tussen de CharSet velden ExactSpelling , op basis van standaardwaarden die door de programmeertaal worden opgelegd. U kunt de standaardinstelling overschrijven, maar wees voorzichtig.
| Language | American National Standards Institute (ANSI) | Unicode | Auto |
|---|---|---|---|
| Visual Basic | ExactSpelling:=True | ExactSpelling:=True | ExactSpelling:=False |
| C# | ExactSpelling=false | ExactSpelling=false | ExactSpelling=false |
| C++ | ExactSpelling=false | ExactSpelling=false | ExactSpelling=false |