System.Runtime.InteropServices Spazio dei nomi
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.
Offre un'ampia gamma di membri che supportano l'interoperabilità COM e i servizi platform invoke. Se non si ha familiarità con questi servizi, vedere l'interoperabilità con codice non gestito.
Allow |
Consente a un metodo non gestito di chiamare un metodo gestito. |
Automation |
Specifica se il tipo deve essere sottoposto a marshalling usando il gestore di marshalling di Automazione o un proxy personalizzato e uno stub. |
Best |
Controlla se i caratteri Unicode vengono convertiti nei caratteri ANSI corrispondenti più vicini. |
BStr |
Effettua il marshalling dei dati di tipo |
Class |
Indica il tipo di interfaccia di classe da generare per una classe esposta a COM, se viene generata un'interfaccia. |
Co |
Specifica l'identificatore di classe di una coclasse importata da una libreria dei tipi. |
Collections |
Classe unsafe che fornisce un set di metodi per accedere alle rappresentazioni dei dati sottostanti delle raccolte. |
Com |
Indica l'alias COM per un parametro o un tipo di campo. |
Com |
Consente la registrazione ad associazione tardiva di un gestore eventi. |
Com |
Indica a un client COM che tutte le classi nella versione corrente di un assembly sono compatibili con le classi in una versione precedente dell'assembly. |
Com |
Indica che le informazioni sono state perse su una classe o un'interfaccia quando è stata importata da una libreria dei tipi a un assembly. |
Com |
Specifica un'interfaccia predefinita da esporre a COM. Questa classe non può essere ereditata. |
Com |
Identifica l'interfaccia di origine e la classe che implementa i metodi dell'interfaccia evento generata quando una coclasse viene importata da una libreria dei tipi COM. |
Com |
Fornisce metodi che consentono ai delegati .NET di gestire gli eventi da aggiungere e rimuovere dagli oggetti COM. |
COMException |
Eccezione generata quando viene restituito un HRESULT non riconosciuto da una chiamata al metodo COM. |
Com |
Indica che il tipo con attributi è stato definito in precedenza in COM. |
Com |
Specifica il metodo da chiamare quando si registra un assembly da utilizzare da COM; ciò consente l'esecuzione di codice scritto dall'utente durante il processo di registrazione. |
Com |
Identifica un elenco di interfacce esposte come origini evento COM per la classe con attributi. |
Com |
Specifica il metodo da chiamare quando si annulla la registrazione di un assembly da utilizzare da COM; ciò consente l'esecuzione di codice scritto dall'utente durante il processo di annullamento della registrazione. |
Com |
Controlla l'accessibilità di un singolo tipo gestito o membro, o di tutti i tipi all'interno di un assembly, a COM. |
Com |
Classe per la gestione dei wrapper dei tipi COM IUnknown. |
Critical |
Rappresenta una classe wrapper per gestire le risorse. |
Currency |
Esegue il wrapping degli oggetti che il gestore di marshalling deve eseguire il marshalling come |
Default |
Specifica il valore dell'enumerazione CharSet. Questa classe non può essere ereditata. |
Default |
Specifica i percorsi usati per la ricerca di DLL che forniscono funzioni per le chiamate della piattaforma. |
Default |
Imposta il valore predefinito di un parametro quando viene chiamato da una lingua che supporta i parametri predefiniti. Questa classe non può essere ereditata. |
Dispatch |
Esegue il wrapping degli oggetti che il gestore di marshalling deve eseguire il marshalling come |
Disp |
Specifica l'identificatore di invio COM (DISPID) di un metodo, un campo o una proprietà. |
Dll |
Indica che il metodo con attributi è esposto da una libreria di collegamento dinamico (DLL) non gestita come punto di ingresso statico. |
Dynamic |
Attributo richiesto da qualsiasi tipo restituito da GetInterfaceImplementation(RuntimeTypeHandle). |
Error |
Esegue il wrapping degli oggetti che il gestore di marshalling deve eseguire il marshalling come |
Extensible |
Abilita la personalizzazione di oggetti gestiti che si estendono da oggetti non gestiti durante la creazione. |
External |
Tipo di eccezione di base per tutte le eccezioni di interoperabilità COM e le eccezioni di gestione delle eccezioni strutturate (SEH). |
Field |
Indica la posizione fisica dei campi all'interno della rappresentazione non gestita di una classe o di una struttura. |
Guid |
Fornisce un Guid esplicito quando un GUID automatico è indesiderato. |
Handle |
Tiene traccia degli handle in sospeso e forza un'operazione di Garbage Collection quando viene raggiunta la soglia specificata. |
IDispatch |
Indica quale |
Immutable |
Classe unsafe che fornisce un set di metodi per accedere alle rappresentazioni di dati sottostanti di raccolte non modificabili. |
Imported |
Indica che i tipi definiti all'interno di un assembly sono stati originariamente definiti in una libreria dei tipi. |
In |
Indica che il marshalling dei dati deve essere eseguito dal chiamante al chiamato, ma non al chiamante. |
Interface |
Indica se un'interfaccia gestita è doppia, solo dispatch o |
Invalid |
Eccezione generata quando viene utilizzato un oggetto COM non valido. |
Invalid |
Eccezione generata dal gestore di marshalling quando rileva un argomento di un tipo variant che non può essere sottoposto a marshalling al codice gestito. |
Json |
Offre un'ampia gamma di membri che supportano l'interoperabilità COM e i servizi platform invoke. Se non si ha familiarità con questi servizi, vedere l'interoperabilità con codice non gestito. |
LCIDConversion |
Indica che la firma non gestita di un metodo prevede un parametro LCID (Locale Identifier). |
Library |
Indica che un generatore di origine deve creare una funzione per gli argomenti di marshalling anziché basarsi sul runtime per generare una funzione di marshalling equivalente in fase di esecuzione. |
Managed |
Fornisce supporto per la personalizzazione degli stub di interoperabilità in scenari di interoperabilità da gestito a COM. |
Marshal |
Fornisce una raccolta di metodi per l'allocazione di memoria non gestita, la copia di blocchi di memoria non gestiti e la conversione in tipi non gestiti, nonché altri metodi esterni utilizzati durante l'interazione con codice non gestito. |
Marshal |
Indica come effettuare il marshalling dei dati tra codice gestito e non gestito. |
Marshal |
Eccezione generata dal gestore di marshalling quando rileva un MarshalAsAttribute non supportato. |
Memory |
Fornisce metodi per interagire con Memory<T>, ReadOnlyMemory<T>, Span<T>e ReadOnlySpan<T>. |
Native |
Fornisce API per la gestione delle librerie native. |
Native |
Questa classe contiene metodi usati principalmente per gestire la memoria nativa. |
Optional |
Indica che un parametro è facoltativo. |
Out |
Indica che il marshalling dei dati deve essere eseguito dal chiamato al chiamante. |
Posix |
Fornisce dati per un evento PosixSignalRegistration. |
Posix |
Gestisce un PosixSignal. |
Preserve |
Indica che la trasformazione della firma HRESULT che viene eseguita durante le chiamate di interoperabilità COM deve essere eliminata. |
Primary |
Indica che l'assembly con attributi è un assembly di interoperabilità primario. |
Prog |
Consente all'utente di specificare il ProgID di una classe. |
Registration |
Fornisce un set di servizi per la registrazione e l'annullamento della registrazione di assembly gestiti da COM. |
Runtime |
Fornisce una raccolta di metodi |
Runtime |
Fornisce informazioni sull'installazione del runtime .NET. |
Safe |
Eccezione generata quando la classificazione di un |
Safe |
Eccezione generata quando il tipo del |
Safe |
Fornisce un buffer di memoria controllato che può essere utilizzato per la lettura e la scrittura. I tentativi di accedere alla memoria all'esterno del buffer controllato (sottorun e sovraccarichi) generano eccezioni. |
Safe |
Rappresenta una classe wrapper per gli handle del sistema operativo. Questa classe deve essere ereditata. |
SEHException |
Rappresenta gli errori seh (Structured Exception Handling). |
Sequence |
Fornisce una raccolta di metodi per l'interoperabilità con ReadOnlySequence<T>. |
Set |
Questo attributo è stato deprecato. |
Standard |
Sostituisce il gestore di marshalling senza thread (CLR) standard con il gestore di marshalling OLE STA standard. |
Struct |
Consente di controllare il layout fisico dei campi dati di una classe o di una struttura in memoria. |
Suppress |
Indica che una transizione di Garbage Collection deve essere ignorata quando viene effettuata una chiamata di funzione non gestita. |
Type |
Fornisce supporto per l'equivalenza del tipo. |
Type |
Fornisce un set di servizi che converte un assembly gestito in una libreria dei tipi COM e viceversa. |
Type |
Contiene le FUNCFLAGS importate originariamente per questo metodo dalla libreria dei tipi COM. |
Type |
Specifica quale Type usa esclusivamente un'interfaccia. Questa classe non può essere ereditata. |
Type |
Contiene le TYPEFLAGS importate originariamente per questo tipo dalla libreria dei tipi COM. |
Type |
Contiene le VARFLAGS importate originariamente per questo campo dalla libreria dei tipi COM. |
Type |
Specifica il numero di versione di una libreria dei tipi esportata. |
Unknown |
Esegue il wrapping degli oggetti che il gestore di marshalling deve eseguire il marshalling come |
Unmanaged |
Specifica la convenzione di chiamata necessaria per chiamare i metodi P/Invoke implementati nel codice non gestito. |
Unmanaged |
Qualsiasi metodo contrassegnato con UnmanagedCallersOnlyAttribute può essere chiamato direttamente dal codice nativo. Il token di funzione può essere caricato in una variabile locale usando l'operatore address-of in C# e passato come callback a un metodo nativo. |
Unmanaged |
Controlla il comportamento di marshalling di una firma del delegato passato come puntatore di funzione non gestito a o da codice non gestito. Questa classe non può essere ereditata. |
Variant |
Effettua il marshalling dei dati di tipo |
Wasm |
Specifica che il P/Invoke contrassegnato con questo attributo deve essere collegato come importazione WASM. |
Array |
Incapsula una matrice e un offset all'interno della matrice specificata. |
BIND_OPTS |
Usare invece BIND_OPTS. |
BINDPTR |
Usare invece BINDPTR. |
CLong |
CLong è un tipo valore non modificabile che rappresenta il tipo di |
Com |
Interfaccia binaria dell'applicazione per l'invio di funzioni di un'interfaccia COM. |
Com |
Tipo di interfaccia e puntatore alla VTable di destinazione. |
CONNECTDATA |
Usare invece CONNECTDATA. |
CULong |
CULong è un tipo valore non modificabile che rappresenta il tipo di |
DISPPARAMS |
Usare invece DISPPARAMS. |
ELEMDESC |
Usare invece ELEMDESC. |
ELEMDESC. |
Usare invece ELEMDESC.DESCUNION. |
EXCEPINFO |
Usare invece EXCEPINFO. |
FILETIME |
Usare invece FILETIME. |
FUNCDESC |
Usare invece FUNCDESC. |
GCHandle |
Fornisce un modo per accedere a un oggetto gestito dalla memoria non gestita. |
Handle |
Esegue il wrapping di un oggetto gestito che contiene un handle a una risorsa passata al codice non gestito tramite platform invoke. |
IDLDESC |
Usare invece IDLDESC. |
NFloat |
NFloat è un tipo valore non modificabile che rappresenta un tipo mobile con le stesse dimensioni dell'intero nativo.
È progettato per essere usato come tipo di scambio al limite gestito/non gestito per rappresentare in modo accurato le API non gestite del codice gestito che usano un alias di tipo per il |
OSPlatform |
Rappresenta una piattaforma del sistema operativo. |
PARAMDESC |
Usare invece PARAMDESC. |
STATSTG |
Usare invece STATSTG. |
TYPEATTR |
Usare invece TYPEATTR. |
TYPEDESC |
Usare invece TYPEDESC. |
TYPELIBATTR |
Usare invece TYPELIBATTR. |
VARDESC |
Usare invece VARDESC. |
VARDESC. |
Usare invece VARDESC.DESCUNION. |
_Activator |
Espone la classe Activator al codice non gestito. |
_Assembly |
Espone i membri pubblici della classe Assembly al codice non gestito. |
_Assembly |
Espone la classe AssemblyBuilder al codice non gestito. |
_Assembly |
Espone la classe AssemblyName al codice non gestito. |
_Attribute |
Espone la classe Attribute al codice non gestito. |
_Constructor |
Espone la classe ConstructorBuilder al codice non gestito. |
_Constructor |
Espone i membri pubblici della classe ConstructorInfo al codice non gestito. |
_Custom |
Espone la classe CustomAttributeBuilder al codice non gestito. |
_Enum |
Espone la classe EnumBuilder al codice non gestito. |
_Event |
Espone la classe EventBuilder al codice non gestito. |
_Event |
Espone i membri pubblici della classe EventInfo al codice non gestito. |
_Exception |
Espone i membri pubblici della classe Exception al codice non gestito. |
_Field |
Espone la classe FieldBuilder al codice non gestito. |
_Field |
Espone i membri pubblici della classe FieldInfo al codice non gestito. |
_ILGenerator |
Espone la classe ILGenerator al codice non gestito. |
_Local |
Espone la classe LocalBuilder al codice non gestito. |
_Member |
Espone i membri pubblici della classe MemberInfo al codice non gestito. |
_Method |
Espone i membri pubblici della classe MethodBase al codice non gestito. |
_Method |
Espone la classe MethodBuilder al codice non gestito. |
_Method |
Espone i membri pubblici della classe MethodInfo al codice non gestito. |
_Method |
Espone la classe MethodRental al codice non gestito. |
_Module |
Espone la classe Module al codice non gestito. |
_Module |
Espone la classe ModuleBuilder al codice non gestito. |
_Parameter |
Espone la classe ParameterBuilder al codice non gestito. |
_Parameter |
Espone la classe ParameterInfo al codice non gestito. |
_Property |
Espone la classe PropertyBuilder al codice non gestito. |
_Property |
Espone i membri pubblici della classe PropertyInfo al codice non gestito. |
_Signature |
Espone la classe SignatureHelper al codice non gestito. |
_Thread |
Espone la classe Thread al codice non gestito. |
_Type |
Espone i membri pubblici della classe Type al codice non gestito. |
_Type |
Espone la classe TypeBuilder al codice non gestito. |
ICustom |
Consente ai client di accedere all'oggetto effettivo anziché all'oggetto adapter distribuito da un gestore di marshalling personalizzato. |
ICustom |
Consente agli utenti di scrivere codice di attivazione per gli oggetti gestiti che estendono MarshalByRefObject. |
ICustom |
Fornisce wrapper personalizzati per la gestione delle chiamate ai metodi. |
ICustom |
Consente agli sviluppatori di fornire un'implementazione gestita personalizzata del metodo IUnknown::QueryInterface(REFIID riid, void **ppvObject). |
IDynamic |
Interfaccia usata per partecipare a un errore di cast del tipo. |
IRegistration |
Fornisce un set di servizi per la registrazione e l'annullamento della registrazione di assembly gestiti da COM. |
IType |
Fornisce un set di servizi che converte un assembly gestito in una libreria dei tipi COM e viceversa. |
IType |
Fornisce il controllo sulla combinazione di maiuscole e minuscole di nomi quando viene esportata in una libreria dei tipi. |
IType |
Fornisce un meccanismo di callback per il convertitore di assembly per informare il chiamante dello stato della conversione e coinvolgere il chiamante nel processo di conversione stesso. |
IType |
Fornisce un meccanismo di callback per il convertitore di librerie dei tipi per informare il chiamante dello stato della conversione e coinvolgere il chiamante nel processo di conversione stesso. |
UCOMIBind |
Usare invece BIND_OPTS. |
UCOMIConnection |
Usare invece IConnectionPoint. |
UCOMIConnection |
Usare invece IConnectionPointContainer. |
UCOMIEnum |
Usare invece IEnumConnectionPoints. |
UCOMIEnum |
Usare invece IEnumConnections. |
UCOMIEnum |
Usare invece IEnumMoniker. |
UCOMIEnum |
Usare invece IEnumString. |
UCOMIEnumVARIANT |
Usare invece IEnumVARIANT. |
UCOMIMoniker |
Usare invece IMoniker. |
UCOMIPersist |
Usare invece IPersistFile. |
UCOMIRunning |
Usare invece IRunningObjectTable. |
UCOMIStream |
Usare invece IStream. |
UCOMIType |
Usare invece ITypeComp. |
UCOMIType |
Usare invece ITypeInfo. |
UCOMIType |
Usare invece ITypeLib. |
Architecture |
Indica l'architettura del processore. |
Assembly |
Definisce un set di flag utilizzati per la registrazione di assembly. |
CALLCONV |
Usare invece CALLCONV. |
Calling |
Specifica la convenzione di chiamata necessaria per chiamare i metodi implementati nel codice non gestito. |
Char |
Determina quale set di caratteri deve usare per le stringhe con marshalling. |
Class |
Identifica il tipo di interfaccia di classe generata per una classe. |
Com |
Identifica come esporre un'interfaccia a COM. |
Com |
Descrive il tipo di un membro COM. |
Create |
Specifica i flag per il metodo GetOrCreateComInterfaceForObject(Object, CreateComInterfaceFlags). |
Create |
Specifica i flag per il metodo GetOrCreateObjectForComInstance(IntPtr, CreateObjectFlags). |
Custom |
Indica se le chiamate del metodo |
Custom |
Fornisce i valori restituiti per il metodo GetInterface(Guid, IntPtr). |
DESCKIND |
Usare invece DESCKIND. |
Dll |
Specifica i percorsi usati per la ricerca di DLL che forniscono funzioni per le chiamate della piattaforma. |
Exporter |
Descrive i callback usata dall'utilità di esportazione della libreria dei tipi durante l'esportazione di una libreria dei tipi. |
FUNCFLAGS |
Usare invece FUNCFLAGS. |
FUNCKIND |
Usare invece FUNCKIND. |
GCHandle |
Rappresenta i tipi di handle che il tipo di GCHandle può allocare. |
IDispatch |
Indica quale |
IDLFLAG |
Usare invece IDLFLAG. |
IMPLTYPEFLAGS |
Usare invece IMPLTYPEFLAGS. |
Importer |
Descrive i callback usata dall'utilità di importazione della libreria dei tipi durante l'importazione di una libreria dei tipi. |
INVOKEKIND |
Usare invece INVOKEKIND. |
Layout |
Controlla il layout di un oggetto quando viene esportato in codice non gestito. |
LIBFLAGS |
Usare invece LIBFLAGS. |
PARAMFLAG |
Usare invece PARAMFLAG. |
Posix |
Specifica un numero di segnale POSIX. |
Registration |
Specifica il set di contesti di esecuzione in cui verrà reso disponibile un oggetto classe per le richieste di costruzione di istanze. |
Registration |
Definisce i tipi di connessioni a un oggetto classe. |
String |
Specifica la modalità di marshalling delle stringhe per i p/invoke generati |
SYSKIND |
Usare invece SYSKIND. |
TYPEFLAGS |
Usare invece TYPEFLAGS. |
TYPEKIND |
Usare invece TYPEKIND. |
Type |
Indica come deve essere prodotta una libreria dei tipi. |
Type |
Descrive le impostazioni originali del |
Type |
Indica come deve essere prodotto un assembly. |
Type |
Descrive le impostazioni originali del TYPEFLAGS nella libreria dei tipi COM da cui è stato importato il tipo. |
Type |
Descrive le impostazioni originali del VARFLAGS nella libreria dei tipi COM da cui è stata importata la variabile. |
Unmanaged |
Identifica come effettuare il marshalling di parametri o campi nel codice non gestito. |
Var |
Indica come effettuare il marshalling degli elementi della matrice quando viene eseguito il marshalling di una matrice da codice gestito a codice non gestito come SafeArray. |
VARFLAGS |
Usare invece VARFLAGS. |
Dll |
Fornisce un delegato usato per risolvere le librerie native tramite callback. |
Object |
Crea un oggetto COM. |
I membri di questo spazio dei nomi forniscono diverse categorie di funzionalità, come illustrato nella tabella seguente. Gli attributi controllano il comportamento di marshalling, ad esempio come disporre le strutture o come rappresentare le stringhe. Gli attributi più importanti sono DllImportAttribute, che vengono usati per definire i metodi platform invoke per l'accesso alle API non gestite e MarshalAsAttribute, che viene usato per specificare il marshalling dei dati tra la memoria gestita e quella non gestita.
Feedback su .NET
.NET è un progetto di open source. Selezionare un collegamento per fornire feedback: