关于AppDomain 创建实例进行程序集之间的通讯问题
2008-11-21 15:16
627 查看
各位高手们,我在用AppDomain 的CreateInstanceFromAndUnwrap 创建一个实例进行程序之间的通讯时,会抛异常,提示"Constructor on type 'DllResource.DeriveClass' not found.",代码如下:
private BaseClass GetTrigger(string FileName)//返回指定文件的TriggerDesignerFacade
{
try
{
AppDomainSetup info = new AppDomainSetup();
info.ApplicationName = "Load";
AllTriggersDomain = AppDomain.CreateDomain(FileName, null, info);
Domains.Add(FileName, AllTriggersDomain);
object[] parms = { FileName };
BindingFlags bindings = BindingFlags.CreateInstance | BindingFlags.Instance | BindingFlags.Public;
//创建实践实现程序集之间的通讯
var Trigger = (BaseClass)AllTriggersDomain.CreateInstanceFromAndUnwrap(FileName,
"DllResource.DeriveClass", true, bindings, null, parms, null, null, null);
//Assembly aDll = Trigger.GetLoadAssembly(FileName);
//var rc = (BaseClass)aDll.CreateInstance("DllResource.DeriveClass");
//rc.SetSettingFolder(System.IO.Path.GetDirectoryName(FileName));
//return rc;
return null;
}
catch
{
return null;
}
}
我想调用抽象类进行通讯,可是创建实例时失败,在这里BaseClass 是基类(抽象类) DeriveClass 是继承类;
我把这行代码改成:
var Trigger = (BaseClass)AllTriggersDomain.CreateInstanceFromAndUnwrap(FileName,
"DllResource.BaseClass", true, bindings, null, parms, null, null, null);
也是一样提示:"Constructor on type 'DllResource.BaseClass' not found."
下面是我的继承类和基类的代码:
继承类:
namespace DllResource
{
class DeriveClass : BaseClass
{
public DeriveClass ()
{
}
public override void Display()
{
throw new NotImplementedException();
}
public override int Counter(int num)
{
return num++;
}
}
}
基础类:
namespace DllResource
{
public abstract class BaseClass
{
public abstract void Display();
public abstract int Counter(int num);
}
}
不知道怎么解决,请各位高手指点,在线等...................
private BaseClass GetTrigger(string FileName)//返回指定文件的TriggerDesignerFacade
{
try
{
AppDomainSetup info = new AppDomainSetup();
info.ApplicationName = "Load";
AllTriggersDomain = AppDomain.CreateDomain(FileName, null, info);
Domains.Add(FileName, AllTriggersDomain);
object[] parms = { FileName };
BindingFlags bindings = BindingFlags.CreateInstance | BindingFlags.Instance | BindingFlags.Public;
//创建实践实现程序集之间的通讯
var Trigger = (BaseClass)AllTriggersDomain.CreateInstanceFromAndUnwrap(FileName,
"DllResource.DeriveClass", true, bindings, null, parms, null, null, null);
//Assembly aDll = Trigger.GetLoadAssembly(FileName);
//var rc = (BaseClass)aDll.CreateInstance("DllResource.DeriveClass");
//rc.SetSettingFolder(System.IO.Path.GetDirectoryName(FileName));
//return rc;
return null;
}
catch
{
return null;
}
}
我想调用抽象类进行通讯,可是创建实例时失败,在这里BaseClass 是基类(抽象类) DeriveClass 是继承类;
我把这行代码改成:
var Trigger = (BaseClass)AllTriggersDomain.CreateInstanceFromAndUnwrap(FileName,
"DllResource.BaseClass", true, bindings, null, parms, null, null, null);
也是一样提示:"Constructor on type 'DllResource.BaseClass' not found."
下面是我的继承类和基类的代码:
继承类:
namespace DllResource
{
class DeriveClass : BaseClass
{
public DeriveClass ()
{
}
public override void Display()
{
throw new NotImplementedException();
}
public override int Counter(int num)
{
return num++;
}
}
}
基础类:
namespace DllResource
{
public abstract class BaseClass
{
public abstract void Display();
public abstract int Counter(int num);
}
}
不知道怎么解决,请各位高手指点,在线等...................
相关文章推荐
- 关于新版ADT(20140321)创建项目时出现appcompat_v7的问题
- 关于在不同版本和平台之间进行还原或复制的常见问题
- 关于新版ADT每次创建项目都出现appcompat_v7的问题
- 关于MFC DLL CWinApp::InitInstance()中创建线程的问题 易造成死锁
- 关于新版ADT创建项目时出现appcompat_v7的问题
- 进程之间及跨进程的Appdomain之间通讯方式
- C#项目中关于多个程序集下App.config文件的问题
- 关于Eclipse创建Android项目时,会多出一个appcompat_v7的问题
- 关于新版ADT创建项目时出现appcompat_v7的问题
- 关于新版ADT创建项目时出现appcompat_v7的问题
- 关于ORACLE数据库之间创建DBLINK的问题
- 关于Eclipse创建Android项目时,会多出一个appcompat_v7的问题
- 关于如何从多个项目创建 ASP.NET 应用程序以进行组开发问题
- 转://【MOS】关于在不同版本和平台之间进行还原或复制的常见问题 (文档 ID 1526162.1)--跨版本恢复
- 关于新版ADT每次创建项目都出现appcompat_v7的问题
- 关于Eclipse创建Android项目时,会多出一个appcompat_v7的问题
- 关于新版ADT创建项目时出现appcompat_v7的问题
- 关于Eclipse创建Android项目时,会多出一个appcompat_v7的问题
- 关于Eclipse创建Android项目时,会多出一个appcompat_v7的问题
- 关于新版ADT创建项目时出现appcompat_v7的问题