![]() |
|
![]() ![]() ![]() |
|
leshiyNEXT |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
Как в защищенном режиме под Windows получить дескриптор кода с нулевой базой и лимитом в 4 гига. Это нужно чтобы сделать дальний код на селлектор данных!
|
|||
|
||||
Chingachguk |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1232 Регистрация: 25.3.2002 Где: Москва Репутация: 3 Всего: 18 |
Ну вот в 98-ой, если мне не изменяет память, это значение 28h. Можно посмотреть вручную GDT (sgdt->...) и найти в ней то, что тебе надо.
А что за "дальний call" и нафига он ? -------------------- I don't like the drugs (but the drugs like me). M.Manson. |
|||
|
||||
leshiyNEXT |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
Непонял, что найти таблицу GDT? Найти одно, а создать в ней дескриптор другое. А надо мне это вот для чего: хочу чтобы прога в некий массив загоняла опкоды команд а потом передавала управление по адресу первого элемента этого массива.
В DOS это проще некуда, так как там данный и код не конфликтуют а в защищенном... |
|||
|
||||
Chingachguk |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1232 Регистрация: 25.3.2002 Где: Москва Репутация: 3 Всего: 18 |
Зачем создавать ?! Посмотреть в ней тот, что тебе нужен. И вообще, ты где все это делать хочешь ? Из win32 кода надо использовать SEH, imho.
-------------------- I don't like the drugs (but the drugs like me). M.Manson. |
|||
|
||||
Sl@va |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 22.11.2004 Где: Нижний Новгород Репутация: нет Всего: нет |
Команды дря работы с GDT, LDT, IDT все привелегированные, и обычная программа пользователя работающая под управлением операционной системы их выполнить не может. Это вызовет исключение. (Появится окошко'Программа выполнила недопустимую операцию и будет закрыта'). Можно например создать Vxd драйвер который работает на нулевом кольце защиты и выполнить в нем все что тебе нужно. Там уже никакх барьеров не будет. Вот только некорректная работа твоего Vxd драйвера может вызвать сбой в операционной системе.
|
|||
|
||||
leshiyNEXT |
|
|||
Новичок Профиль Группа: Участник Сообщений: 8 Регистрация: 11.5.2005 Репутация: нет Всего: нет |
ГМ... А Vxd драйвер я никогда и не создавал и опыта нету! Поэтому такой сразу вопрос его какой компилятор создать может и как примерно это делается? Хотя бы кратенько - а там я разберусь...
|
|||
|
||||
Chingachguk |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1232 Регистрация: 25.3.2002 Где: Москва Репутация: 3 Всего: 18 |
VxD драйвера используются в win98. В xp используют SYS. Про то и другое читай wasm.ru.
-------------------- I don't like the drugs (but the drugs like me). M.Manson. |
|||
|
||||
Sl@va |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 100 Регистрация: 22.11.2004 Где: Нижний Новгород Репутация: нет Всего: нет |
Есть один хороший сайт, там полно исходников. Я точно не смотрел, но возможно ты там найдеш то что тебе нужно. Вот его адрес :
http://win32asm.cjb.net Добавлено @ 17:17 По поводу создания Vxd, то они также создаются в Tasm или Masm. Если найду мануалы или какую нето инфу, то дам ссылку Добавлено @ 17:23 А вот как раз и ссылка : http://spiff.tripnet.se/~iczelion/tutorials.html Там есть раздел VxD Tutorials, возможно там чего нето найдеш |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Asm для Windows/DOS" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Asm для Windows/Dos | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |