184.108.40.206 Setting a Property with a Stream
The client then obtains a handle to the Stream object on the property by using the RopOpenStreamROP ([MS-OXCROPS] section 220.127.116.11). The client sets the OpenModeFlags field of the ROP request buffer to ReadWrite or Create. To verify that the handle was retrieved, the client checks the ReturnValue field of the ROP response buffer.
If it is not necessary for the client to write from the start of the stream, the client sets the seek pointer by using the RopSeekStream ROP ([MS-OXCROPS] section 18.104.22.168). The client then writes data to the stream by using one or more RopWriteStreamROP requests ([MS-OXCROPS] section 22.214.171.124).
The client saves the changes to the property of a Folder object by using the RopCommitStream ROP ([MS-OXCROPS] section 126.96.36.199) or by closing the Stream object with the RopRelease ROP ([MS-OXCROPS] section 188.8.131.52). The client saves the changes to the property of a Message object by using the RopSaveChangesMessage ROP ([MS-OXCROPS] section 184.108.40.206). The client saves the changes to the property of an Attachment object by using the RopSaveChangesAttachment ROP ([MS-OXCROPS] section 220.127.116.11) followed by the RopSaveChangesMessage ROP.
When the client is done with the Stream object, the client releases the Stream object by using the RopRelease ROP.