MethodImportAttributes Enumerazione
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Specifica i flag per gli attributi di importazione del metodo non gestito.
Questa enumerazione supporta una combinazione bit per bit dei rispettivi valori dei membri.
public enum class MethodImportAttributes
[System.Flags]
public enum MethodImportAttributes
[<System.Flags>]
type MethodImportAttributes =
Public Enum MethodImportAttributes
- Ereditarietà
- Attributi
Campi
| Nome | Valore | Descrizione |
|---|---|---|
| None | 0 | Specifica gli attributi di importazione del metodo predefiniti. |
| ExactSpelling | 1 | Specifica che Common Language Runtime non deve provare un nome di punto di ingresso con suffissi specifici del set di caratteri durante la ricerca del metodo importato. |
| CharSetAnsi | 2 | Specifica che le stringhe vengono marshallate come stringhe di caratteri a più byte: la tabella codici Windows predefinita del sistema (ANSI) in Windows e UTF-8 in Unix. |
| CharSetUnicode | 4 | Specifica che le stringhe vengono marshallate come stringhe di caratteri a 2 byte Unicode. |
| CharSetAuto | 6 | Specifica che il set di caratteri viene scelto automaticamente. Per informazioni dettagliate, vedere Set di caratteri e marshalling . |
| CharSetMask | 6 | Specifica il set di caratteri utilizzato per il marshalling di stringhe. |
| BestFitMappingEnable | 16 | Specifica che il comportamento di mapping più appropriato durante la conversione dei caratteri Unicode in caratteri ANSI è abilitato. |
| BestFitMappingDisable | 32 | Specifica che il comportamento di mapping più appropriato durante la conversione dei caratteri Unicode in caratteri ANSI è disabilitato. |
| BestFitMappingMask | 48 | Specifica se il comportamento di mapping più appropriato durante la conversione dei caratteri Unicode in caratteri ANSI è abilitato o disabilitato. |
| SetLastError | 64 | Specifica che il metodo importato chiama la funzione API SetLastError Windows prima di restituire . |
| CallingConventionWinApi | 256 | Specifica che viene utilizzata la convenzione di chiamata della piattaforma predefinita . |
| CallingConventionCDecl | 512 | Specifica che la convenzione di chiamata è CDecl. |
| CallingConventionStdCall | 768 | Specifica che la convenzione di chiamata è StdCall. |
| CallingConventionThisCall | 1024 | Specifica che la convenzione di chiamata è ThisCall. |
| CallingConventionFastCall | 1280 | Specifica che la convenzione di chiamata è FastCall. |
| CallingConventionMask | 1792 | Specifica la convenzione di chiamata. |
| ThrowOnUnmappableCharEnable | 4096 | Specifica che deve essere generata un'eccezione quando un carattere Unicode non applicabile viene convertito in un carattere ANSI. |
| ThrowOnUnmappableCharDisable | 8192 | Specifica che non deve essere generata un'eccezione quando un carattere Unicode non valido viene convertito in un carattere ANSI. |
| ThrowOnUnmappableCharMask | 12288 | Specifica se deve essere generata un'eccezione quando un carattere Unicode non modificabile viene convertito in un carattere ANSI. |
Commenti
Gli attributi di importazione del metodo vengono usati con la MethodImport struttura .
Per verificare se un valore di questa enumerazione ha il flag specifico, combinare tale valore con la costante mask corrispondente usando l'operazione AND bit per bit (& in C#) e confrontarne il risultato con la costante del flag da controllare. Ad esempio, per verificare la presenza di una convenzione di chiamata CDecl, usare un codice simile al seguente:
if((attributes & MethodImportAttributes.CallingConventionMask) == MethodImportAttributes.CallingConventionCDecl)
{
// The calling convention is CDecl
}
Per altre informazioni sull'importazione del metodo non gestito e sul significato di questi attributi, vedere DllImportAttribute.