Using Direct Annotation

To use direct annotation to override the value of a property

  1. Use CoCreate to create the IAccPropServices object.
  2. Call IAccPropServices::SetHwndPropX, passing the HWND, object ID, child ID, the property to be overridden, and a VARIANT containing the new value of the property. This step annotates the value.
  3. Release the interface pointers and free memory.

Properties Supported When Specifying a Value

The following properties can be annotated when specifying a value (where the value must be of the noted type) for direct annotation.

Property Type
PROPID_ACC_NAME VT_BSTR
PROPID_ACC_DESCRIPTION VT_BSTR
PROPID_ACC_ROLE VT_I4
PROPID_ACC_STATE VT_I4
PROPID_ACC_HELP VT_BSTR
PROPID_ACC_KEYBOARDSHORTCUT VT_BSTR
PROPID_ACC_DEFAULTACTION VT_BSTR
PROPID_ACC_VALUEMAP VT_BSTR
PROPID_ACC_ROLEMAP VT_BSTR
PROPID_ACC_STATEMAP VT_BSTR