The IInternalUnknown interface is used exclusively in lightweight client-side handlers that require access to some of the internal interfaces on the proxy. It gives clients pointers to internal interfaces on a given object through the QueryInternalInterface method. For more information, see Lightweight Client-side Handlers.
Handlers that want access to some of the internal interfaces on the Proxy Manager have to go through the IInternalUnknown interface. This prevents the handlers from blindly delegating and exposing the aggregatee's internal interfaces outside of the aggregate. These interfaces include IClientSecurity and IMultiQI. If the handler wants to expose IClientSecurity or IMultiQI, the handler should implement these interfaces itself, and delegate to the Proxy Manager's implementation of these interfaces when appropriate.
For the IClientSecurity interface, if the client tries to set the security on an interface that the handler has exposed, the handler should set the security on the underlying network interface proxy.
For the IMultiQI interface, the handler should fill in the interfaces it knows about, then forward the call to the proxy manager to fill in the rest of the interfaces.
You do not need to implement this interface. The COM Proxy Manager implements IInternalUnknown when it is aggregated into a handler.
Use the IInternalUnknown interface to gain access, through a handler, to internal interfaces on the Proxy Manager.
IUnknown Methods | Description |
---|---|
QueryInterface | Returns pointers to supported interfaces. |
AddRef | Increments reference count. |
Release | Decrements reference count. |
IInternalUnknown Method | Description |
---|---|
IInternalUnknown::QueryInternalInterface | Returns pointers to internal interfaces. |
Windows NT: Use version 5.0 or later.
Windows: Unsupported.
Windows CE: Unsupported.
Header: Declared in urlmon.h.
IUnknown, IClientSecurity, IMultiQI