乍一看,我的问题似乎是一个普遍存在的问题:我在一些项目中有一个自定义的MS Build任务。一旦我编译了这些项目,我就不能再编译构建任务了——构建任务程序集被Visual Studio锁定。
我在这里找到了很多帖子都说“只需从AppDomainIsolatedTask继承即可”。
我的任务已经这么做了。程序集中除了这个任务什么也没有。AppDomain似乎已经被卸载了,至少已触发了DomainUnload事件。而且,相关程序集已正确卸载。
然而,包含构建任务本身的程序集被devenv.exe锁定了(我用ProcessExplorer进行了双重检查)。
我找到了另一个帖子说“将GenerateResourceNeverLockTypeAssemblies属性设置为true”,听起来很有希望,但也没有帮助。
所以,我想知道还可能出现什么问题。无论我使用VS2008还是2010,行为都是相同的。