appdomains之间的独立工作目录

时间:2011-01-20 06:27:29

标签: appdomain working-directory

我有一个.NET应用程序,它创建了几个单独的AppDomain来运行一些可插入的代码,每个AppDomains都设置了自己的WCF命名管道服务,以便与中央应用程序进行通信。

但是我想为每个AppDomain设置一个不同的工作目录,以便每个应用程序域中任何相对路径的基本文件夹都不同。因此,这些插件可以通过“./MyCustomFolder”以所有正常的文件处理方式创建自己的文件夹结构。

不幸的是我发现Directory.SetWorkingDirectory()正在为整个过程设置它(不是孤立到单个app域)这导致一些插件在其他插件目录中写入。

是否可以更改不同AppDomains的工作目录,或者我是否需要启动全新流程来完成我之后的工作?如果我想要以稳定的方式有效地管理父/子过程,那么我需要整个过程来做我想做的事吗?

1 个答案:

答案 0 :(得分:0)

CurrentDirectory(或WorkingDirectory)是每个进程。

但是,您可以在创建应用程序域时设置程序集探测路径。查看AppDomainSetup类。