Re[2]: DefineDosDevice-удалить устройство из драйвера?
От: argent  
Дата: 28.08.06 16:54
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Так в чём проблема-то? Если нужно удалить символьную ссылку из драйвера, то для этого есть


А>
А>NTSTATUS 
А>  IoDeleteSymbolicLink(
А>    IN PUNICODE_STRING  SymbolicLinkName
А>    );
А>


Мне нужно такое же действие, какое в юзермоде производит DefineDosDevice. В том числе, рассылая сообщения, например explorer, чтобы он правильно отображал определенные устройства.

А>И совершенно не понимаю зачем создавать эту самую символьную ссылку из Ring3 ?


Сейчас я делаю это из юзермода, но если это приложение закроют, было бы не плохо, если бы драйвер умел это делать сам.

А>Это есть необходимое условие? Если нет, то создавай и удаляй ссылку в драйвере.


Да, именно в драйвере мне и нужно это сделать. проблема только с сообщением (WM_DEVICECHANGE,DBT_DEVICEARRIVAL), (ну или WM_DEVICECHANGE , DBT_DEVTYP_VOLUME), как из разослать броадкастом из драйвера?

А>Или надо, чтобы только твоё приложение могло его юзать? Так это всё равно не получиться, т.к. пока твоё приложение работает, другое тоже может подключиться по этой же ссылке.


Нет, мое приложение производит данные для этого устройства, а все остальные используют его как диск.

С Уважением, Геннадий.
Жить будем плохо, но не долго...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.