AppDomain.CreateInstanceFrom Method (String, String, Object[])

Creates a new instance of the specified type defined in the specified assembly file.

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

public ObjectHandle CreateInstanceFrom (
	string assemblyFile,
	string typeName,
	Object[] activationAttributes
public final ObjectHandle CreateInstanceFrom (
	String assemblyFile, 
	String typeName, 
	Object[] activationAttributes
public final function CreateInstanceFrom (
	assemblyFile : String, 
	typeName : String, 
	activationAttributes : Object[]
) : ObjectHandle



The name of a file that contains an assembly that defines the requested type.


The fully qualified name of the requested type, including the namespace but not the assembly, as returned by the Type.FullName property.


One or more attributes that can participate in activation.

Return Value

An object that is a wrapper for the new instance, or a null reference (Nothing in Visual Basic) if typeName is not found. The return value needs to be unwrapped to access the real object.

Exception typeCondition


assemblyFile is a null reference (Nothing in Visual Basic).


assemblyFile was not found.


typeName was not found in assemblyFile.


The caller does not have sufficient permission to call this constructor.


No matching public constructor was found.


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


Operations are attempted on an unloaded application domain.


assemblyFile is not a valid assembly.


An assembly or module was loaded twice with two different evidences.

The default constructor for typeName is invoked.

For more information, see the Activator.CreateInstanceFrom method.

An attempt to call CreateInstanceFrom on a target application domain that is not the current application domain will result in a successful load of the assembly in the target application domain. Since an Assembly is not MarshalByRefObject, when this method attempts to return the Assembly for the loaded assembly to the current application domain, the common language runtime will try to load the assembly into the current application domain and the load might fail. The assembly that is loaded into the current application domain might be different from the assembly that was loaded first if the path settings for the two application domains are different.

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0