2.2.1.5.1 Device Create Response (DR_CREATE_RSP)
A message with this header describes a response to a Device Create Request (section 2.2.1.4.1).
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
DeviceIoReply (16 bytes) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
FileId |
|||||||||||||||||||||||||||||||
Information (optional) |
DeviceIoReply (16 bytes): A DR_DEVICE_IOCOMPLETION header. The CompletionId field of this header MUST match a Device I/O Request (section 2.2.1.4) message that had the MajorFunction field set to IRP_MJ_CREATE.
FileId (4 bytes): A 32-bit unsigned integer that specifies a unique ID for the created file object. The ID MUST be reused after sending a Device Close Response (section 2.2.1.5.2).
Information (1 byte): An unsigned 8-bit integer. This field indicates the success of the Device Create Request (section 2.2.1.4.1). The value of the Information field depends on the value of CreateDisposition field in the Device Create Request (section 2.2.1.4.1). If the IoStatus field is set to 0x00000000, this field MAY be skipped,<7> in which case the server MUST assume that the Information field is set to 0x00. The possible values of the Information field are:
-
Value
Meaning
FILE_SUPERSEDED
0x00000000
A new file was created.
FILE_OPENED
0x00000001
An existing file was opened.
FILE_OVERWRITTEN
0x00000003
An existing file was overwritten.
The values of the CreateDisposition field in the Device Create Request (section 2.2.1.4.1) that determine the value of the Information field are associated as follows:
-
Information field value
CreateDisposition field value
FILE_SUPERSEDED
FILE_SUPERSEDE
FILE_OPEN
FILE_CREATE
FILE_OVERWRITE
FILE_OPENED
FILE_OPEN_IF
FILE_OVERWRITTEN
FILE_OVERWRITE_IF