Эти данные располагаются в ядре, в массиве (0x80 элементов), на который указывет nt!FsRtlLegalAnsiCharacterArray. Индекс элемента массива в нем является численным значением символа. Каждый элемент – маска флагов, сигнализирующая: для каких файловых систем разрешено использовать символ в имени файла.
Флаги:
- 0x01 - символ разрешен к использованию на файловой системе FAT
- 0x02 - символ разрешен к использованию на файловой системе HPFS
- 0x04 - символ разрешен к использованию на файловой системе NTFS
- 0x08 - разрешен к использованию в качестве WILD-символа (задание маски)
- 0x10 - символ разрешен к использованию на файловой системе NTFS в имени потока (stream)
Таблица взята из ядра Windows (актуальность проверена на линейке Windows 2000-Seven):
Символ | FAT | HPFS | NTFS | NTFS:Stream | WILD |
0x00 ^@ | |||||
0x01 ^A | |||||
0x02 ^B | |||||
0x03 ^C | |||||
0x04 ^D | |||||
0x05 ^E | |||||
0x06 ^F | |||||
0x07 ^G | |||||
0x08 ^H | |||||
0x09 ^I | |||||
0x0A ^J | |||||
0x0B ^K | |||||
0x0C ^L | |||||
0x0D ^M | |||||
0x0E ^N | |||||
0x0F ^O | |||||
0x10 ^P | |||||
0x11 ^Q | |||||
0x12 ^R | |||||
0x13 ^S | |||||
0x14 ^T | |||||
0x15 ^U | |||||
0x16 ^V | |||||
0x17 ^W | |||||
0x18 ^X | |||||
0x19 ^Y | |||||
0x1A ^Z | |||||
0x1B ESC | |||||
0x1C FS | |||||
0x1D GS | |||||
0x1E RS | |||||
0x1F US | |||||
0x20 space | |||||
0x21 ! | |||||
0x22 " | |||||
0x23 # | |||||
0x24 $ | |||||
0x25 % | |||||
0x26 & | |||||
0x27 ' | |||||
0x28 ( | |||||
0x29 ) | |||||
0x2A * | |||||
0x2B + | |||||
0x2C , | |||||
0x2D - | |||||
0x2E . | |||||
0x2F / | |||||
0x30 0 | |||||
0x31 1 | |||||
0x32 2 | |||||
0x33 3 | |||||
0x34 4 | |||||
0x35 5 | |||||
0x36 6 | |||||
0x37 7 | |||||
0x38 8 | |||||
0x39 9 | |||||
0x3A : | |||||
0x3B ; | |||||
0x3C < | |||||
0x3D = | |||||
0x3E > | |||||
0x3F ? | |||||
0x40 @ | |||||
0x41 A | |||||
0x42 B | |||||
0x43 C | |||||
0x44 D | |||||
0x45 E | |||||
0x46 F | |||||
0x47 G | |||||
0x48 H | |||||
0x49 I | |||||
0x4A J | |||||
0x4B K | |||||
0x4C L | |||||
0x4D M | |||||
0x4E N | |||||
0x4F O | |||||
0x50 P | |||||
0x51 Q | |||||
0x52 R | |||||
0x53 S | |||||
0x54 T | |||||
0x55 U | |||||
0x56 V | |||||
0x57 W | |||||
0x58 X | |||||
0x59 Y | |||||
0x5A Z | |||||
0x5B [ | |||||
0x5C backslash | |||||
0x5A Z | |||||
0x5B [ | |||||
0x5C backslash | |||||
0x5F _ | |||||
0x60 ` | |||||
0x61 a | |||||
0x62 b | |||||
0x63 c | |||||
0x64 d | |||||
0x65 e | |||||
0x66 f | |||||
0x67 g | |||||
0x68 h | |||||
0x69 i | |||||
0x6A j | |||||
0x6B k | |||||
0x6C l | |||||
0x6D m | |||||
0x6E n | |||||
0x6F o | |||||
0x70 p | |||||
0x71 q | |||||
0x72 r | |||||
0x73 s | |||||
0x74 t | |||||
0x75 u | |||||
0x76 v | |||||
0x77 w | |||||
0x78 x | |||||
0x79 y | |||||
0x7A z | |||||
0x7B { | |||||
0x7C | | |||||
0x7D } | |||||
0x7E ~ | |||||
0x7F | |||||
> 0x7F |
ΞρεΤΙκ