SDC C-Project CF Review 프로그램
LYW
2021-07-19 2bd50ead7f0b92fb9ed5b477b63dea8fbcf8217e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
/*++ BUILD Version: 0004    // Increment this if a change has global effects
 
Copyright (c) 1992-1993  Microsoft Corporation
 
Module Name:
 
    devioctl.h
 
Abstract:
 
    This module contains
 
Author:
 
    Andre Vachon (andreva) 21-Feb-1992
 
 
Revision History:
 
 
--*/
 
// begin_winioctl
 
#ifndef _DEVIOCTL_
  #define _DEVIOCTL_
 
// begin_ntddk begin_nthal begin_ntifs
//
// Define the various device type values.  Note that values used by Microsoft
// Corporation are in the range 0-32767, and 32768-65535 are reserved for use
// by customers.
//
 
  #define DEVICE_TYPE ULONG
 
  #define FILE_DEVICE_BEEP                0x00000001
  #define FILE_DEVICE_CD_ROM              0x00000002
  #define FILE_DEVICE_CD_ROM_FILE_SYSTEM  0x00000003
  #define FILE_DEVICE_CONTROLLER          0x00000004
  #define FILE_DEVICE_DATALINK            0x00000005
  #define FILE_DEVICE_DFS                 0x00000006
  #define FILE_DEVICE_DISK                0x00000007
  #define FILE_DEVICE_DISK_FILE_SYSTEM    0x00000008
  #define FILE_DEVICE_FILE_SYSTEM         0x00000009
  #define FILE_DEVICE_INPORT_PORT         0x0000000a
  #define FILE_DEVICE_KEYBOARD            0x0000000b
  #define FILE_DEVICE_MAILSLOT            0x0000000c
  #define FILE_DEVICE_MIDI_IN             0x0000000d
  #define FILE_DEVICE_MIDI_OUT            0x0000000e
  #define FILE_DEVICE_MOUSE               0x0000000f
  #define FILE_DEVICE_MULTI_UNC_PROVIDER  0x00000010
  #define FILE_DEVICE_NAMED_PIPE          0x00000011
  #define FILE_DEVICE_NETWORK             0x00000012
  #define FILE_DEVICE_NETWORK_BROWSER     0x00000013
  #define FILE_DEVICE_NETWORK_FILE_SYSTEM 0x00000014
  #define FILE_DEVICE_NULL                0x00000015
  #define FILE_DEVICE_PARALLEL_PORT       0x00000016
  #define FILE_DEVICE_PHYSICAL_NETCARD    0x00000017
  #define FILE_DEVICE_PRINTER             0x00000018
  #define FILE_DEVICE_SCANNER             0x00000019
  #define FILE_DEVICE_SERIAL_MOUSE_PORT   0x0000001a
  #define FILE_DEVICE_SERIAL_PORT         0x0000001b
  #define FILE_DEVICE_SCREEN              0x0000001c
  #define FILE_DEVICE_SOUND               0x0000001d
  #define FILE_DEVICE_STREAMS             0x0000001e
  #define FILE_DEVICE_TAPE                0x0000001f
  #define FILE_DEVICE_TAPE_FILE_SYSTEM    0x00000020
  #define FILE_DEVICE_TRANSPORT           0x00000021
  #define FILE_DEVICE_UNKNOWN             0x00000022
  #define FILE_DEVICE_VIDEO               0x00000023
  #define FILE_DEVICE_VIRTUAL_DISK        0x00000024
  #define FILE_DEVICE_WAVE_IN             0x00000025
  #define FILE_DEVICE_WAVE_OUT            0x00000026
  #define FILE_DEVICE_8042_PORT           0x00000027
  #define FILE_DEVICE_NETWORK_REDIRECTOR  0x00000028
  #define FILE_DEVICE_BATTERY             0x00000029
  #define FILE_DEVICE_BUS_EXTENDER        0x0000002a
  #define FILE_DEVICE_MODEM               0x0000002b
  #define FILE_DEVICE_VDM                 0x0000002c
  #define FILE_DEVICE_MASS_STORAGE        0x0000002d
 
//
// Macro definition for defining IOCTL and FSCTL function control codes.  Note
// that function codes 0-2047 are reserved for Microsoft Corporation, and
// 2048-4095 are reserved for customers.
//
 
  #define CTL_CODE( DeviceType, Function, Method, Access ) (                 \
      ((DeviceType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method) \
  )
 
//
// Define the method codes for how buffers are passed for I/O and FS controls
//
 
  #define METHOD_BUFFERED                 0
  #define METHOD_IN_DIRECT                1
  #define METHOD_OUT_DIRECT               2
  #define METHOD_NEITHER                  3
 
//
// Define the access check value for any access
//
//
// The FILE_READ_ACCESS and FILE_WRITE_ACCESS constants are also defined in
// ntioapi.h as FILE_READ_DATA and FILE_WRITE_DATA. The values for these
// constants *MUST* always be in sync.
//
 
 
  #define FILE_ANY_ACCESS                 0
  #define FILE_READ_ACCESS          ( 0x0001 ) // file & pipe
  #define FILE_WRITE_ACCESS         ( 0x0002 ) // file & pipe
 
// end_ntddk end_nthal end_ntifs
 
#endif // _DEVIOCTL_
 
// end_winioctl