3.17.4 Message Processing Events and Sequencing Rules

To retrieve an IUpdateSession instance, the client MUST do one of the following:

  • Directly create an object that implements the IUpdateSession interface. The object creation mechanism is implementation-dependent.<18>

  • Obtain an IUpdateSession2 interface and use the IUnknown::QueryInterface method to obtain an IUpdateSession interface.

  • Obtain an IUpdateSession3 interface and use the IUnknown::QueryInterface method to obtain an IUpdateSession interface.

To retrieve an IUpdateSession2 instance, the client MUST do one of the following:

  • Directly create an object that implements the IUpdateSession2 interface. The object creation mechanism is implementation-dependent.

  • Obtain an IUpdateSession interface and use the IUnknown::QueryInterface method to obtain an IUpdateSession2 interface.

  • Obtain an IUpdateSession3 interface and use the IUnknown::QueryInterface method to obtain an IUpdateSession2 interface.

To retrieve an IUpdateSession3 instance, the client MUST do one of the following:

  • Directly create an object that implements the IUpdateSession3 interface. The object creation mechanism is implementation-dependent.

  • Obtain an IUpdateSession interface and use the IUnknown::QueryInterface method to obtain an IUpdateSession3 interface.

  • Obtain an IUpdateSession2 interface and use the IUnknown::QueryInterface method to obtain an IUpdateSession3 interface.