Microsoft DirectX 8.1 (C++)

ICADenial Interface

This topic applies to Windows XP Home Edition and Windows XP Professional only.

The ICADenial interface is supported by denial objects.

Policies create denials in order to block access to something. A denial can be associated either with a request or with a component. When a request has a denial, the user cannot access any part of the requested service. When a component has a denial, the user cannot access that particular component.

Denials typically have tolls, which the user can pay and thereby remove the denial. Depending on the implementation, this could require a complex credit card transaction, or something as simple as entering a password. It is possible for a denial to have no tolls, in which case the user cannot remove the denial.

Tolls, in turn, can have their own denials. If a toll has a denial, the toll is disabled and the user cannot pay it. Typically the denial will have another toll. Payment of that toll enables the first toll.

If a denial has several tolls, the user can remove the denial by paying any of the tolls. If a denial does not have any tolls, the user cannot remove the denial. (This is called an absolute denial.)

Every denial is managed by a particular policy. The denial cannot be removed unless that policy�s ICAPolicy::get_OkToRemoveDenial method returns TRUE.

In addition to the methods inherited from IDispatch, the ICADenial interface exposes the following methods.

Method Description
get_DeniedObject Retrieves the object that this denial is blocking.
get_Description Retrieves a description of the denial.
get_Policy Retrieves the policy that imposed this denial.
get_State Retrieves the state of the denial.
get_Tolls Retrieves the tolls that apply to this denial.
NotifyTollStateChanged Signals that the state of a toll has changed.
put_Description Specifies a description of the denial.
put_State Specifies the state of the denial.