2009-07-07 18 views
3

我有一个.Net类,它调用一个C++ COM对象,该对象又调用COM中的另一个.Net类。 我发现这两个.Net类在单独的appdomains(这使得log4net有些麻烦)。注意它们在同一个线程中。COM互操作中的应用程序域

这是为什么? 有没有办法确保他们会在同一个appdomain?

+0

在什么情况下? IIS,桌面应用程序? – 2009-08-27 11:31:27

回答

0

调用一个作为COM公开的.NET类需要编组数据。 AppDomains分离数据访问。当你调用一个COM组件时(不管它是一个.NET应用程序),你必须使它成为沙盒。在.NET中,沙盒正在使用不同的AppDomain。