The following tables show the relationship between sharing and accessing RIFF compound files and elements within those files, both within the current process and between processes. The following scenarios are presented:
A indicates that the function is allowed. Both the access and sharing values must be A for the open to work. For example, in the CF Open - CF Open of the same process, if the first CF Open is RO - DW, then the next CF Open must be RO - DW. Any access other than RO fails. Any sharing other than DW also will fail.
Abbreviations of access modes are:
Abbreviations for sharing modes are:
Element Opened Again
┌┬─────────────────┬┬───────────────────────┐
Element ││ Access ││ Sharing │
Opened ││ RO WO RW ││ DR DW DN EX │
┌──────────┼┼─────┬─────┬─────┼┼─────┬─────┬─────┬─────┤
│RO - DR ││ X │ A │ X ││ X │ A │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - DW ││ A │ X │ X ││ X │ A │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - DN ││ A │ A │ A ││ X │ A │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DR ││ X │ A │ X ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DW ││ A │ X │ X ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DN ││ A │ A │ A ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DR ││ X │ A │ X ││ A │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DW ││ A │ X │ X ││ A │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DN ││ A │ A │ A ││ A │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
└──────────┴┴─────┴─────┴─────┴┴─────┴─────┴─────┴─────┘
Any Process
──────────────
Elements Opened
┌┬─────────────────┬┬───────────────────────┐
││ Access ││ Sharing │
CF Opened ││ RO WO RW ││ DR DW DN EX │
┌──────────┼┼─────┬─────┬─────┼┼─────┬─────┬─────┬─────┤
│RO - DR ││ A │ X │ X ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - DW ││ A │ X │ X ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - DN ││ A │ X │ X ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - EX ││ A │ X │ X ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DR ││ A │ A │ A ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DW ││ A │ A │ A ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DN ││ A │ A │ A ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - EX ││ A │ A │ A ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DR ││ X │ A │ X ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DW ││ X │ A │ X ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DN ││ X │ A │ X ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - EX ││ X │ A │ X ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
└──────────┴┴─────┴─────┴─────┴┴─────┴─────┴─────┴─────┘
Same Process
──────────────
Fully Qualified Element Open
────────────────────────────
┌┬─────────────────┬┬───────────────────────┐
││ Access ││ Sharing │
CF Opened ││ RO WO RW ││ DR DW DN EX │
┌──────────┼┼─────┬─────┬─────┼┼─────┬─────┬─────┬─────┤
│RW - DN ││ A │ A │ A ││ A │ A │ A │ A │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
└──────────┴┴─────┴─────┴─────┴┴─────┴─────┴─────┴─────┘
CF Opened Again
┌┬─────────────────┬┬───────────────────────┐
││ Access ││ Sharing │
CF Opened ││ RO WO RW ││ DR DW DN EX │
┌──────────┼┼─────┬─────┬─────┼┼─────┬─────┬─────┬─────┤
│RO - DR ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - DW ││ A │ X │ X ││ X │ A │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - DN ││ A │ X │ X ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DR ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DW ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DN ││ X │ X │ A ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DR ││ X │ A │ X ││ A │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DW ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DN ││ X │ A │ X ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
└──────────┴┴─────┴─────┴─────┴┴─────┴─────┴─────┴─────┘
Same Process
──────────────
Element Opened
(different process)
┌┬─────────────────┬┬───────────────────────┐
││ Access ││ Sharing │
CF Opened ││ RO WO RW ││ DR DW DN EX │
┌──────────┼┼─────┬─────┬─────┼┼─────┬─────┬─────┬─────┤
│RO - DR ││ X │ A │ X ││ X │ A │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - DW ││ A │ X │ X ││ X │ A │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - DN ││ A │ A │ A ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DR ││ X │ A │ X ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DW ││ A │ X │ X ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DN ││ A │ A │ A ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DR ││ X │ A │ X ││ A │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DW ││ A │ X │ X ││ A │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DN ││ A │ A │ A ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
└──────────┴┴─────┴─────┴─────┴┴─────┴─────┴─────┴─────┘
CF Opened Again
┌┬─────────────────┬┬───────────────────────┐
││ Access ││ Sharing │
CF Opened ││ RO WO RW ││ DR DW DN EX │
┌──────────┼┼─────┬─────┬─────┼┼─────┬─────┬─────┬─────┤
│RO - DR ││ X │ A │ X ││ X │ A │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - DW ││ A │ X │ X ││ X │ A │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - DN ││ A │ A │ A ││ X │ A │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RO - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DR ││ X │ A │ X ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DW ││ A │ X │ X ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - DN ││ A │ A │ A ││ X │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│RW - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DR ││ X │ A │ X ││ A │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DW ││ A │ X │ X ││ A │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - DN ││ A │ A │ A ││ A │ X │ A │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
│WO - EX ││ X │ X │ X ││ X │ X │ X │ X │
├──────────┼┼─────┼─────┼─────┼┼─────┼─────┼─────┼─────┤
└──────────┴┴─────┴─────┴─────┴┴─────┴─────┴─────┴─────┘
Different Process
───────────────────