title: Can I make the default AppDomain use shadow copies of certain assemblies?
body: <p>A short explanation of why I want to do this:</p>
  
  <p>I am busy writing a plugin for Autodesk Revit Architecture 2010. Testing my plugin code is extremly cumbersome, as I have to restart Autodesk for each debug session, manually load a Revit project, click on the Add-Ins tab and then start my plugin. This is just taking too long.</p>
  
  <p>I have written a second plugin that hosts an IronPython interpreter. This way, I can play around with the API provided by Revit. But eventually, the code has to be rewritten in C# - and debugged.</p>
  
  <p>Easy, I thought: Just load the plugins DLL from the IronPython script and exercise it. This does work, but once loaded, I cannot recompile in Visual Studio, as the DLL is now loaded in Revits AppDomain.</p>
  
  <p>Easy, I thought (with a little help from StackOverflow): Just load the DLL in a new AppDomain. Alas, the RevitAPI objects can't be marshaled to another AppDomain, as they don't extend <code>MarshalByRefObject</code>.</p>
  
  <p>I think I might be onto something with shadow copies. ASP.NET seems to be doing this. But reading the documentation on MSDN, it seems I can only specify this when <em>creating</em> an AppDomain.</p>
  
  <p>Can I change this for the current (default) AppDomain? Can I force it to use shadow copies of DLLs from a specific directory?</p>