<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx</link><description>We frequently get asked why you cannot unload an assembly from an app domain. After all, you can do a FreeLibrary() in unmanaged code to unload a DLL, and the CLR is just using DLL's right? Reasons to Want to Unload There are generally two reasons that</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145118</link><pubDate>Tue, 01 Jun 2004 00:03:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145118</guid><dc:creator>Francis</dc:creator><description>Jason, to be honest this SUCKS BIG TIME. Whatever the technical difficulties are you should try and get them resolved. We are not going turn our app into a big mess and debug app domain leaks (to anyone planning to architect apps around app domains: don't even think about it). Instead we decided to cut the add-in feature we wanted to do and we are telling our users that this is not possible with the .NET Framework.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145119</link><pubDate>Tue, 01 Jun 2004 00:07:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145119</guid><dc:creator>Francis</dc:creator><description>Also, thanks a lot for explaining this. It helps a lot to know this won't be repaired anytime soon.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145120</link><pubDate>Tue, 01 Jun 2004 00:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145120</guid><dc:creator>zia</dc:creator><description>I agree this is one of the biggest flaws in .NET design. We also chose not to use .NET for a project because of this.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145126</link><pubDate>Tue, 01 Jun 2004 00:42:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145126</guid><dc:creator>mirobin</dc:creator><description>If you really want to take the overhead hit of being able to load/unload single assemblies at a time, just write a simple wrapper class which manages the assembly -- loading, getting a reference to the assembly, and unloading it.  The wrapper class would be responsible for creating the AppDomain on the fly and destroying it when you wanted to 'unload' the assembly.&lt;br&gt;&lt;br&gt;This isn't hard stuff folks.&lt;br&gt;&lt;br&gt;Managing assemblies you want to unload in AppDomains actually makes things easier in some respects, depending on your application model.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145147</link><pubDate>Tue, 01 Jun 2004 01:55:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145147</guid><dc:creator>Jason Zander [MSFT]</dc:creator><description>I can see a lot of good passion around this one &amp;lt;g&amp;gt;&lt;br&gt;&lt;br&gt;Francis - I'd like to understand your concerns more.  In particular for an add-in model, the app domain model should be ideal.  For example, if I were going to host managed code in Outlook, I'd want to do it in an app domain where I could also lower the CAS permissions so that, for example, I could prevent add-in code from touching my address book and spawning a Melissa virus.  What is it about app domains that bugs you?  If we either gave a really great sample or even built some hosting into the CLR (think thread pool for app domains) would that help alleviate concerns?&lt;br&gt;&lt;br&gt;As mirobin suggests, you can abstract pieces of this too.  the one piece of the programming model that does get exposed in this case is inter-app domain remoting.  So depending on how you want to program against your objects you may need to inherit from MarshalByRef.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145166</link><pubDate>Tue, 01 Jun 2004 02:56:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145166</guid><dc:creator>David Levine</dc:creator><description>Jason, &lt;br&gt;&lt;br&gt;I use multiple appdomains all the time and I think it has worked out fairly well, but there are some issues and limitations. Hosting plugins in separate appdomains becomes difficult is there is extensive communication between the host and the plugin due to the remoting boundary. I'm also told that some limitations wont be resolved until Whidbey, such as the transitive loading of assemblies using custom evidence (e.g. different security zone), but right now it is a security hole.&lt;br&gt;&lt;br&gt;Right now I am trying to figure out how to use different binding redirects for each appdomain using app config files. Can this be done in v1.1? In other words, is there a way to have different appdomains use a different binding redirect policy for the same assembly?&lt;br&gt;&lt;br&gt;</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145173</link><pubDate>Tue, 01 Jun 2004 03:05:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145173</guid><dc:creator>Kerry Jenkins</dc:creator><description>I am writing a windows forms application that will house multiple MDI children applications each in their own assembly.  These MDI children are loaded dynamically.  I would like to be able to unload an assembly so that I can bring in a new version without having to take down the whole parent application.  I have attempted to put the MDI child in a separate appdomain but this is not possible due to WinForms serialzation problems.  An Assembly.Unload would be very helpful to me.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145204</link><pubDate>Tue, 01 Jun 2004 04:53:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145204</guid><dc:creator>Eric J. Smith</dc:creator><description>In my attempts to get CodeSmith templates to execute in another AppDomain, I basically ran into a brick wall because it was either impossible or just a TON or work to get an object in another AppDomain to be the selected object in a PropertyGrid instance.  If anyone knows of a way to do this, please contact me and let me know.  Here is a link to more information about the problem I am having:&lt;br&gt;&lt;a target="_new" href="http://weblogs.asp.net/ericjsmith/archive/2004/05/06/127185.aspx"&gt;http://weblogs.asp.net/ericjsmith/archive/2004/05/06/127185.aspx&lt;/a&gt;</description></item><item><title>Unloading Assemblies from an appDomain and IsolatedStorage paths.</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145219</link><pubDate>Tue, 01 Jun 2004 08:47:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145219</guid><dc:creator>ShowUsYour</dc:creator><description /></item><item><title>Unloading Assemblies from an appDomain and IsolatedStorage paths.</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145229</link><pubDate>Tue, 01 Jun 2004 09:06:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145229</guid><dc:creator>ShowUsYour</dc:creator><description /></item><item><title>Assembly.Unload</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145296</link><pubDate>Tue, 01 Jun 2004 12:25:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145296</guid><dc:creator>Kristian Kristensen's Blog</dc:creator><description>Jazon Zander skriver om, hvorfor der &lt;br&gt;ikke findes en Assembly.Unload metode.&lt;br&gt;Vi lavede nemlig en arkitektur...</description></item><item><title>Unloading Assemblies</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145388</link><pubDate>Tue, 01 Jun 2004 15:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145388</guid><dc:creator>ThoughtChain</dc:creator><description /></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145399</link><pubDate>Tue, 01 Jun 2004 12:47:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145399</guid><dc:creator>Dejan Jelovic</dc:creator><description>The thing that absolutely sucks is that cross-appdomain calls are uselessly slow. See the results I posted at www.jelovic.com/weblog/e87.htm to see how bad the situation is.&lt;br&gt;&lt;br&gt;Any plans to fix that?</description></item><item><title>Generic Resources for C#</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145401</link><pubDate>Tue, 01 Jun 2004 15:58:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145401</guid><dc:creator>Skerkles the Coding Clown</dc:creator><description /></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145403</link><pubDate>Tue, 01 Jun 2004 13:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145403</guid><dc:creator>Keith</dc:creator><description>I would love to see an application sample.&lt;br&gt;&lt;br&gt;thanks</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145472</link><pubDate>Tue, 01 Jun 2004 15:08:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145472</guid><dc:creator>Jeroen Frijters</dc:creator><description>Another &amp;quot;workaround&amp;quot; is Light Weight Codegen in Whidbey. Hopefully, in the future Light Weight Codegen will also support creating types, that would really be nice work around.&lt;br&gt;&lt;br&gt;Using AppDomains is not an option for perf critical stuff.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145480</link><pubDate>Tue, 01 Jun 2004 15:36:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145480</guid><dc:creator>Jason Zander [MSFT]</dc:creator><description>Lot's of good comments in here.  A few things:&lt;br&gt;&lt;br&gt;The app domain boundary does enforce a programming model since you are remoting objects between app domains.  The mechanics are quite straight forward: you inherit from MarshalByRef and use System.Runtime.Remoting to instantiate your new object.  However, around any general remoting boundary (in which I include x-app domain, p/invoke &amp;amp; COM interop, as well as x-process), you want to be cogniscent of versioning and performance.  There are a few general classes of problems described in the comments that demonstrate these issues:&lt;br&gt;&lt;br&gt;1.  Performance.  The first solution starts with the design.  You want to use interface boundaries which, as Chris Brumme likes to call them, are 'chunky' and not 'chatty'.  For example, if you are going to loop 1 million times around a function call, don't make the function call a marshalling boundary.  Move the loop to the other side of the equasion.&lt;br&gt;&lt;br&gt;The next thing is when you have to do mashalling, can it be as fast as possible.  The good news is that in Whidbey, the x-app domain remoting code is up to several times faster than in v1.0 and v1.1, primarily for intrinsic types.  When you marshal such calls, serialization is now skipped and the data is directly copied from one stack to another.&lt;br&gt;&lt;br&gt;2.  Square peg, round hole.  If the place you are trying to host a plug-in doesn't support MarshalByRef semantics, then I can appreciate how it becomes much more difficult to use this solution.  You basically have to separate out the logic for the plug-in from the pieces that need to operate on non-marshallable objects.  So if your MDI object has some unique logic you can put that into another app domain, but customizing the UI which requires touching Winforms objects has to be done in the app domain in which they live.&lt;br&gt;&lt;br&gt;3.  Versioning.  Not yet mentioned but important is making sure versioning is enforced between domains.  If you are hosting 3rd party plug-ins, getting this right is important (and probably a good topic for another blog).  This is one thing I think the Indigo guys learned from our experience and improved upon.&lt;br&gt;&lt;br&gt;&lt;br&gt;Around the security stuff mentioned, I'm checking on that and will post back.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145496</link><pubDate>Tue, 01 Jun 2004 15:51:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145496</guid><dc:creator>Sanin Saracevic</dc:creator><description>Check out my post regarding shadow copying and dynamic load of assemblies. I will gladly share samples of code if anyone is interested. Indeed, the problem of AppDomain boundary manifests itself differently in two distinct usage scenario: UI plug-in and server plug-in. Since UI plug-in usually (by definition?) interacts by the UI cross-domain marshaling will be expensive. However, in case where you have a server process (such as ASP.NET hosting process) that executes &amp;quot;work items&amp;quot; as they come up, loading parts or the whole execution engine into a separate AppDomain works just fine. I have successfully implemented this solution in conjunction with Reactor pattern to create a generic server process that can host a multitude of process engines. The only problem I still face is &amp;quot;knowing&amp;quot; when to unload the old AppDomain to free up space without burdening the hosting process with notifying the engine when to unload.</description></item><item><title>New and Notable 58</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145499</link><pubDate>Tue, 01 Jun 2004 18:52:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145499</guid><dc:creator>Sam Gentile's Blog</dc:creator><description /></item><item><title>New and Notable 58</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#145504</link><pubDate>Tue, 01 Jun 2004 18:55:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:145504</guid><dc:creator>Sam Gentile's Blog</dc:creator><description /></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#146790</link><pubDate>Wed, 02 Jun 2004 16:04:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:146790</guid><dc:creator>dbj</dc:creator><description>Iam sorry but I see why lack of Assembly.Unload() method,makes (UI)Plugins or &amp;quot;Server Plugins&amp;quot; very difficult or impossible to write using .NET ?&lt;br&gt;</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#146792</link><pubDate>Wed, 02 Jun 2004 16:06:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:146792</guid><dc:creator>dbj</dc:creator><description>QUICK RETYPE&lt;br&gt;Iam sorry but I DO NOT see why lack of Assembly.Unload() method,makes (UI)Plugins or &amp;quot;Server Plugins&amp;quot; very difficult or impossible to write using .NET ? &lt;br&gt;</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#146821</link><pubDate>Wed, 02 Jun 2004 16:38:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:146821</guid><dc:creator>Paulb</dc:creator><description>Very interested in the hosting sample and app domain recycling</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#147504</link><pubDate>Thu, 03 Jun 2004 10:44:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:147504</guid><dc:creator>Thong Nguyen</dc:creator><description>Well Java manages to unload Java classes, code &amp;amp; meta data just fine (it occurs after the last reference to the class &amp;amp; classloader dissapears).  All the problems you talk about are solved by using this fancy thing called a Garbage Collector which I hear is already included in .NET.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#147714</link><pubDate>Thu, 03 Jun 2004 16:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:147714</guid><dc:creator>David Levine</dc:creator><description>Lacking Assembly.Unload makes some aspects of plugins a trifle more difficult, but even if you had it there are numerous other issues related to versioning that having an Unload function would not help you with. You might think that all you need to do is unload the old plugin and load the new one but there are many more issues then this. Here are a few of them.&lt;br&gt;&lt;br&gt;1, whether to define an interface that plugins implement or derive all plugins from an abstract base class. Interfaces don't version well - once published they must live forever unchanged or break all plugins using them. Classes are more flexible but .net only supports single inheritance. I think that using a common base class with reasonable stubbed implementations of methods added/modified after the initial release makes the host code simpler.&lt;br&gt;&lt;br&gt;2, whether to sign assemblies. This greatly impacts how the runtime handles versioning. We use strong names on all our assemblies - this means the runtime uses the assembly's fullname for binding purposes. This can also affect deployment.&lt;br&gt;&lt;br&gt;3, how to deploy. It's easiest to use xcopy deployment but then plugins may have issues resolving references if shared assemblies are not located in the GAC. One source of trouble are common assemblies that define types to be shared amongst various components, e.g. the Load vs. LoadFrom context, and assemblies that use different versions of the same assembly. It is critical that all components refer to the same assembly when types are shared, but if the plugins are compiled and built against a version other then the one deployed (common where 3rd parties develop the plugins) then binding redirects must be used. This would be easier to solve if the runtime supported a mechanism for programmatically doing binding redirects when loading types.&lt;br&gt;&lt;br&gt;4, when crossing appdomain boundaries all shared types must be defined from the same assembly - related to item 3. Also, it is a remoted interface, with all of those issues to deal with.&lt;br&gt;&lt;br&gt;This gets complicated pretty quickly. Simply unloading one plugin and loading another does not solve these.&lt;br&gt;</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#148184</link><pubDate>Fri, 04 Jun 2004 05:59:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:148184</guid><dc:creator>Eric</dc:creator><description>Please make Assembly.Unload work and please make it work that my add-ins don't crash whenever we change the Assembly or Framework version numbers.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#148495</link><pubDate>Fri, 04 Jun 2004 15:15:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:148495</guid><dc:creator>Dave</dc:creator><description>It seems like a lot of the comments revolve around a scenario using &amp;quot;plugins&amp;quot;.  I've tried to go the AppDomain loading/unloading route to implement such plugins, but it was just too much of a hassle - I ended up with a &amp;quot;load plugins on startup&amp;quot; solution - which is kind of a hassle for a Web Application which needs to be live most of the day.  Has anyone had any success creating/destroying AppDomains from within a Web Application?&lt;br&gt;&lt;br&gt;It would be nice, since this is such a popular scenario, if there was a reference example of how to add solid plugin support to an application (basically your AppDomain loading/recycling example).</description></item><item><title>Assembly.Unload method in the CLR</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#148794</link><pubDate>Fri, 04 Jun 2004 23:47:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:148794</guid><dc:creator>John Lyon-Smith's Blog</dc:creator><description /></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#148808</link><pubDate>Fri, 04 Jun 2004 21:06:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:148808</guid><dc:creator>vrubins</dc:creator><description>I tried to use separate AppDomain to load a managed dll that actually compiles a code on-the-fly to in-memory assembly and runs it. I then unload my AppDomain but memory was not released - the in-memory assembly seems to be loaded into a default domain as well. &lt;br&gt;&lt;br&gt;I need to do a lot of communications with the in-memory assembly and I need to re-compile it thousands of times. But when I am done with it - I know for sure there are no references and handles - I just want it gone.&lt;br&gt;&lt;br&gt;Despite all the good reasons noted here - I too think that this feature is a valuable one and wish it was implemented.&lt;br&gt;&lt;br&gt;There are million other ways to crash .NET app, why be afraid of this one.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#148976</link><pubDate>Sat, 05 Jun 2004 02:27:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:148976</guid><dc:creator>Carol</dc:creator><description>Fix it now. If MS can't fix it maybe &lt;a target="_new" href="http://www.go-mono.com"&gt;http://www.go-mono.com&lt;/a&gt; can. I wouldn't mind running Mono instead of .NET if this makes my add-ins work.&lt;br&gt;</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#152104</link><pubDate>Wed, 09 Jun 2004 23:39:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:152104</guid><dc:creator>Sean Hernandez</dc:creator><description>This would be a really cool Rotor research topic.</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#152392</link><pubDate>Thu, 10 Jun 2004 07:26:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:152392</guid><dc:creator>Sigurthr</dc:creator><description>Samples! Yes, yes, yes! I have a major project in the framework and I just ran into this wall. I cannot and do not want to recode on a different environment as .net has made so many improvements if there is a good work around/solution I'll use it. I am alread using a interface based modle and have been keeping them in a separate asembly as I am loading to classes of dynamic plug-ins that have to interop. One class scripts against the other with the framework providing the fundamental services.&lt;br&gt;    Thanks,&lt;br&gt;        Sigurthr&lt;br&gt;&lt;br&gt;</description></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#155183</link><pubDate>Mon, 14 Jun 2004 15:36:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:155183</guid><dc:creator>juju</dc:creator><description>I am using a script system in c#. When the user changes and compiles his new &amp;quot;versioned&amp;quot; class, tadaaaa! &amp;quot;Compiler error. your file is in use!!!&amp;quot;. This is due to the f lack os Assmble.Unload method.....</description></item><item><title>re: When good code goes bad</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#160849</link><pubDate>Mon, 21 Jun 2004 03:22:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:160849</guid><dc:creator>Cyrus' Blather</dc:creator><description /></item><item><title>Why isn't there an Assembly.Unload method? </title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#172199</link><pubDate>Sat, 03 Jul 2004 03:56:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:172199</guid><dc:creator>Junfeng Zhang</dc:creator><description /></item><item><title>re: Why isn't there an Assembly.Unload method?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#173815</link><pubDate>Tue, 06 Jul 2004 11:16:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:173815</guid><dc:creator>musti</dc:creator><description>hi,&lt;br&gt;&lt;br&gt;is there any chance or aspiration, that the Assembly.Unload method will be implemented in the new .Net version (v2.0)???&lt;br&gt;&lt;br&gt;Thanks,&lt;br&gt;musti</description></item><item><title>re: The remarkable staying-power of of System.Assembly</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#175619</link><pubDate>Wed, 07 Jul 2004 22:25:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:175619</guid><dc:creator>A Portion of Buff</dc:creator><description /></item><item><title>Assembly.Unload</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#175971</link><pubDate>Thu, 08 Jul 2004 06:33:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:175971</guid><dc:creator>Flier's Sky</dc:creator><description>Assembly.Unload</description></item><item><title>nobody can answer my question?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#191102</link><pubDate>Thu, 22 Jul 2004 13:46:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:191102</guid><dc:creator>musti</dc:creator><description>is there anyone from microsoft, who can answer my question from 7/6/2004 4:16AM????&lt;br&gt;&lt;br&gt;...or is it true that microsoft don`t think about it (Assembly.Unload)???&lt;br&gt;&lt;br&gt;I have tried to solve my problem with AppDomain`s, but it is realy not a good way...(and it doesn`t solve my problem at the end )&lt;br&gt;&lt;br&gt;musti</description></item><item><title>re: nobody can answer my question?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#200389</link><pubDate>Thu, 29 Jul 2004 04:10:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:200389</guid><dc:creator>Jason Zander</dc:creator><description>Hi Musti - sorry for the delay; I've been on vacation.  We do not have plans to implement an Unload method in V2.0.  We are basically code complete with the release and down to stress testing and fit and finish style fixes.  Doing Unload would be a pretty pervasive feature to implement which would touch too much of the runtime for this release.&lt;br&gt;&lt;br&gt;I have some folks working on samples as we speak; stay tuned...&lt;br&gt;&lt;br&gt;Jason</description></item><item><title>Unloading an Assembly</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#234094</link><pubDate>Sat, 25 Sep 2004 02:53:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:234094</guid><dc:creator>Suzanne Cook's .NET CLR Loader Notes</dc:creator><description /></item><item><title>How much power is too much?</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#266041</link><pubDate>Fri, 19 Nov 2004 03:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:266041</guid><dc:creator>Jason Zander's WebLog</dc:creator><description /></item><item><title>Why you can't unload an assembly (from: Patrick Steele)</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#316095</link><pubDate>Thu, 16 Dec 2004 00:18:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:316095</guid><dc:creator>TOURNEY LOGIC LINK BLOG</dc:creator><description /></item><item><title>Can't figure out a COM Interop and Remoting problem</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#353855</link><pubDate>Sun, 16 Jan 2005 09:19:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:353855</guid><dc:creator>Rick Strahl's WebLog</dc:creator><description>I'm running into some differences between instantiating a component in another AppDomain via COM as opposed to instantiating the same in a WinForm application. COM basically gets a corrupted or invalid instance of the remote object while everything works fine iwth the same code in WinForms.</description></item><item><title>Assembly.Unload?  Use AppDomain.Unload instead.</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#406487</link><pubDate>Fri, 08 Apr 2005 14:19:13 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:406487</guid><dc:creator>Ranjan Sakalley</dc:creator><description>Well we ended up writing a VS.Net plugin to add to our developer testing tools (something like NUnitPlugin,...</description></item><item><title>AppDomain's and Addin's</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#549048</link><pubDate>Sat, 11 Mar 2006 01:41:09 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:549048</guid><dc:creator>Jack Gudenkauf (JackG) WebLog</dc:creator><description>What is an Application Domain (AD)?&lt;br&gt;An Application Domain is a CLR feature that provides a unit of isolation...</description></item><item><title>AppDomain Shadow Copy explained</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#682688</link><pubDate>Sat, 29 Jul 2006 20:53:01 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:682688</guid><dc:creator>B# .NET Blog</dc:creator><description>Introduction&lt;br&gt;The last couple of days I've been playing around with some stuff around WCF (formerly known...</description></item><item><title>Unloading an Assembly</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#1928275</link><pubDate>Thu, 22 Mar 2007 04:31:19 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1928275</guid><dc:creator>Suzanne Cook's .NET CLR Notes</dc:creator><description>&lt;p&gt;There's no way to unload an individual assembly without unloading all of the appdomains containing it.&lt;/p&gt;
</description></item><item><title>通过应用程序域AppDomain加载和卸载程序集</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#4682650</link><pubDate>Sat, 01 Sep 2007 08:57:09 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4682650</guid><dc:creator>林西</dc:creator><description>&lt;p&gt;微软装配车的大门似乎只为货物装载敞开大门，却将卸载工人拒之门外。车门的钥匙只有一把，若要获得还需要你费一些心思。我在学习Remoting的时候，就遇到一个扰人的问题，就是Remoting为远程对象仅提...&lt;/p&gt;
</description></item><item><title>Assembly.Unload </title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#4683069</link><pubDate>Sat, 01 Sep 2007 09:48:14 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4683069</guid><dc:creator>林西</dc:creator><description>&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://www.blogcn.com/user8/flier_lu/index.html?id=2164751"&gt;http://www.blogcn.com/user8/flier_lu/index.html?id=2164751&lt;/a&gt;&lt;/p&gt;
</description></item><item><title>Unloading dynamically-loaded assembly</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#4781930</link><pubDate>Thu, 06 Sep 2007 11:08:42 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4781930</guid><dc:creator>Danni Afasyah</dc:creator><description>&lt;p&gt;I&amp;amp;#39;ve come to a case, where, in my application, i need to load the assembly dynamically. Its not a&lt;/p&gt;
</description></item><item><title>whateverlife myspace html music codes</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#4955342</link><pubDate>Mon, 17 Sep 2007 15:51:40 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:4955342</guid><dc:creator>whateverlife myspace html music codes</dc:creator><description>&lt;p&gt;whateverlife myspace html music codes&lt;/p&gt;
</description></item><item><title>AppDomains and Addins</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#5933733</link><pubDate>Tue, 06 Nov 2007 14:21:34 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:5933733</guid><dc:creator>Jack Gudenkauf (JackG) WebLog</dc:creator><description>&lt;p&gt;What is an Application Domain (AD)? An Application Domain is a CLR feature that provides a unit of isolation&lt;/p&gt;
</description></item><item><title>Using a Separate Application Domain to Test for Implemented Interfaces</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#9020370</link><pubDate>Tue, 28 Oct 2008 18:51:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9020370</guid><dc:creator>Colby Africa</dc:creator><description>&lt;p&gt;Sometimes you need to load an assembly for use or inspection.&amp;amp;#160; The problem is that loading an assembly&lt;/p&gt;
</description></item><item><title>Reflection - Assembly entladen | hilpers</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#9336245</link><pubDate>Sat, 17 Jan 2009 20:48:30 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9336245</guid><dc:creator>Reflection - Assembly entladen | hilpers</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://www.hilpers.com/1174529-reflection-assembly-entladen"&gt;http://www.hilpers.com/1174529-reflection-assembly-entladen&lt;/a&gt;&lt;/p&gt;
</description></item><item><title>Yet another post about Memory on Windows Mobile</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#9504438</link><pubDate>Tue, 24 Mar 2009 18:11:52 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9504438</guid><dc:creator>Mobile Development</dc:creator><description>&lt;p&gt;Abhinaba’s blog What’s new in Windows Mobile 6.1 and 6.5 around memory Dynamic assembly unloading Again&lt;/p&gt;
</description></item><item><title> Jason Zander s WebLog Why isn t there an Assembly Unload method | Paid Surveys</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#9663406</link><pubDate>Sat, 30 May 2009 08:41:48 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9663406</guid><dc:creator> Jason Zander s WebLog Why isn t there an Assembly Unload method | Paid Surveys</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://paidsurveyshub.info/story.php?title=jason-zander-s-weblog-why-isn-t-there-an-assembly-unload-method"&gt;http://paidsurveyshub.info/story.php?title=jason-zander-s-weblog-why-isn-t-there-an-assembly-unload-method&lt;/a&gt;&lt;/p&gt;
</description></item><item><title> Jason Zander s WebLog Why isn t there an Assembly Unload method | Wood TV Stand</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#9679820</link><pubDate>Mon, 01 Jun 2009 21:23:49 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9679820</guid><dc:creator> Jason Zander s WebLog Why isn t there an Assembly Unload method | Wood TV Stand</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://woodtvstand.info/story.php?id=15553"&gt;http://woodtvstand.info/story.php?id=15553&lt;/a&gt;&lt;/p&gt;
</description></item><item><title> Jason Zander s WebLog Why isn t there an Assembly Unload method | Green Tea Fat Burner</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#9706551</link><pubDate>Mon, 08 Jun 2009 05:19:47 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9706551</guid><dc:creator> Jason Zander s WebLog Why isn t there an Assembly Unload method | Green Tea Fat Burner</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://greenteafatburner.info/story.php?id=1804"&gt;http://greenteafatburner.info/story.php?id=1804&lt;/a&gt;&lt;/p&gt;
</description></item><item><title> Jason Zander s WebLog Why isn t there an Assembly Unload method | Hair Growth Products</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#9721847</link><pubDate>Wed, 10 Jun 2009 05:37:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9721847</guid><dc:creator> Jason Zander s WebLog Why isn t there an Assembly Unload method | Hair Growth Products</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://hairgrowthproducts.info/story.php?id=4030"&gt;http://hairgrowthproducts.info/story.php?id=4030&lt;/a&gt;&lt;/p&gt;
</description></item><item><title> Jason Zander s WebLog Why isn t there an Assembly Unload method | home lighting</title><link>http://blogs.msdn.com/jasonz/archive/2004/05/31/145105.aspx#9747105</link><pubDate>Sun, 14 Jun 2009 04:58:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9747105</guid><dc:creator> Jason Zander s WebLog Why isn t there an Assembly Unload method | home lighting</dc:creator><description>&lt;p&gt;PingBack from &lt;a rel="nofollow" target="_new" href="http://homelightingconcept.info/story.php?id=3697"&gt;http://homelightingconcept.info/story.php?id=3697&lt;/a&gt;&lt;/p&gt;
</description></item></channel></rss>