Вроде по идеи, нужно в начале PnpDispatch вызвать IoInitializeRemoveLock(...), а после обработки запроса IoReleaseRemoveLock(...).
А каким образом диспетчер PnP узнает о том, что устройтсво нужно удалить в первый раз?
Я имел ввиду обработку запроса IRP_MN_CANCEL_REMOVE_DEVICE. Можно посмотреть код?
MSDN читал? http://msdn.microsoft.com/en-us/library/aa489854.aspx
Функцию проверки ключа найти не смог, даже не знаю в каком модуле эта проверка происходит. C IDA проблем не было. Бряк на CreateFile не помог....
Короче залей куда-нибуть всю программу.
key.mxk есть в наличии?
Видимо еще нужен MxPro.mxi
Прога хочет загрузить MxGL.dll. Имеется ли в наличии этот файл?
Можно увидеть код клиента и сервера? Потому что, ответить на вопрос типа: "У меня отвалился инет, в чем проблема?", можно, но лучше не надо.
Вероятнее всего выучить C++.
Почему ты решил, что родной драйвер Logitech, должен выводить отладочные сообщения? Ошибка STATUS_DEVICE_CONFIGURATION_ERROR, при чет тут INF файл?
Также как ты до этого делал, с помощью TlsSetValue http://www.wasm.ru/article.php?article=tls...
Прочитай все статьи http://www.wasm.ru/series.php?sid=9. Там узнаешь про сервисы и много другого полезного.
Каждый вызов TlsAlloc быдет возвращать адрес новой ячейки, потому-что эта функция пердназначена для того, чтобы резервировать новую ячейку. Зачем...
Имена участников (разделяйте запятой).