Activator.CreateComInstanceFrom Method (String, String, Byte[], AssemblyHashAlgorithm)

 

Creates an instance of the COM object whose name is specified, using the named assembly file and the default constructor.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

static member CreateComInstanceFrom : 
        assemblyName:string *
        typeName:string *
        hashValue:byte[] *
        hashAlgorithm:AssemblyHashAlgorithm -> ObjectHandle

Parameters

assemblyName
Type: System.String

The name of a file that contains an assembly where the type named typeName is sought.

typeName
Type: System.String

The name of the preferred type.

hashValue
Type: System.Byte[]

The value of the computed hash code.

hashAlgorithm
Type: System.Configuration.Assemblies.AssemblyHashAlgorithm

The hash algorithm used for hashing files and generating the strong name.

Return Value

Type: System.Runtime.Remoting.ObjectHandle

A handle that must be unwrapped to access the newly created instance.

Exception Condition
ArgumentNullException

typeName or assemblyName is null.

ArgumentException

assemblyName is the empty string ("").

PathTooLongException

An assembly or module was loaded twice with two different evidences, or the assembly name is longer than MAX_PATH characters.

FileNotFoundException

assemblyName is not found, or the module you are trying to load does not specify a file name extension.

FileLoadException

assemblyName is found but cannot be loaded.

BadImageFormatException

assemblyName is not a valid assembly.

SecurityException

A code base that does not start with "file://" was specified without the required WebPermission.

TypeLoadException

An instance cannot be created through COM.

-or-

typename was not found in assemblyName.

MissingMethodException

No matching constructor was found.

MemberAccessException

An instance of an abstract class cannot be created.

-or-

This member was invoked with a late-binding mechanism.

NotSupportedException

The caller cannot provide activation attributes for an object that does not inherit from MarshalByRefObject.

Use the ObjectHandle.Unwrap method to unwrap the return value.

A System.Runtime.InteropServices.ComVisibleAttribute attribute with a value of true must be applied either explicitly or by default to the COM type so the CreateComInstanceFrom method can create an instance of that type; otherwise, TypeLoadException is thrown.

For information about other exceptions that can be thrown by invoked methods, see the Exceptions section of the Assembly.LoadFrom and CreateInstance methods.

System_CAPS_noteNote

Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to create nonpublic types if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the assembly that contains the nonpublic types is restricted to the caller’s grant set or to a subset thereof. (See Security Considerations for Reflection.)

To use this functionality, your application should target the .NET Framework 3.5 or later. 

ReflectionPermission

when invoked late-bound through mechanisms such as Type.InvokeMember. Associated enumeration: ReflectionPermissionFlag.MemberAccess

FileIOPermission

for reading a URI that begins with "file://". Associated enumeration: FileIOPermissionAccess.Read

WebPermission

for reading a URI that does not begin with "file://".

ReflectionPermission

for accessing a nonpublic type when the grant set of the nonpublic type is restricted to the caller's grant set or to a subset thereof. Associated enumeration: ReflectionPermissionFlag.RestrictedMemberAccess

ReflectionPermission

for accessing nonpublic types regardless of their grant set. Associated enumeration: ReflectionPermissionFlag.MemberAccess

.NET Framework
Available since 1.1
Return to top
Show: