Activator.CreateComInstanceFrom Metodo
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.
Crea un'istanza dell'oggetto COM il cui nome è specificato.
Overload
CreateComInstanceFrom(String, String) |
Crea un'istanza dell'oggetto COM il cui nome viene specificato, usando il file di assembly denominato e il costruttore senza parametri. |
CreateComInstanceFrom(String, String, Byte[], AssemblyHashAlgorithm) |
Crea un'istanza dell'oggetto COM il cui nome viene specificato, usando il file di assembly denominato e il costruttore senza parametri. |
CreateComInstanceFrom(String, String)
Crea un'istanza dell'oggetto COM il cui nome viene specificato, usando il file di assembly denominato e il costruttore senza parametri.
public:
static System::Runtime::Remoting::ObjectHandle ^ CreateComInstanceFrom(System::String ^ assemblyName, System::String ^ typeName);
public static System.Runtime.Remoting.ObjectHandle CreateComInstanceFrom (string assemblyName, string typeName);
static member CreateComInstanceFrom : string * string -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateComInstanceFrom (assemblyName As String, typeName As String) As ObjectHandle
Parametri
- assemblyName
- String
Nome di un file contenente un assembly nel quale viene ricercato il tipo denominato typeName
.
- typeName
- String
Il nome del tipo di cui creare un'istanza.
Restituisce
Handle che deve essere annullato per accedere all'oggetto appena creato o null
per Nullable<T> le istanze.
Eccezioni
typeName
o assemblyName
è null
.
Non è possibile creare un'istanza tramite COM.
-oppure-
Non è possibile trovare typename
in assemblyName
.
Non è stato trovato alcun costruttore corrispondente.
assemblyName
non è stato trovato oppure il modulo che si sta provando a caricare non specifica un'estensione di file.
Non è possibile creare un'istanza di una classe astratta.
-oppure-
Questo membro è stato richiamato con un meccanismo di associazione tardiva.
Il chiamante non può fornire attributi di attivazione per un oggetto che non eredita da MarshalByRefObject.
assemblyName
è la stringa vuota ("").
Commenti
Utilizzare il metodo per annullare il ObjectHandle.Unwrap valore restituito.
Un System.Runtime.InteropServices.ComVisibleAttribute attributo con un valore di true
deve essere applicato in modo esplicito o per impostazione predefinita al tipo COM in modo che il CreateComInstanceFrom metodo possa creare un'istanza di tale tipo. In caso contrario, TypeLoadException viene generata.
Per informazioni su altre eccezioni che possono essere generate dai metodi richiamati, vedere la sezione Eccezioni dei Assembly.LoadFrom metodi e CreateInstance .
Nota
A partire da .NET Framework 2.0, questo metodo può essere usato per creare tipi non pubblici se il chiamante è stato concesso ReflectionPermission con il ReflectionPermissionFlag.RestrictedMemberAccess flag e se il set di concessione dell'assembly che contiene i tipi non pubblici è limitato al set di concessione del chiamante o a un subset. Vedere Considerazioni sulla sicurezza per Reflection. Per usare questa funzionalità, l'applicazione deve essere di destinazione .NET Framework 3.5 o successiva.
Si applica a
CreateComInstanceFrom(String, String, Byte[], AssemblyHashAlgorithm)
Crea un'istanza dell'oggetto COM il cui nome viene specificato, usando il file di assembly denominato e il costruttore senza parametri.
public:
static System::Runtime::Remoting::ObjectHandle ^ CreateComInstanceFrom(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Byte> ^ hashValue, System::Configuration::Assemblies::AssemblyHashAlgorithm hashAlgorithm);
public static System.Runtime.Remoting.ObjectHandle CreateComInstanceFrom (string assemblyName, string typeName, byte[] hashValue, System.Configuration.Assemblies.AssemblyHashAlgorithm hashAlgorithm);
static member CreateComInstanceFrom : string * string * byte[] * System.Configuration.Assemblies.AssemblyHashAlgorithm -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateComInstanceFrom (assemblyName As String, typeName As String, hashValue As Byte(), hashAlgorithm As AssemblyHashAlgorithm) As ObjectHandle
Parametri
- assemblyName
- String
Nome di un file contenente un assembly nel quale viene ricercato il tipo denominato typeName
.
- typeName
- String
Il nome del tipo di cui creare un'istanza.
- hashValue
- Byte[]
Valore del codice hash calcolato.
- hashAlgorithm
- AssemblyHashAlgorithm
Algoritmo hash usato per generare un hash per i file e generare il nome sicuro.
Restituisce
Handle che deve essere annullato per accedere all'oggetto appena creato o null
per Nullable<T> le istanze.
Eccezioni
typeName
o assemblyName
è null
.
assemblyName
è la stringa vuota ("").
Un assembly o un modulo è stato caricato due volte con due evidenze diverse.
-oppure-
assemblyName
è maggiore della lunghezza massima definita nel sistema.
assemblyName
non è stato trovato oppure il modulo che si sta provando a caricare non specifica un'estensione di file.
assemblyName
è stato trovato, ma non può essere caricato.
assemblyName
non è un assembly valido.
È stata specificata una codebase che non inizia con "file://" senza l'oggetto WebPermission
richiesto.
Non è possibile creare un'istanza tramite COM.
-oppure-
Non è possibile trovare typename
in assemblyName
.
Non è stato trovato alcun costruttore corrispondente.
Non è possibile creare un'istanza di una classe astratta.
-oppure-
Questo membro è stato richiamato con un meccanismo di associazione tardiva.
Il chiamante non può fornire attributi di attivazione per un oggetto che non eredita da MarshalByRefObject.
Commenti
Utilizzare il metodo per annullare il ObjectHandle.Unwrap valore restituito.
Un System.Runtime.InteropServices.ComVisibleAttribute attributo con un valore di true
deve essere applicato in modo esplicito o per impostazione predefinita al tipo COM in modo che il CreateComInstanceFrom metodo possa creare un'istanza di tale tipo. In caso contrario, TypeLoadException viene generata.
Per informazioni su altre eccezioni che possono essere generate dai metodi richiamati, vedere la sezione Eccezioni dei Assembly.LoadFrom metodi e CreateInstance .
Nota
A partire da .NET Framework 2.0, questo metodo può essere usato per creare tipi non pubblici se il chiamante è stato concesso ReflectionPermission con il ReflectionPermissionFlag.RestrictedMemberAccess flag e se il set di concessione dell'assembly che contiene i tipi non pubblici è limitato al set di concessione del chiamante o a un subset. Vedere Considerazioni sulla sicurezza per Reflection. Per usare questa funzionalità, l'applicazione deve essere di destinazione .NET Framework 3.5 o successiva.
Si applica a
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per