|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Мар 15, 2004 04:59:02 · Поправил: Marazm Собсно как определить версию винды без использования WinAPI. Просто в XP есть режим совместимости и WinAPI врет. Нашел на сайте такой код: LsNT PROC
mov ax,ds
test al, 4
jz WinNT
xor eax, eax
ret
WinNT:
mov eax, TRUE
ret
LsNT ENDP
В ринципе этого хватит, но для общего развития... Какие есть еще методы? |
|
|
Дата: Мар 15, 2004 05:50:42 · Поправил: Quantummov ax,cs test ah,ah jnz Win9x WinNT: ; . . . Win9x: ; . . .(C) by не помню... |
|
|
Дата: Мар 15, 2004 10:03:42 Marazm В WinNT сегмент данных в GDT, а Win9x соответственно в LDT, так что код mov ax,ds test al, 4 правильный. |
|
|
Дата: Мар 15, 2004 15:25:23 Думаю еще можно так: sldt cx jecxz isWinNT |
|
|
Дата: Мар 15, 2004 15:41:09 Quantum Кажись видел у Billy B.:)), не знаю его ли (C) |
|
|
Дата: Мар 15, 2004 19:06:14 Black_mirror Смысл то тот же, LDT в WinNT не используется. |
|
|
Дата: Мар 16, 2004 07:00:00 А как в таком случае определить с точность, если не дло билда, хотябы какая это ось. Не просто NT или нет, а скажем 98 это или ME?? |
|
|
Дата: Мар 17, 2004 08:04:40 Какие тут все высокоуровневые, а в буте смотрели может там есть ЗЫ Тут статья была "Нестандаотный загр" |