<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>System.AddIn Tools and Samples</title><link>http://clraddins.codeplex.com/project/feeds/rss</link><description>Introduction      Welcome to the CodePlex site for the Managed Extensibility and Add-In Team. This site will be the home to both samples and tools designed to help you make the best use of the new System.AddIn features in the .Net FX v3.5. We&amp;#39;ll continue to use our blog http&amp;#58;&amp;#47;&amp;#47;blogs.msdn.com&amp;#47;clraddins&amp;#47; for information and discussion about our work, but from now on we&amp;#39;ll be hosting our samples here for easier access.       The initial focus will be on two things&amp;#58;       Bringing over samples from the team blog to this site   The release of the Pipeline Builder tool       For more information on our work please see our additional resources page.</description><item><title>Closed Issue: CodeGen References Problem [1850]</title><link>http://clraddins.codeplex.com/workitem/1850</link><description>After using the pipeline builder I have to go and fix up references in the generated adapters. Here&amp;#39;s an example. Here is one of my contracts&amp;#58;&lt;br /&gt;&amp;#160;&lt;br /&gt;&amp;#91;AddInContract&amp;#93;&lt;br /&gt;public interface IHostContract &amp;#58; IContract&lt;br /&gt;&amp;#123;&lt;br /&gt;&amp;#9;void Register&amp;#40;IServiceContract service, Type serviceType&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;IServiceContract Resolve&amp;#40;Type serviceType&amp;#41;&amp;#59;&lt;br /&gt;&amp;#125;&lt;br /&gt;&amp;#160;&lt;br /&gt;This is generated for my IHost contract-&amp;#62;view adapter&amp;#58;&lt;br /&gt;&amp;#160;&lt;br /&gt;public void Register&amp;#40;IService service, System.Type serviceType&amp;#41;&lt;br /&gt;&amp;#123;&lt;br /&gt;    ...&lt;br /&gt;&amp;#125;&lt;br /&gt;public IService Resolve&amp;#40;System.Type serviceType&amp;#41;&lt;br /&gt;&amp;#123;&lt;br /&gt;    ...&lt;br /&gt;&amp;#125;&lt;br /&gt;&amp;#160;&lt;br /&gt;However, the IService references doesn&amp;#39;t resolve until I qualify them as Contract.AddInViews.IService.&lt;br /&gt;</description><author>mSid</author><pubDate>Thu, 16 May 2013 09:33:15 GMT</pubDate><guid isPermaLink="false">Closed Issue: CodeGen References Problem [1850] 20130516093315A</guid></item><item><title>New Post: AddIns built against an older version of the AddInViews assembly not being found by FindAddIn</title><link>http://clraddins.codeplex.com/discussions/278077</link><description>&lt;div style="line-height: normal;"&gt;I also have this issue.  I need to update the version numbers of all my classes as I release a new version of my solution.  I can't updated the Add-In pipeline classes, specifically the AddInView dll, because that prevents older Add Ins referencing the older AddInView dll from loading (being found) anymore.&lt;br /&gt;
&lt;br /&gt;
I really need an answer for to this dilemma.&lt;br /&gt;
&lt;/div&gt;</description><author>dcabral</author><pubDate>Wed, 24 Apr 2013 22:15:51 GMT</pubDate><guid isPermaLink="false">New Post: AddIns built against an older version of the AddInViews assembly not being found by FindAddIn 20130424101551P</guid></item><item><title>New Post: Addins slow again...</title><link>http://clraddins.codeplex.com/discussions/22489</link><description>&lt;div style="line-height: normal;"&gt;Hi Jesse,&lt;br /&gt;
&lt;br /&gt;
I have created a WPF addin application , which is returned as a FrameworkElement, which is being added as a control in MainForm(HOST) application. The MainForm is being loaded in a external class library under Application.Run(new MainForm), after going through several articles including at &lt;a href="http://blogs.msdn.com/b/clraddins/archive/2008/02/22/add-in-performance-what-can-you-expect-as-you-cross-an-isolation-boundary-and-how-to-make-it-better-jesse-kaplan.aspx" rel="nofollow"&gt;http://blogs.msdn.com/b/clraddins/archive/2008/02/22/add-in-performance-what-can-you-expect-as-you-cross-an-isolation-boundary-and-how-to-make-it-better-jesse-kaplan.aspx&lt;/a&gt;, which is very informative. I have applied LoaderOptimization.MultiDomainHost on top of the method which has Application.Run(new MainForm) and even installed Contracts in GAC, but my application is facing very critical performance issue by taking nearly 25secs to load my addin. I have to improve the performance before UAT. Can you please let me know, how to improve the performance and is it something i have missed. Remember my Contract is not a value type but of IContract type, which is MarshallByRef,.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Thanks&lt;br /&gt;
Prash&lt;br /&gt;
&lt;/div&gt;</description><author>prashanthb</author><pubDate>Sun, 14 Apr 2013 02:41:06 GMT</pubDate><guid isPermaLink="false">New Post: Addins slow again... 20130414024106A</guid></item><item><title>Source code checked in, #81799</title><link>http://clraddins.codeplex.com/SourceControl/changeset/changes/81799</link><description>Upgrade&amp;#58; New Version of LabDefaultTemplate.xaml. To upgrade your build definitions, please visit the following link&amp;#58; http&amp;#58;&amp;#47;&amp;#47;go.microsoft.com&amp;#47;fwlink&amp;#47;&amp;#63;LinkId&amp;#61;254563</description><author>Project Collection Service Accounts</author><pubDate>Mon, 01 Oct 2012 21:57:23 GMT</pubDate><guid isPermaLink="false">Source code checked in, #81799 20121001095723P</guid></item><item><title>Source code checked in, #81798</title><link>http://clraddins.codeplex.com/SourceControl/changeset/changes/81798</link><description>Checked in by server upgrade</description><author>Project Collection Service Accounts</author><pubDate>Mon, 01 Oct 2012 21:51:05 GMT</pubDate><guid isPermaLink="false">Source code checked in, #81798 20121001095105P</guid></item><item><title>New Post: During activation, what will be the search path for the add-in dependency dlls ?</title><link>http://clraddins.codeplex.com/discussions/287660</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hello Agnes,&lt;/p&gt;
&lt;p&gt;I made another test to recreate the problem you mention. I&amp;nbsp;did the following:&lt;/p&gt;
&lt;p&gt;1) All&amp;nbsp;projects&amp;nbsp;in the&amp;nbsp;pipeline&amp;nbsp;have the following setting: Target framework =&amp;nbsp;.Net Framework 4, Platform Target =&amp;nbsp;Any CPU.&lt;/p&gt;
&lt;p&gt;2) The add-in project references an assembly that is not in the GAC. I set "Copy Local" to false. I set this to create a FileNotFoundException.&lt;/p&gt;
&lt;p&gt;3) Activated an add-in in a new process with FullTrust security level.&lt;/p&gt;
&lt;p&gt;The FileNotFoundException was thrown and in details, I checked the FusionLog property. The log entry is the following:&lt;/p&gt;
&lt;p&gt;=== Pre-bind state information ===&lt;br /&gt;LOG: User = panos&lt;br /&gt;LOG: DisplayName = Quartz, Version=2.0.0.100, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4&lt;br /&gt;&amp;nbsp;(Fully-specified)&lt;br /&gt;LOG: Appbase = &lt;a href="file:///C:/dev/projects/Visual"&gt;file:///C:/dev/projects/Visual&lt;/a&gt; Studio 2010/Experiments/Scanner/output/Debug&lt;br /&gt;LOG: Initial PrivatePath = NULL&lt;br /&gt;Calling assembly : Cpi.Platform.AddIn.Ocr.FineReader, Version=1.0.0.20018, Culture=neutral, PublicKeyToken=5470f4aca8377cb7.&lt;br /&gt;===&lt;br /&gt;LOG: This bind starts in LoadFrom load context.&lt;br /&gt;WRN: Native image will not be probed in LoadFrom context. Native image will only be probed in default load context, like with Assembly.Load().&lt;br /&gt;LOG: No application configuration file found.&lt;br /&gt;LOG: Using host configuration file: &lt;br /&gt;LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.&lt;br /&gt;LOG: Post-policy reference: Quartz, Version=2.0.0.100, Culture=neutral, PublicKeyToken=f6b8c98a402cc8a4&lt;br /&gt;LOG: Attempting download of new URL &lt;a href="file:///C:/dev/projects/Visual"&gt;file:///C:/dev/projects/Visual&lt;/a&gt; Studio 2010/Experiments/Scanner/output/Debug/Quartz.DLL.&lt;br /&gt;LOG: Attempting download of new URL &lt;a href="file:///C:/dev/projects/Visual"&gt;file:///C:/dev/projects/Visual&lt;/a&gt; Studio 2010/Experiments/Scanner/output/Debug/Quartz/Quartz.DLL.&lt;br /&gt;LOG: Attempting download of new URL &lt;a href="file:///C:/dev/projects/Visual"&gt;file:///C:/dev/projects/Visual&lt;/a&gt; Studio 2010/Experiments/Scanner/output/Debug/Quartz.EXE.&lt;br /&gt;LOG: Attempting download of new URL &lt;a href="file:///C:/dev/projects/Visual"&gt;file:///C:/dev/projects/Visual&lt;/a&gt; Studio 2010/Experiments/Scanner/output/Debug/Quartz/Quartz.EXE.&lt;br /&gt;LOG: Attempting download of new URL &lt;a href="file:///C:/dev/projects/Visual"&gt;file:///C:/dev/projects/Visual&lt;/a&gt; Studio 2010/Experiments/Scanner/output/Debug/Ocr/FineReader/Quartz.DLL.&lt;br /&gt;LOG: Attempting download of new URL &lt;a href="file:///C:/dev/projects/Visual"&gt;file:///C:/dev/projects/Visual&lt;/a&gt; Studio 2010/Experiments/Scanner/output/Debug/Ocr/FineReader/Quartz/Quartz.DLL.&lt;br /&gt;LOG: Attempting download of new URL &lt;a href="file:///C:/dev/projects/Visual"&gt;file:///C:/dev/projects/Visual&lt;/a&gt; Studio 2010/Experiments/Scanner/output/Debug/Ocr/FineReader/Quartz.EXE.&lt;br /&gt;LOG: Attempting download of new URL &lt;a href="file:///C:/dev/projects/Visual"&gt;file:///C:/dev/projects/Visual&lt;/a&gt; Studio 2010/Experiments/Scanner/output/Debug/Ocr/FineReader/Quartz/Quartz.EXE.&lt;/p&gt;
&lt;p&gt;Notice that the AppBase is in the add-in folder. In your log entry, it was in c:\windows\blahblah.&lt;/p&gt;
&lt;p&gt;I run the test in a Windows 7 x86 with VS2010 and in a Windows 7 x64 with VS2010 and in both case the AppBase was the same. This means that if I set Copy Local = true, the referenced assembly will be copied in the add-in folder and will be loaded correctly since it will be in the AppBase.&lt;/p&gt;
&lt;p&gt;Also note that I get the same behaviour when I activate the add-in in a new AppDomain (created by MAF). Exactly the same thing. AppBase is the add-in's folder. If you created the AppDomain yourself, then you can set any ApplicationBase (in System.AppDomainSetup)&amp;nbsp;you want. This is great if you want to share assemblies between your add-ins. You can even subscribe to the AppDomain.AssemblyResolve event that is&amp;nbsp;triggered when an assembly cannot be resolved and load it&amp;nbsp;from another directory.&amp;nbsp;Unfortunately I haven't found a way to do this when for add-ins&amp;nbsp;hosted in a new process.&lt;/p&gt;
&lt;p&gt;I can't understand why in your case the AppBase is in c:\windows\fram.... Maybe you should try to experiment with the project settings. Or maybe do a test solution from scratch and follow the steps I mentioned above.&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Panos&lt;/p&gt;&lt;/div&gt;</description><author>p_ronto</author><pubDate>Wed, 28 Mar 2012 09:37:34 GMT</pubDate><guid isPermaLink="false">New Post: During activation, what will be the search path for the add-in dependency dlls ? 20120328093734A</guid></item><item><title>New Post: During activation, what will be the search path for the add-in dependency dlls ?</title><link>http://clraddins.codeplex.com/discussions/287660</link><description>&lt;div style="line-height: normal;"&gt;
&lt;div dir="ltr"&gt;Hi Panos,&lt;br&gt;
&lt;br&gt;
Sorry that I have not really put much time in this since we talked last time, right now, my plugin is running under a new App Pool instead of a separate process.&lt;br&gt;
&lt;br&gt;
From my last test, if i were to run the plugin under a separate process, the dependent dlls need to be deployed under GAC, otherwise, I would get the dlls not found error as soon as I started the process.&lt;br&gt;
&lt;br&gt;
I plan to go back to this later, maybe I can create a test project and verify this and let you know.&lt;br&gt;
&lt;br&gt;
If there is anything that you find, i would be grateful if you could share that with me.&lt;br&gt;
&lt;br&gt;
Thanks Panos!&lt;br&gt;
Agnes&lt;br&gt;
&lt;br&gt;
&lt;div&gt;
&lt;div id="SkyDrivePlaceholder"&gt;&lt;/div&gt;
&lt;hr id="stopSpelling"&gt;
From: [email removed]&lt;br&gt;
To: [email removed]&lt;br&gt;
Date: Thu, 22 Mar 2012 07:06:36 -0700&lt;br&gt;
Subject: Re: During activation, what will be the search path for the add-in dependency dlls ? [clraddins:287660]&lt;br&gt;
&lt;br&gt;
From: p_ronto&lt;br&gt;
&lt;div id="ecxThreadNotificationPostBody"&gt;Hello Agnes,&lt;br&gt;
Did you find the solution to this problem? I'm curious because, since I'm currently working on a MAF based application, it would help to be prepared for things that can go wrong.&lt;br&gt;
Panos&lt;br&gt;
&lt;/div&gt;
&lt;div id="ecxThreadNotificationFooter"&gt;Read the &lt;a href="http://clraddins.codeplex.com/discussions/287660#post814050" target="_blank"&gt;
full discussion online&lt;/a&gt;.&lt;br&gt;
To add a post to this discussion, reply to this email (&lt;a href="mailto:clraddins@discussions.codeplex.com?subject=[clraddins:287660]"&gt;clraddins@discussions.codeplex.com&lt;/a&gt;)&lt;br&gt;
To start a new discussion for this project, email &lt;a href="mailto:clraddins@discussions.codeplex.com"&gt;
clraddins@discussions.codeplex.com&lt;/a&gt;&lt;br&gt;
You are receiving this email because you subscribed to this discussion on CodePlex. You can
&lt;a href="https://clraddins.codeplex.com/discussions/287660/unsubscribe/" target="_blank"&gt;
unsubscribe&lt;/a&gt; on CodePlex.com.&lt;br&gt;
Please note: Images and attachments will be removed from emails. Any posts to this discussion will also be available online at CodePlex.com&lt;br&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;</description><author>agnesw</author><pubDate>Fri, 23 Mar 2012 02:32:04 GMT</pubDate><guid isPermaLink="false">New Post: During activation, what will be the search path for the add-in dependency dlls ? 20120323023204A</guid></item><item><title>New Post: During activation, what will be the search path for the add-in dependency dlls ?</title><link>http://clraddins.codeplex.com/discussions/287660</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hello Agnes,&lt;/p&gt;
&lt;p&gt;Did you&amp;nbsp;find&amp;nbsp;the solution to&amp;nbsp;this problem? I'm curious because, since I'm currently working on a MAF based application, it would help to be prepared&amp;nbsp;for things that can go wrong.&lt;/p&gt;
&lt;p&gt;Panos&lt;/p&gt;&lt;/div&gt;</description><author>p_ronto</author><pubDate>Thu, 22 Mar 2012 14:06:35 GMT</pubDate><guid isPermaLink="false">New Post: During activation, what will be the search path for the add-in dependency dlls ? 20120322020635P</guid></item><item><title>New Post: During activation, what will be the search path for the add-in dependency dlls ?</title><link>http://clraddins.codeplex.com/discussions/287660</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Under the pipeline, this is the only add-in that reference those dlls.&lt;/p&gt;
&lt;p&gt;Activating the add-in in a different AppDomain is fine, just activating it under a different process gives me this issue that I must load the referenced assemblies under the GAC.&lt;/p&gt;
&lt;p&gt;Thanks.&lt;/p&gt;&lt;/div&gt;</description><author>agnesw</author><pubDate>Tue, 31 Jan 2012 10:26:40 GMT</pubDate><guid isPermaLink="false">New Post: During activation, what will be the search path for the add-in dependency dlls ? 20120131102640A</guid></item><item><title>New Post: During activation, what will be the search path for the add-in dependency dlls ?</title><link>http://clraddins.codeplex.com/discussions/287660</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Do you reference this assembly from any other project in the pipeline?&lt;/p&gt;
&lt;p&gt;By the way have you tried to Activate the add-in in the same AppDomain with the host?&lt;/p&gt;&lt;/div&gt;</description><author>p_ronto</author><pubDate>Tue, 31 Jan 2012 10:23:10 GMT</pubDate><guid isPermaLink="false">New Post: During activation, what will be the search path for the add-in dependency dlls ? 20120131102310A</guid></item><item><title>New Post: During activation, what will be the search path for the add-in dependency dlls ?</title><link>http://clraddins.codeplex.com/discussions/287660</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hi Panos,&lt;/p&gt;
&lt;p&gt;I tried to add reference to the common dlls from the add-in project and set the "CopyLocal" to true, but it does not work.&lt;/p&gt;
&lt;p&gt;I looked at the Assembly Binding Log Viewer and seems like it starts from the framework directory as AppBase, and only look for the .NET config files, AddInProcess.exe.Config &amp;amp; Machine.config without looking under any application configs, is this expected ?&lt;/p&gt;
&lt;p&gt;*** Assembly Binder Log Entry&amp;nbsp; (1/31/2012 @ 12:13:33 PM) ***&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The operation failed.&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Bind result: hr = 0x80070002. The system cannot find the file specified.&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Assembly manager loaded from:&amp;nbsp; C:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Running under executable&amp;nbsp; C:\Windows\Microsoft.NET\Framework64\v4.0.30319\AddInProcess.exe&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;--- A detailed error log follows. &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;=== Pre-bind state information ===&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: User = NT AUTHORITY\NETWORK SERVICE&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: DisplayName = ABC.Common, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt; (Fully-specified)&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: Appbase = file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: Initial PrivatePath = NULL&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: Dynamic Base = NULL&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: Cache Base = NULL&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: AppName = AddInProcess.exe&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Calling assembly : (Unknown).&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;===&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: This bind starts in default load context.&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: Using application configuration file: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\AddInProcess.exe.Config&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: Using host configuration file: &lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config.&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;LOG: The same bind was seen before, and was failed with hr = 0x80070002.&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;ERR: Unrecoverable error occurred during pre-download check (hr = 0x80070002).&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;/div&gt;</description><author>agnesw</author><pubDate>Tue, 31 Jan 2012 04:20:55 GMT</pubDate><guid isPermaLink="false">New Post: During activation, what will be the search path for the add-in dependency dlls ? 20120131042055A</guid></item><item><title>New Post: During activation, what will be the search path for the add-in dependency dlls ?</title><link>http://clraddins.codeplex.com/discussions/287660</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hello Agnes,&lt;/p&gt;
&lt;p&gt;You don't have to add the referenced DLLs in the&amp;nbsp;GAC.&lt;/p&gt;
&lt;p&gt;What I do is simply add a reference to my add-in project&amp;nbsp;and then set&amp;nbsp;"CopyLocal" to true on the reference properties.&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Panos&lt;/p&gt;&lt;/div&gt;</description><author>p_ronto</author><pubDate>Mon, 30 Jan 2012 17:05:49 GMT</pubDate><guid isPermaLink="false">New Post: During activation, what will be the search path for the add-in dependency dlls ? 20120130050549P</guid></item><item><title>New Post: During activation, what will be the search path for the add-in dependency dlls ?</title><link>http://clraddins.codeplex.com/discussions/287660</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;I'm loading each add-in in a separate process by using the following:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp; &lt;span style="color:#2b91af"&gt;AddInProcess&lt;/span&gt; addInProcess = &lt;span style="color:blue"&gt;
new&lt;/span&gt; &lt;span style="color:#2b91af"&gt;AddInProcess&lt;/span&gt;();&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;addIn = token.Activate&amp;lt;&lt;span style="color:#2b91af"&gt;IPlugIn&lt;/span&gt;&amp;gt;(addInProcess,
&lt;span style="color:#2b91af"&gt;AddInSecurityLevel&lt;/span&gt;.FullTrust);&lt;/p&gt;
&lt;p&gt;If the addIn has some dependency dlls, I found that by the time I invoked .Activate, it will try to load the dependency dlls from GAC, is there anyway that I can instruct it to load from a private path ? No matter if i put the dependency dlls under the directory
 where the host is located or the pipeline directory or the add-in directory, it always tries to load it from GAC, if the assemblies are not installed in GAC, it will report an error saying &amp;quot;unable to locate assembly&amp;quot;. Is this expected ? I would like it to
 locate the dependency dlls from the private path rather than in GAC.&lt;/p&gt;
