IInternalUnknown

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.

When to Implement

You do not need to implement this interface. The COM Proxy Manager implements IInternalUnknown when it is aggregated into a handler.

When to Use

Use the IInternalUnknown interface to gain access, through a handler, to internal interfaces on the Proxy Manager.

Methods in VTable Order

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.

QuickInfo

  Windows NT: Use version 5.0 or later.
  Windows: Unsupported.
  Windows CE: Unsupported.
  Header: Declared in urlmon.h.

See Also

IUnknown, IClientSecurity, IMultiQI