Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2010.10.03;
Скачать: [xml.tar.bz2];

Вниз

BIOS, ZwOpenSection и Vista   Найти похожие ветки 

 
TAG   (2009-04-15 11:13) [0]

Добрый день.

Для определения конфига компьютера я читаю BIOS (SMBIOS) с помощью GetProcAddress(NtLayer, "ZwOpenSection"); (текст как-то пробегал на этом форуме).

Проблема в том, что под Vista и выше получаю  STATUS_ACCESS_DENIED.

А очень хотелось бы таки прочесть :)
Помогите, пожалуйста ( checkcfg (Зобака) narod.ru )


 
Palladin ©   (2009-04-15 11:45) [1]

1. Не Зобака, а AT. )
2. http://www.delphimaster.ru/forums.shtml#rule Рекомендуется: п.11
3. Хочется - запускай под Администраторской учетной записью. Попробуй по крайней мере, подозрение на недостаточность прав учетной записи. И почитай, что это значит в MSDN.


 
TAG   (2009-04-15 11:59) [2]

Palladin :

про п.11 - не понял, при чем тут мой пост ???

про права и MSDN - права Админские. Что значит сообщение - понятно.
Не понятно ЧЕМ вызвано и как обойти (если можно).

Более того, если читать БИОС с помощью 16-битного приложения - выводить кусок БИОСА через INT21 DosCall(0x40) -  DOS_WRITE_TO_HANDLE где HANDLE=STDOUT то на однотипных машинах под Win2003 выводится кусок, а под Win2000 - весь запрашиваемый фрагмент E000:0000-E000:FFFE


 
Игорь Шевченко ©   (2009-04-15 13:17) [3]


> Проблема в том, что под Vista и выше получаю  STATUS_ACCESS_DENIED.


что, при GetProcAddress ?


 
12 ©   (2009-04-15 14:13) [4]

А выше Vista это какая?


 
TAG   (2009-04-15 14:24) [5]

Выше WinXP - Vista,2003, ( 2008 и 7ка наверно тоже )

Шевченко :

GetProcAddress(NtLayer, "ZwOpenSection")
GetProcAddress(NtLayer, "RtlNtStatusToDosError")
- все Ок

Status := ZwOpenSection(Section, SECTION_MAP_READ,
                             @ObjectPhysicalMemoryAttributes);

получаю STATUS_ACCESS_DENIED

вот аналог.кусок кода http://book.77169.org/ask24/how163755.htm
(поиск на странице текста "@ObjectPhysicalMemoryAttributes")


 
Игорь Шевченко ©   (2009-04-15 14:36) [6]


> получаю STATUS_ACCESS_DENIED


Ну да. Закрыли эту дырку наконец.

"access to this object is denied starting in Windows 2003 Service Pack 1 and Windows Vista. "


 
TAG   (2009-04-15 14:44) [7]

П.С. это - не "аналог.кусок" - это то, на основании чего я и замутил чтение SMBIOSа.

В вышепр.куске читается память F000:0000-F000:FFFF, в ней лежит заголовок SMBIOSа, он разбирается моей прогой и при необходимости дочитывается кусок с данными о железе компа.

Например, Compaq ML350 - Заголовок в F000 сегменте, а данные - в E000 сегменте, с адреса C000

Попытка читать через NTLayer выдает ошибку, тогда файлом, сделанным по чудо-методе _RomDumpCode (см.ссылку) читаем сегменты E000 и F000 под Win2000 и Win2003.

итог :
под 2003 до адреса E000:E000 считываются только нули, далее считанные данные до F000:FFFE совпадают.

т.о. получаем - и так не прочесть и так - лажа получается... а програмка нужная, популярная, хочется довести :)

Андрей.


 
Alex Konshin ©   (2009-04-20 03:45) [8]

У меня нет Vista (и видимо не будет), но думаю, что всё станет ясно, если посмотреть на права объекта через WinObj Руссиновича.


 
TAG   (2009-04-22 16:41) [9]

2 Alex Konshin : Не пойму - на какой объект, извините ?


 
TAG   (2009-04-22 16:44) [10]

если PhisicalMemory - то Admins - QueryData & QueryState разрешены



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2010.10.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.003 c
15-1278448186
Юрий
2010-07-07 00:29
2010.10.03
С днем рождения ! 7 июля 2010 среда


2-1278433099
Delphist2
2010-07-06 20:18
2010.10.03
полупрозрачность


6-1199825920
sdaf
2008-01-08 23:58
2010.10.03
Избитая тема, Хочу узнать свой IP


15-1278275386
Юрий
2010-07-05 00:29
2010.10.03
С днем рождения ! 5 июля 2010 понедельник


3-1245876026
Miau
2009-06-25 00:40
2010.10.03
Передача параметра в хранимую процедуру.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский