DllImportAttribute.ThrowOnUnmappableChar Alan

Tanım

ANSI "?" karakterine dönüştürülen, uygulamaz bir Unicode karakterinde özel durum oluşturma işlemini etkinleştirir veya devre dışı bırakır.

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

Alan Değeri

Örnekler

Bazı durumlarda, Visual Basic geliştiriciler DllImportAttribute deyimini kullanmak yerine yönetilen kodda dll işlevi tanımlamak için Declare kullanır. ThrowOnUnmappableChar Alanı ayarlamak bu durumlardan biridir. Aşağıdaki örnekte ANSI karakter kümesini belirterek, en uygun eşleme davranışını devre dışı bırakarak ve eşlenmemiş Unicode karakterlerine özel durum oluşturarak platform çağırma yöntemi tanımlarına en katı karakter eşleme güvenliğinin nasıl uygulanacağı gösterilmektedir.

[DllImport("My.dll", CharSet = CharSet::Ansi,
    BestFitMapping = false,
    ThrowOnUnmappableChar = true)]
int SomeFuncion2(int parm);
[DllImport("My.dll", CharSet = CharSet.Ansi,
    BestFitMapping = false,
    ThrowOnUnmappableChar = true)]
internal static extern int SomeFuncion2(int parm);
<DllImport("My.dll", CharSet:=CharSet.Ansi,
    BestFitMapping:=False,
    ThrowOnUnmappableChar:=True)>
Friend Shared Function SomeFuncion2(parm As Integer) As Integer
End Function

Açıklamalar

true birlikte çalışma sıralayıcısı her eşlenemez karakteri dönüştürdüğünde bir özel durum oluştuğunun belirtiliyor olması için; false alanının devre dışı bırakıldığını ThrowOnUnmappableChar gösterir. Bu alan varsayılan olarakdır false .

Caution

Bazı Unicode karakterleri, bir yolu yanlışlıkla değiştirebilen ters eğik çizgi '\' karakteri gibi tehlikeli karakterlere dönüştürülür. alanını olarak ThrowOnUnmappableCharayarlayaraktrue, özel durum oluşturarak çağırana eşlenmeyen bir karakterin varlığına işaret edebilirsiniz.

Caution

öğeleri ANSI Chars veya LPSTR olan yönetilen bir diziyi BestFitMapping yönetilmeyen güvenli bir diziye geçirirken ve ThrowOnUnmappableChar alanları tarafından sağlanan varsayılan değerleri değiştiremezsiniz. En uygun eşleme her zaman etkindir ve özel durum uygulanmaz. Bu birleşimin güvenlik modelinizi tehlikeye atabileceğini unutmayın.

Şunlara uygulanır

Ayrıca bkz.