PnP!!!!

Тема в разделе "WASM.WIN32", создана пользователем AS25, 3 апр 2006.

  1. AS25

    AS25 New Member

    Публикаций:
    0
    Регистрация:
    2 апр 2006
    Сообщения:
    28
    Адрес:
    Russia
    Простите что беспокою с глупыми вопросами.

    Как получить пользовательскому прилажению символьную ссылку для дальнейшего использования в CreateFile если эту ссылку дает менеджер PnP в функции драйвера AddDevice?
     
  2. grspectre

    grspectre New Member

    Публикаций:
    0
    Регистрация:
    3 апр 2006
    Сообщения:
    4
    Адрес:
    Russia
    Эту ссылку дает не пнп менеджер а создаешь сам с помошью

    IoCreateSymbolicLink в выше упомянутой функции драйвера
     
  3. AS25

    AS25 New Member

    Публикаций:
    0
    Регистрация:
    2 апр 2006
    Сообщения:
    28
    Адрес:
    Russia
    Да когда жеско зауши драйвер притягиваешь то и без PnP можно обойтись но пошорошему надо получать ссылку через интерфейс. Потмучто дрйвер может быть один а таких устройств куча (к примеру у PCI или USB шины). И как ты им ссылки будешь давать типа PCI\MyDevice1, PCI\MyDevice2, PCI\MyDevice3.... Для этого люди из Мелкософта интерфейс придумали и функцию IoRegisterDeviceInterface(PDEVICE_OBJECT, PINTERFACE_GUID, PNAME_INTERFACE, PSYMBOLIC_LINK) так эта функция в последнем параметре оставляет символьную ссылку на новое устройство. Вопрос как получить эту ссылку в приложении пользователя если придумал ее не я?
     
  4. Kola

    Kola New Member

    Публикаций:
    0
    Регистрация:
    23 июн 2004
    Сообщения:
    69
    ты должен знать GUI интерфейса



    SetupDiGetClassDevs - получишь HDEVINFO

    SetupDiEnumDeviceInterfaces - получишь SP_DEVICE_INTERFACE_DATA

    SetupDiGetDeviceInterfaceDetail - SP_DEVICE_INTERFACE_DETAIL_DATA



    SP_DEVICE_INTERFACE_DETAIL_DATA::lol: evicePath - это то что тебе нужно
     
  5. AS25

    AS25 New Member

    Публикаций:
    0
    Регистрация:
    2 апр 2006
    Сообщения:
    28
    Адрес:
    Russia
    Kola БОЛЬШОЕ ЧЕЛОВЕЧЕКОЕ СПАСИБО!!!