Здравствуйте, theTrueMayhem, Вы писали:
TM>Спасибо! Да тут все понятно только у меня один вопрос! У USB драйверов в DDK сэмплах почему то отсутствует SymbolicName и вместо этого запускается IoRegisterDeviceInterface — то есть две взаимоисключающие функции..
Никакие они не "взаимоисключающие". Можно иметь несколько симлинков на объект (интерфейс — тот же симлинк в принципе).
TM>я воспользовался вторым методом.. все сбрыкнулось почему интересно? И в DDK чот еще написано мол для WDM и PnP драйверов нельзя использовать SymbolicName.. почему? я ведь видел что их часто юзают!
Можно и обычный симлинк создать, никто не запрещает. Только тогда вам нужно будет самому отслеживать их уникальность если устройств >1. Интерфейсы позволяют Вам об этом не задумываться, кроме того единожды зарегистрированный интерфейс живет в системе постоянно, что позволяет обойтись без его повторной регистрации (хм.. это не преимущество, а скорее особенность, которой мало кто пользуется

. По имени интерфейса можно однозначно определить устройство, которое он олицетворяет, легко менять состояние интерфейса (создавать/удалять симлинк). Не стоит также забывать о стандартных интерфейсах. Если вы ваяете что-нибудь "общественно полезное"

то от Вас будут ожидать именно интерфейс, а не невнятный симлинк.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>