3.2.5.2.1.2 Processing HandshakeEx PDU
The client SHOULD check the buildNumber field to verify compatibility of the receiver with the sender.<28>
If the TS_RAIL_ORDER_HANDSHAKEEX_FLAGS_HIDEF (0x00000001) flag in the railHandshakeFlags field is set, the remote session is running in Enhanced RemoteApp mode, and the client SHOULD handle the RDPGFX_MAP_SURFACE_TO_WINDOW_PDU ([MS-RDPEGFX] section 2.2.2.20) message. If this flag is not set, the session is not running in Enhanced RemoteApp mode, even if the client requested it in the Client Info PDU (as specified in section 3.2.5.1.3). In this scenario, the client SHOULD NOT expect to receive Enhanced RemoteApp messages.
The client MUST NOT process any other virtual channel PDUs unless either the HandshakeEx PDU (section 2.2.2.2.3) or the Handshake PDU (section 2.2.2.2.1) has been received.