INFO: Exposing ServicedComponents As a Remoting Endpoint from a COM+ Dllhost.exe Process Is Not Supported

just saw it from KBAlertz

INFO: Exposing ServicedComponents As a Remoting Endpoint from a COM+ Dllhost.exe Process Is Not Supported

(322627) - The process of exposing ServicedComponents classes for remoting by using Dllhost.exe as the hosting process is neither tested nor supported.

[kbAlertz - .NET Framework SDK]

we've been using com+ from the first day of our project when .net was still in beta.

we exposed our com+ objects thru remoting all the time, untill a microsoft mcs guy told us it's not supported, when we asked why we didn't get any satisfying  answer. we hacked the code thru reflector a bit and found out that the com+ proxy really handles these cases in some ways and it is aware if the com+ is being remoted.

 

the real reason why not to use this feature is the case where you'll want to use com+ application pool in windows 2003, since only one process can register a given connection port you'll need another process to register them and expose the com+ object thru it.

 

so it's really a matter of design, also we found out that exposing this com+ object in another process without calling dispose can lead to problems with commiting transaction ( we use sqlserver) so adding a using clause can make the needed fix.