5. DeviceCharacteristics : 디바이스 속성을 결정한다. 해당사항이 없으면 0으로 설정한다.
Specifies one or more system-defined constants, combined with a bitwise OR
operation, that provide additional information about the driver's device. These
constants include the following:
FILE_AUTOGENERATED_DEVICE_NAME
Directs the I/O manager to generate a name for the device, instead of the
caller specifying a DeviceName when it calls this routine. The I/O
manager makes sure that the name is unique. This characteristic is typically
specified by a PnP bus driver to generate a name for a physical device object
(PDO) for a child device on the same bus. This characteristic is new starting
with Microsoft Windows 2000 and Microsoft Windows 98.
FILE_CHARACTERISTIC_PNP_DEVICE
Indicates that the device object is part of a Plug and Play (PnP) stack.
This characteristic is required if a bus driver (or bus filter driver) registers
WMI support for a device object that has not yet received the
IRP_MN_START_DEVICE request. FILE_CHARACTERISTIC_PNP_DEVICE is also required if
a function or filter driver registers for WMI before attaching to its
device stack.
FILE_CHARACTERISTIC_TS_DEVICE
Indicates that the device object is part of a Terminal Services device
stack. Drivers should not set this characteristic.
FILE_CHARACTERISTIC_WEBDAV_DEVICE
Indicates that a Web-based Distributed Authoring and Versioning (WebDAV)
file system is mounted on the device. Drivers should not set this
characteristic.
FILE_DEVICE_IS_MOUNTED
Indicates that a file system is mounted on the device. Drivers should not
set this characteristic.
FILE_DEVICE_SECURE_OPEN
(Microsoft Windows NT 4.0 with Service Pack 5 (SP5) and later versions of
Windows)
Directs the I/O manager to apply the security descriptor of the device object
to relative opens and trailing file name opens for the device. For more
information, see the Controlling Device
Namespace Access topic.
FILE_FLOPPY_DISKETTE
Indicates that the device is a floppy disk device.
FILE_READ_ONLY_DEVICE
Indicates that the device cannot be written to.
FILE_REMOTE_DEVICE
Indicates that the device is remote.
FILE_REMOVABLE_MEDIA
Indicates that the storage device supports removable media. Notice that this
characteristic indicates removable media, not a removable device.
For example, drivers for JAZ drive devices should specify this characteristic,
but drivers for PCMCIA flash disks should not.
FILE_VIRTUAL_VOLUME
Indicates that the volume is virtual. Drivers should not set this
characteristic.
FILE_WRITE_ONCE_MEDIA
Indicates that the device supports write-once media. Drivers do not set this
member directly.
6. Exclusive : FALSE (OEM 입출력인 경우에는 TRUE로 명시한다.)
7. *DeivceObject : 이 함수를 호출하기전에 선언한 fdo address를 넘겨준다.
*이름 생성과 관련된 예제
=> 3번과 5번 파라메터로 fdo의 이름을 생성 할 수 있는데 아래와 같이 3가지 경우로 나누어진다.