PDC05 – Managed AddIn Framework (MAF)

MAF (Managed AddIn Framework) The Managed Add-in Framework defines a programming model, built on top of .NET that allows applications to dynamically load and communicate with generic components at runtime.  We provide a solution for creating independently versioning, mutually distrustful components, and allow them to work together.  We tackle the two problematic – versioning and…


Hello World (ISV/VAR/SI)

My job is to make your life easier My new role as a Software Architect on the Common Language Runtime (.Net), is currently focused on engaging with ISV/VAR/SI customers. I am interested in understanding your .Net architectural adoption issues and identifying desired platform feature requests and enhancements. It’s your product – What do you want…


Enumerating AppDomains

Recently I was writing a sample app showing some new MAF (Managed Add-In Framework) features that will be released very soon. Stay tuned. As I was showing isolation and unload-ability, I wanted to enumerate the AppDomain’s in the current process. Surprisingly there is no managed API in the BCL to show AppDomains L Using Interop…


AppDomains and Addins

What is an Application Domain (AD)? An Application Domain is a CLR feature that provides a unit of isolation for an application.  An AD may be thought of as a lighter weight process boundary.  Multiple AppDomains may be created within a host process.  The CLR also verifies that the user code in an App domain…


.Net Remoting continued

After several frustrating hours troubleshooting issues with objects flowing in both directions (i.e., From Client to Sever and vice versa), I have some more information that may help you.  This information is a continuation of the previous post on the subject found here.   In my previous posting I was primarily discussing activation of Client…


.Net Remoting (AppDomains, Out of Process, Two Way, etc..)

I previously wrote about bi-directional remoting over IPC (see  .Net Remoting continued and .Net Remoting).  Several people asked for complete sample code.  Ok, the squeaky wheel gets the attention.  This could be an indication of my poor writing skills 😉 or the difficulty in figuring out remoting, or a little of both.  I also want…


CLR Inside Out: .Net Extensibility

(5/16/08, updated MSDN links ) The March MSDN issue is now available on-line.  In this issue you will find our second of two MSDN articles introducing the new System.Addin* Base Class Libraries (BCL). In our first article we walked through the typical process customers undertake in offering extensibility through their Host applications.  We discussed the functionality…


Out of Process IPC/TCP Remoting code

Click this link for a description of the source code   I have attached the VS solutions in the file: SourceSolution.zip View Source: Show Code … HostApp project – RemotingSamples Program.cs   using System; using System.Collections.Generic; using System.Text; // RemotingServices using System.Runtime.Remoting; // BinaryServer/ClientFormatterSinkProvider(s) using System.Runtime.Remoting.Channels; using System.Runtime.Remoting.Channels.Tcp; using System.Runtime.Remoting.Channels.Ipc; // Need this for that pesky…


Winforms and System.AddIn

This posting is in response to a F.A.Q. (Frequently Asked Question) I receive regarding the Add-In model and Winforms.  To be clear, there is nothing in the Add-In model that prevents rich isolatable Host/AddIn UI scenarios.  Support for AppDomains and/or Process boundaries enables unloadability and isolation but you need to be aware that this implies…


PDC05 – Microsoft Visual Studio Tools for Applications (VSTA)

Microsoft Visual Studio Tools for Applications (VSTA) Charter Provide a redistributable Integrated Development Environment (IDE), Design Time (DT), and Run time (RT) for hosts (ISV’s, etc..) providing a rich managed customization environment for developers. VSTA v1.0 was just announced in the keynote at PDC and the ship date coinsides with the release of Office 12….