DllImportAttribute.ExactSpelling Campo

Definizione

Controlla se il campo CharSet fa in modo che Common Language Runtime cerchi in una DLL non gestita i nomi dei punti di ingresso diversi da quello specificato.Controls whether the CharSet field causes the common language runtime to search an unmanaged DLL for entry-point names other than the one specified.

public: bool ExactSpelling;
public bool ExactSpelling;
val mutable ExactSpelling : bool
Public ExactSpelling As Boolean 

Valore del campo

Esempi

In alcuni casi, Visual Basic sviluppatori utilizzano DllImportAttribute, anziché utilizzare l' Declare istruzione, per definire una funzione di dll nel codice gestito.In some cases, Visual Basic developers use the DllImportAttribute, instead of using the Declare statement, to define a DLL function in managed code. L'impostazione ExactSpelling del campo è uno di questi casi.Setting the ExactSpelling field is one of those cases.

[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

Commenti

Se false, il nome del punto di ingresso aggiunto alla lettera a viene richiamato quando DllImportAttribute.CharSet il campo è impostato CharSet.Ansisu e il nome del punto di ingresso aggiunto con la lettera W viene CharSet.Unicoderichiamato quando DllImportAttribute.CharSet il campo è impostato su.If false, the entry point name appended with the letter A is invoked when the DllImportAttribute.CharSet field is set to CharSet.Ansi, and the entry-point name appended with the letter W is invoked when the DllImportAttribute.CharSet field is set to the CharSet.Unicode. In genere, i compilatori gestiti impostano questo campo.Typically, managed compilers set this field.

Nella tabella seguente viene illustrata la relazione CharSet tra ExactSpelling i campi e, in base ai valori predefiniti imposti dal linguaggio di programmazione.The following table shows the relationship between the CharSet and ExactSpelling fields, based on default values imposed by the programming language. È possibile eseguire l'override dell'impostazione predefinita, ma eseguire questa operazione con cautela.You can override the default setting, but do so with caution.

LinguaggioLanguage ANSIANSI UnicodeUnicode AutoAuto
Visual BasicVisual Basic ExactSpelling:=TrueExactSpelling:=True ExactSpelling:=TrueExactSpelling:=True ExactSpelling:=FalseExactSpelling:=False
C#C# ExactSpelling = falseExactSpelling=false ExactSpelling = falseExactSpelling=false ExactSpelling = falseExactSpelling=false
C++C++ ExactSpelling = falseExactSpelling=false ExactSpelling = falseExactSpelling=false ExactSpelling = falseExactSpelling=false

Si applica a