&lt;p&gt;Thanks,&lt;br&gt;
Agnes&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;</description><author>agnesw</author><pubDate>Fri, 27 Jan 2012 17:58:26 GMT</pubDate><guid isPermaLink="false">New Post: During activation, what will be the search path for the add-in dependency dlls ? 20120127055826P</guid></item><item><title>New Post: AddIns built against an older version of the AddInViews assembly not being found by FindAddIn</title><link>http://clraddins.codeplex.com/discussions/278077</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;I have a MAF project which has been manually built under VS2010 .Net 4 (fully updated).&lt;/p&gt;
&lt;p&gt;If I rebuild all of the required MAF assemblies (HostViews, AddInViews, Contracts and adapter) and all of the AddIns then MAF will successfully find all of the Addins which are stored in the default AddIn folder of the PipelineStore.&lt;/p&gt;
&lt;p&gt;However, If I try to include an AddIn which has been build against an older version of the AddInViews assembly (For instance compiled against version (Assembly and File) 1.0.0.1 but the currently loaded version is 1.0.0.2, then calling AddInStore.FindAdd()
 does not include the AddIn compiled against an older version. &amp;nbsp;All addins compiled against the current version are returned.&lt;/p&gt;
&lt;p&gt;I've tried calling AddInStore.Rebuild and AddInStore.Update but there is still no luck. &amp;nbsp;Calling these methods does not return any warnings (nor do I get any exceptions)&lt;/p&gt;
&lt;p&gt;Using the debugger to look at the AddInStore details I can see that the AddIn I'm trying to find is located in the AddInStore addinState information but still it doesn't get returned when trying to find it.&lt;/p&gt;
&lt;p&gt;I can rebuild the Addin that is not currently being found but my major concern is that once we release our product for 3rd parties to create plugins then we will not be able to issue newer version our project without have to get all Addins rebuilt.&lt;/p&gt;
&lt;p&gt;Is there a setting I'm missing which allows MAF to ignore version information? &amp;nbsp;Or is there something else I'm missing?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Thanks for you help.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Rob.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;</description><author>RMorrey</author><pubDate>Wed, 02 Nov 2011 17:10:58 GMT</pubDate><guid isPermaLink="false">New Post: AddIns built against an older version of the AddInViews assembly not being found by FindAddIn 20111102051058P</guid></item><item><title>New Post: Addin Shared Libraries</title><link>http://clraddins.codeplex.com/discussions/274033</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Never mind I figured it out.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;﻿﻿IList&amp;lt;AddInToken&amp;gt; tokens = AddInStore.FindAddIns(&lt;span style="color: blue;"&gt;typeof&lt;/span&gt;(IReport), DIRECTORY_PATH);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _reports = &lt;span style="color: blue;"&gt;new&lt;/span&gt; List&amp;lt;IReport&amp;gt;();&lt;br /&gt;&lt;span style="color: blue;"&gt;foreach&lt;/span&gt; (AddInToken token &lt;span style="color: blue;"&gt;in&lt;/span&gt; tokens)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; _reports.Add(token.Activate&amp;lt;IReport&amp;gt;(AppDomain.CurrentDomain));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; addReport(_reports.Last&amp;lt;IReport&amp;gt;());&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;If you pass the current app domain, you pass the current references.&lt;/p&gt;&lt;/div&gt;</description><author>cwang733t</author><pubDate>Tue, 27 Sep 2011 19:56:53 GMT</pubDate><guid isPermaLink="false">New Post: Addin Shared Libraries 20110927075653P</guid></item><item><title>New Post: Addin Shared Libraries</title><link>http://clraddins.codeplex.com/discussions/274033</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;&amp;#65279;&amp;#65279;&amp;#65279;&amp;#65279;&amp;#65279;&amp;#65279;&amp;#65279;&amp;#65279;I am using System.Addin for .Net 3.5 Visual Studio 2008.&lt;/p&gt;
&lt;p&gt;I have several addins which share the same set of libraries.&amp;nbsp; I would like to have a directory depository for the libraries instead of having to copy an instance of each addon.&amp;nbsp; Is there a way to do this without having to use the GAC (I cannot
 install on the user's machine).&lt;/p&gt;
&lt;p&gt;Thanks, Wang&lt;/p&gt;
&lt;/div&gt;</description><author>cwang733t</author><pubDate>Tue, 27 Sep 2011 19:49:04 GMT</pubDate><guid isPermaLink="false">New Post: Addin Shared Libraries 20110927074904P</guid></item><item><title>New Post: Does Eventing Causes Memory Leaks? Seems too...</title><link>http://clraddins.codeplex.com/discussions/34238</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;Hi all,&lt;/p&gt;
&lt;p&gt;After testing we have found a problem with the HwndSource / AddInHostSite references&amp;nbsp;too. We created a very simple test application where the only thing we do is transfer the FrameworkElement from AddIn to Host. We do NOT use, in any way, the FrameworkElement in the host itself. So the reference is left for the Garbage collector. In this test we set the default Lease and RenewOnCallTime of remoting to 5 seconds. When we loop through this code a 100 times or so, we&amp;nbsp;observed the following:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Memory only increased and was not released. (We use System.GC.Collect and GC.WaitForPendingFinalizers after each call to get the UI)&lt;/li&gt;
&lt;li&gt;We noticed that when calling System.AddIn.Pipeline.FrameworkElementAdapters.ContractToViewAdapter(INativeHandleContract inhc) in the Host adapter, an AddInHostSite object was marshalled to the AddIn&lt;/li&gt;
&lt;li&gt;When we implemented INativeContractHandle ourselves, we did NOT see the marshalling of the AddInHostSite from Host --&amp;gt; AddIn&lt;/li&gt;
&lt;li&gt;The amount of AddInHwndSourceWrapper System.AddIn.Pipeline.AddInHwndSourceWrapper objects was the same as the amount of calls we made to get the FrameworkElement from the AddIn.&lt;/li&gt;
&lt;li&gt;The same goes for MS.Internal.Controls.AddInHost and AddInHostSite&lt;/li&gt;
&lt;li&gt;When we shut down the Dispatcher with Dispatcher.Current.InvokeShutdown, all references&amp;nbsp;were removed.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;This has led us to believe that a circular reference is created between the Host&amp;nbsp;and AddIn. This reference keeps a lot of memory alive as the entire business model is attached to the Framework element at the AddIn side. We have created a very ugly workaraound that basically does the following:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Intercept the Marshalling of the AddInHostSite object to the AddIn appdomain.&lt;/li&gt;
&lt;li&gt;Register this object to be disconnected (from the remoting services) and its lifetime revoked (Reflection on private parts of AddInHostSite . . . ugh!)&lt;/li&gt;
&lt;li&gt;Disconnect and revoke this object when the host form closes.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;I know that this a rather tricky solution but it does clean up the references between Host and AddIn and we could verify that the system was pretty stable in memory consumption. In case anyone has found another/better solution, I would very much like to hear it.&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;John&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family: Courier New; font-size: xx-small;"&gt;&lt;span style="font-family: Courier New; font-size: xx-small;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;</description><author>JohnAlberts</author><pubDate>Tue, 19 Jul 2011 09:59:41 GMT</pubDate><guid isPermaLink="false">New Post: Does Eventing Causes Memory Leaks? Seems too... 20110719095941A</guid></item><item><title>New Post: Is MAF still alive?</title><link>http://clraddins.codeplex.com/discussions/257960</link><description>&lt;div style="line-height: normal;"&gt;&lt;p&gt;samirkut - Please correct me if I'm wrong, but the MEF you mentioned is something of on a different level/problem abstraction than MAF. Only the names are similar. MEF is an IoC while MAF is a communication and discovery&amp;nbsp;platform based on Remoting. To be more correct, you would rather compare MAF to the WCF!&lt;/p&gt;
&lt;p&gt;no to the my part&amp;nbsp;-&lt;/p&gt;
&lt;p&gt;The question on MAF's liveliness is problematic for me, too. I have been using WCF for networking like accessing webservices etc, but I found them really irritating to manage when dealing with 100% localmachine communication (and also quite slow, but that was probably implementational detail). What I have to deal with is a "worker process"&amp;nbsp;"pattern", which is simple in its core, but gets annoingly due to the small addition that my worker is almost guaranteed to crash .... at native level. And pitifully, that libraries I must use are not patchable, so I have to deal with it on the upper level in a checkpoint/restore/retry manner.&lt;/p&gt;
&lt;p&gt;The first thought was, that the .Net remoting is the best way to hack up a worker process, but&amp;nbsp;for some time I always stumble upon some notes like "forget remoting, get WCF", "remoting is obsolete" and so on. After glueing together some solutions in WCF and my own worker code, I decided to give Remoting/MAF try and for now, except some Pipelinebuilder nuisances and such, I'm happy with it.&lt;/p&gt;
&lt;p&gt;But the questions stays: Microsoft claimed in not a few places that .Net Remoting is obsolete and all developers should switch to WCF wherever possible. MAF is nice but bases on Remoting. Does that mean that MAF (a.k.a System.AddIn) was created/released and instantly dropped? Or maybe it will be ported to WCF? or maybe it is just that the Remoting is NOT obsolete but just discouraged?&lt;/p&gt;&lt;/div&gt;</description><author>quetzalcoatl</author><pubDate>Mon, 27 Jun 2011 13:40:13 GMT</pubDate><guid isPermaLink="false">New Post: Is MAF still alive? 20110627014013P</guid></item><item><title>New Post: Is MAF still alive?</title><link>http://clraddins.codeplex.com/discussions/257960</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;I am thinking of using MAF for one of my projects. However the lack of activity on MS website &amp;amp; this site is worrying. Is this technology still viable? Or should I be looking at newer alternatives like MEF? Any feedback would be appreciated. Thanks.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;</description><author>samirkut</author><pubDate>Tue, 17 May 2011 16:42:59 GMT</pubDate><guid isPermaLink="false">New Post: Is MAF still alive? 20110517044259P</guid></item><item><title>New Post: virtual methods in abstract class</title><link>http://clraddins.codeplex.com/Thread/View.aspx?ThreadId=245023</link><description>&lt;div style="line-height: normal;"&gt;
&lt;p&gt;Can the addin class have virtual members?&lt;/p&gt;
&lt;p&gt;Otherwise, every addin variant cannot inherit common functionality.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Mike&lt;/p&gt;
&lt;/div&gt;</description><author>mliddell</author><pubDate>Mon, 07 Feb 2011 20:47:27 GMT</pubDate><guid isPermaLink="false">New Post: virtual methods in abstract class 20110207084727P</guid></item></channel></rss>