Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Windows Object Manager  (Прочитано 7537 раз)
0 Пользователей и 1 Гость смотрят эту тему.
bob
Гость
« : 30-05-2008 12:10 » 

Как перечислить все символьные ссылки в директории \??  ?
В MSDN - не нашел как это сделать. Какие ресурсы сети имеются по этому вопросу?
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #1 : 30-05-2008 15:25 » 

а я бы ещё в Яndex поискал Ага

а если серьёзно, что понимается под "перечислить все символьные ссылки в директории \??  ?"
?
Записан

bob
Гость
« Ответ #2 : 30-05-2008 15:50 » 

ну то есть получить список всех ссылок, находящихся в этой директории
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #3 : 30-05-2008 16:03 » 

не пойму, про какую директорию речь ? Возможно, я что то пропустил
Записан

bob
Гость
« Ответ #4 : 30-05-2008 16:29 » 

В пространстве имен менджера объектов windows имеется две директории доступные пользовательскому коду - это \GLOBAL?? (или \??) и \BaseNamedObjects. Так вот например получение обекта устройства из какой нибудь директории менеджера (например все той же CreateFile) из режима пользователя возможно через символьные ссылки, расположенные в \??. Мне нужно получить список всех ссылок в \??.

Сейчас расскажу для чего, может быть есть другой способ.

При сканированни виртуального пространства некоего процесса с помощью VitrualQueryEx,  GetMappedFileName возвращает полные пути спроецированных в пространство процесса файлов, но вот вместо буквы диска в начале пути стоит \Device\HarddiskVolume1.

Имея в руках все символьные ссылки в \?? можно сопоставить \Device\HarddiskVolume1 например c:\. Но может есть другой способ?
Записан
zubr
Гость
« Ответ #5 : 30-05-2008 17:00 » new

bob, смотри в сторону функций: SetupDi...xxx (SetupDiCreateDeviceInfoList, SetupDiEnumDeviceInfo, SetupDiGetDeviceRegistryProperty)
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines