AppDomain.Execute程序集被卡住
本文关键字:程序集 Execute AppDomain | 更新日期: 2023-09-27 18:27:38
仅此命令ExecuteAssembly
就有问题我让我的应用程序运行管道流数据,然后我切换到使用网络命名管道的wcf。这与这个问题无关。
一旦启动,服务器就会执行一些操作,其中之一就是执行运行客户端并连接到服务器的程序集。
代码:
String modulePath = (String)path;
AppDomainSetup objDomainSetup = new AppDomainSetup() { ApplicationBase = Path.GetDirectoryName(modulePath) };
string moduleConfigPath = String.Format("{0}.config", modulePath);
if (File.Exists(moduleConfigPath))
{
// This is important... in case the loding module has a configuration file.
objDomainSetup.ConfigurationFile = moduleConfigPath;
}
//We give the new app domain the same permission its parent has.
System.Security.Policy.Evidence baseEvidence = AppDomain.CurrentDomain.Evidence;
System.Security.Policy.Evidence objEvidence = new System.Security.Policy.Evidence(baseEvidence);
objModuleDomain = AppDomain.CreateDomain(ChannelName, objEvidence, objDomainSetup);
objModuleDomain.ExecuteAssembly(modulePath);
我检查了路径,一切似乎都是正确的,从路径指向的.exe被执行了。但是ExecuteAssembly被卡住了,下面的语句没有执行。
有什么猜测吗?感谢
AppDomain.ExecuteAssembly()
执行程序集,并在程序集.exe
完成时完成。我有一个睡眠(无限),使集会没有结束。