В этой статье объясняется, как запрашивать логические имена DOS для их соглашения об именах NT, используя QueryDosDevice . В нем объясняется, как добавлять и удалять имена логических устройств с помощью соглашения об именах NT, используя DefineDosDevice . В статье объясняется, что имя DOS требуется для доступа к различным устройствам.
"Программы Win32 не могут использовать внутренние
Имена устройств Windows NT для доступа
устройства, потому что подсистема Win32
и Win32 API требуют больше
знакомые буквы дисков и MS-DOS
имена устройств, такие как A :, C :, COM1 :,
и LPT1 "
Я нашел эту интересную статью , которая получает все доступные имена DOS и затем запрашивает имя NT, используя функцию GetLogicalDriveString . В этой статье не объясняется, как вернуть все определенные имена DOS для устройств, только диски.
Однако я хотел бы знать, как сделать обратное. Как бы я получить список имен устройств NT. Я не ищу только диски, но все устройства. Например, LPT1 и COM1 являются зарезервированными именами DOS, которые соответствуют определенным именам NT. Я хотел бы сопоставить дополнительные устройства, у которых может не быть имени DOS, чтобы я мог использовать функцию WINAPI CreateFile .
Как получить список всех имен устройств NT, противоположных именам DOS?