[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

microsoft.public.dotnet.framework.interop

.NET, COM+ and IProvideClassInfo

tstephan

6/15/2007 7:14:00 PM

I am connecting to old VB6 components running under COM+ with a C#
app. Everything actually works however, in the event log I receive
this for every call (guids change based on the component):

A method call to an object in a COM+ application was rejected because
the caller is not properly authorized to make this call. The COM+
application is configured to use Application and Component level
access checks, and enforcement of these checks is currently enabled.
The remainder of this message provides information about the component
method that the caller attempted to invoke and the identity of the
caller.

Destination of the rejected call:
Application Id: {0DDF6DCA-1332-4EF1-89D7-B5AB07225158}
CLSID: {7E75BCD9-7CF3-4EED-BA96-DE8A791688BC}
IID: {B196B283-BAB4-101A-B69C-00AA00341D07}
Method #: 3

Interestingly, the IID above is for IProvideClassInfo. My call in C#
to create the object is:

blah blah = Activator.CreateInstance(uHTSDBObjectType);

It appears that .NET is trying to get to IProvideClassInfo behind the
scenes - is this true? COM+ is rejecting the call because the COM+
application has interface level security active (required for the
application to provide user level security). .NET fails over silenty
which is correct and my object is created and works fine.

The strange part is that W2K3 R2 doesn't seem to exhibit this behavior
while W2K SP4 does.

The annoying factor is that the event log fills up quickly which will
not make admins happy.

Regards,
Todd