Ayuda con Assembly y createInstance
Publicado por Javi (14 intervenciones) el 25/09/2004 12:39:52
Hola, kiero que mi aplicación pueda cargar clases dinámicamete. Estas clases derivarán de una clase que tengo en mi aplicación (clase TAD).
Para probar todo esto lo que he hecho es hacer una dll (Prueba.dll) con una clase de este tipo (deriva de TAD). Y hago lo siguiente:
// Cargo la dll
Assembly miDLL = Assembly.LoadFrom("Prueba.dll");
Una vez tengo localizado el tipo del que quiero instanciar un objeto TAD en la variable "t" hago lo siguiente (t.FullName será la clase que deriva de TAD):
TAD miTAD = (TAD) miDLL.CreateInstance(t.FullName,false,BindingFlags.Default,null,args,null,null);
Aquí es donde tengo el problema, me salta la excepción de InvalidCastException y me dice que no estoy haciendo un cast correcto. No lo entiendo porque la clase TAD de la dll es la misma que la que tengo en mi aplicación.
No sé si lo entenderá alguien pero GRACIAS de todas formas.
Un saludo, Javi.
Para probar todo esto lo que he hecho es hacer una dll (Prueba.dll) con una clase de este tipo (deriva de TAD). Y hago lo siguiente:
// Cargo la dll
Assembly miDLL = Assembly.LoadFrom("Prueba.dll");
Una vez tengo localizado el tipo del que quiero instanciar un objeto TAD en la variable "t" hago lo siguiente (t.FullName será la clase que deriva de TAD):
TAD miTAD = (TAD) miDLL.CreateInstance(t.FullName,false,BindingFlags.Default,null,args,null,null);
Aquí es donde tengo el problema, me salta la excepción de InvalidCastException y me dice que no estoy haciendo un cast correcto. No lo entiendo porque la clase TAD de la dll es la misma que la que tengo en mi aplicación.
No sé si lo entenderá alguien pero GRACIAS de todas formas.
Un saludo, Javi.
Valora esta pregunta


0