4.2.1 Client Request for Creating a Special Folder
A complete set of ROP requests to create the Calendar folder would look like the following.
0000: 02 00 00 01 01 00 00 00-01 42 0E 41 00
RopOpenFolder ([MS-OXCROPS] section 2.2.4.1)
RopId: 0x02
LogonId: 0x00
InputHandleIndex: 0 (Server object handle = 0x00000059)
FolderId: 0001-000001420E41
Note The FID ([MS-OXCDATA] section 2.2.1.1) 0001-000001420E41 is for the Top of Personal Folders folder. This identifier is received from the RopLogonROP ([MS-OXCROPS] section 2.2.3.1).
OpenModeFlags: 0x00 (ReadOnly)
... 0000: 1C 00 00 01 01 01 00 00-43 00 61 00 6C 00 65 00 0010: 6E 00 64 00 61 00 72 00-00 00 43 00 61 00 6C 00 0020: 65 00 6E 00 64 00 61 00-72 00 20 00 43 00 6F 00 0030: 6D 00 6D 00 65 00 6E 00-74 00 00 00
RopCreateFolder ([MS-OXCROPS] section 2.2.4.2)
RopId: 0x1C
LogonId: 0
InputHandleIndex: 0 (Server object handle = 0x00000497)
FolderType: 0x01
UseUnicodeStrings: (0x01) (TRUE)
OpenExisting: 0x00 (FALSE)
Reserved: 0x00 (FALSE)
DisplayName: Calendar
Comment: Calendar Comment
0000: 02 00 00 01 01 00 00 00-01 42 0E 44 00
RopOpenFolder
RopId: 0x02
LogonId: 0
InputHandleIndex: 0 (Server object handle = 0x00000059)
FolderId: 0001-000001420E44
Note Open the Inbox folder with the FID given in the FolderId field.
OpenModeFlags: 0x00 (Open existing folder)
0000: 0A 00 00 36 00 01 00 02-01 D0 36 2E 00 00 00 00 0010: 00 6A 3C B8 FA 3B A9 F0-46 B4 F4 E4 B6 C7 74 45 0020: 09 01 00 02 27 39 56 14-8B EF 4F 98 14 81 7E 2C 0030: 82 BD C2 00 00 01 50 4D-F6 00 00
RopSetProperties ([MS-OXCROPS] section 2.2.8.6)
RopId: 0x0A
LogonId: 0
InputHandleIndex: 0 (Server object handle = 0x000004E4)
Note 0x000004E4 is a handle to the Inbox folder.
PropertyValueSize: 0x0036 (54)
PropertyValueCount: 1 (0x01)
0x36D00102 PidTagIpmAppointmentEntryId 46 bytes (section 2.2.3)
0000: 00 00 00 00 6A 3C B8 FA-3B A9 F0 46 B4 F4 E4 B6 0010: C7 74 45 09 01 00 02 27-39 56 14 8B EF 4F 98 14 0020: 81 7E 2C 82 BD C2 00 00-01 50 4D F6 00 00 0000: 0A 00 00 26 00 01 00 1F-00 13 36 49 00 50 00 46 0010: 00 2E 00 41 00 70 00 70-00 6F 00 69 00 6E 00 74 0020: 00 6D 00 65 00 6E 00 74-00 00 00
RopSetProperties
RopId: 0x0A
LogonId: 0
InputHandleIndex: 0 (Server object handle = 0x0000042E)
PropertyValueSize: 0x0026 (38)
PropertyValueCount: 1 (0x01)
PidTagContainerClass (section 2.2.8): IPF.Appointment