Are there items you typically choose not to virtualize?

Yes.  If a COM component is running, we don’t try to start up a new one.  Other things we leave alone are things like IIS – because it’s tightly integrated with the OS.  Things like application pools that help you do your load balancing – to run multiple instances – we fit into your existing environment by using IIS virtual directory capability.  Other things we don’t try to do are isolate management.  You don’t need another thing to manage. 

Also, RPC and networking environments, we really don’t touch at all.  If your app can be reached by an RPC, by using machine name, that will still work when it’s running in a VAA.  It’s a matter of keeping an application isolated but allowing it to integrate with the things it needs in order to play a part in your normal operations.