Простите что беспокою с глупыми вопросами. Как получить пользовательскому прилажению символьную ссылку для дальнейшего использования в CreateFile если эту ссылку дает менеджер PnP в функции драйвера AddDevice?
Эту ссылку дает не пнп менеджер а создаешь сам с помошью IoCreateSymbolicLink в выше упомянутой функции драйвера
Да когда жеско зауши драйвер притягиваешь то и без PnP можно обойтись но пошорошему надо получать ссылку через интерфейс. Потмучто дрйвер может быть один а таких устройств куча (к примеру у PCI или USB шины). И как ты им ссылки будешь давать типа PCI\MyDevice1, PCI\MyDevice2, PCI\MyDevice3.... Для этого люди из Мелкософта интерфейс придумали и функцию IoRegisterDeviceInterface(PDEVICE_OBJECT, PINTERFACE_GUID, PNAME_INTERFACE, PSYMBOLIC_LINK) так эта функция в последнем параметре оставляет символьную ссылку на новое устройство. Вопрос как получить эту ссылку в приложении пользователя если придумал ее не я?
ты должен знать GUI интерфейса SetupDiGetClassDevs - получишь HDEVINFO SetupDiEnumDeviceInterfaces - получишь SP_DEVICE_INTERFACE_DATA SetupDiGetDeviceInterfaceDetail - SP_DEVICE_INTERFACE_DETAIL_DATA SP_DEVICE_INTERFACE_DETAIL_DATA:evicePath - это то что тебе нужно