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

Вниз

DISABLEKERNEL   Найти похожие ветки 

 
Nox   (2003-06-01 13:39) [0]

Народ, объясните принцип действия....


 
Ihor Osov'yak   (2003-06-01 14:01) [1]

http://sgi.chg.ru/OUT/ADDDOCS/INFORM/WIN31DOC/undocwin.htm

Есть подозрение, что это было актуально во времена третьих виндов..


 
Nox   (2003-06-01 14:32) [2]

Но функция по-прежнему присутствует в 9x,Me,XP.


 
Ihor Osov'yak   (2003-06-01 15:32) [3]

А откуда такая уверенность?

Вопрос на засыпку: каким модулем експортируется?

Подсказка: Можно сделать поиск по всем файлам в директории WinNT/Windows с поддиректориями на предмет наличия строки DISABLEKERNEL...

Зы - скажу по секрету, перед тем как сюда писать, такой поиск делал. Для W2K,W98, NT4 - 0 file found, c. FAR


 
Nox   (2003-06-03 00:22) [4]

Хех. Действительно на засыпку... вроде бы (не знаю откуда я это взял, но по моему где-то видел... забыл =))
функция эта находится в kernel32.dll.
Я пробовал её выполнять. Кстати, эффекты всегда разные ;) и прикольные.
Например, экран полосами покрывается =) К сожалению в NT она не даёт никакого эффкта (пробовал в XP) ;(
Но зато в 9x (пробовал в Me)........ хе хе.
---------------------------- КУТ ХЕРЕ ----------------------------------
.model large, WINDOWS PASCAL
include windows.inc
;----- EXTERNAL PROCEDURES & FUNCTIONS -----
extrn INITAPP:PROC
extrn INITTASK:PROC
extrn DISABLEKERNEL:PROC
.data ;----- DATA SEGMENT -----
freespace db 16 dup(0)
hInstance dw 0
.code ;----- CODE SEGMENT -----
start:
call INITTASK
or ax,ax
jnz ALLOK
jmp FAIL
ALLOK:
mov [hInstance],di
call INITAPP,hInstance
or ax,ax
jnz INIT
FAIL:
mov ax,4CFFh
int 21h
INIT:
call DISABLEKERNEL

mov ax,4ch
int 21h
end start
;Одеяло убежало, улетела простыня, и подушка как лягушка ускакала от меня. Я за свечку, свечка в печку, я за книжку, та ;бежать... Больше анашу такую я не буду покупать!!
---------------------------- КУТ ХЕРЕ ---------------------------------


 
Ihor Osov'yak   (2003-06-03 01:21) [5]

ты, эта, травы такой не кури... А когда дым от курива развеется, возьми tdump и посмотри, что kernel32.dll экспортирует..

зы.. А код твой чего-то болезненно 16-битный напрминает..
да и вызовы int 21h мне что-то молодость напомнили.. В смысле - старые, добрые досовские времена..


 
Игорь Шевченко   (2003-06-03 15:32) [6]

Ihor Osov"yak © (03.06.03 01:21)

Это были Windows XP 3.11


 
Nox   (2003-06-05 03:16) [7]

Народ, я не понял, вы мне не верите? Попробуйте эту лажу под Me запустить сами увидите. Я на irc болтался там тоже никто не знает. Но мы покопались и кажись эта ф-я пасётся в ctccw.dll.
Хотя я в этом не уверен. Ах да, после того как протестите, скажите мне, plz, по кой хрен программеры из M$ засунули ф-ю EnableKernel, если после DisableKernel уже никакой Enable не спасёт =). Ладно. Смотрите.


 
Nox   (2003-06-05 03:25) [8]

Или я чего-то не понял или вы, ребята, действительно никогда эту байду не видели?


 
Nox   (2003-06-05 15:47) [9]

Ну что? Никто не смотрел?


 
Nox   (2003-06-06 09:59) [10]

кАрочё. попробуйте сделать поиск по всем дллкам в %SystemRoot% и сами убедитесь в её существовании.


 
Danilka   (2003-06-06 10:05) [11]

Nox © (06.06.03 09:59)
Ну, потратил время, сделал, нет никакого DISABLEKERNEL и что теперь?

У меня винХР, может мне теперь вин3.11 теперь поставить, чтобы убедиться в ее существовании?


 
Ihor Osov'yak   (2003-06-06 10:31) [12]

ну была у чела win3, поставил сверху 95, потом 98 :-)..

или ветром dll какую-то левую занесол.. Вот теперь и кипиш подымает..


 
Zacho   (2003-06-06 10:49) [13]

А у меня нашлось в C:\WINDOWS\SYSTEM\krnl386.exe
Win98SE, никаких 3.x никогда не стояло.
Но это действительно 16-ти разрядная библиотека для Win 3.x
А в общем, какая разница, и нафига оно нужно ?


 
Ihor Osov'yak   (2003-06-06 11:19) [14]

2 Zacho © (06.06.03 10:49)

Вот это более конкретный разговор.. Но, к сожалению, более по делу ответить не могу, так как специализируюсь все-же на линейке NT.. Наверное, это все же какой-то рудимент времен Win3, вполне возможно - заглушка, оставленая для совместимости.. Дизасемблировать соотв. модуль нет ни малейшего желания..


 
[D.T.Nil]   (2003-06-06 12:07) [15]

Народ, а ведь работает! (в WinMe точно)
Сначала система зависла намертво, на следующий раз
экран покрылся хрен знает какими полосами.


 
Ihor Osov'yak   (2003-06-06 12:28) [16]

2 [D.T.Nil] (06.06.03 12:07)

> Народ, а ведь работает! (в WinMe точно)
Сначала система зависла намертво, на следующий раз
экран покрылся хрен знает какими полосами.

А мне что-то казалось, что это признаки как-раз ненормалной работы.. Вследствие некорректного построеного вызова соотв. апишной функции. Что может произойти при использовании левых деклараций соотв. апишного вызова..

Но наверное я уже отстал от жизни.. Теперь, оказывается, " на следующий раз экран покрылся хрен знает какими полосами" есть признаком того, что "работает".. Пожалуй, на пенсию пора..


 
Nox   (2003-06-06 13:31) [17]

2 Ihor Osov"yak.
=) По-моему или ты чего-то не понял или я...
Что по-твоему должна делать функция с названием DisableKernel?
Почту рассылать? (Disable - выключать, Kernel - ядро. Поучается: Выключать ядро... но никак не почту отправлять).Я ведь почему сюда и написал, интересно, по кой хрен она вообще кому-то нужно. Ведь если она есть, значит это кому-то нужно. Логично неправда ли...
Или это у ребят из M$ такие приколы...
Такие функции только в жестокие падлы засовывать можно =)
Типа на кнопку Пуск нажал и всё полетело. А на пенсию тебе ещё рано.


 
Ihor Osov'yak   (2003-06-06 14:22) [18]

2 Nox © (06.06.03 13:31)


Те уже не единыжды говорилось, еще раз повторю -

1. функция рудиментная, осталась со времен win3 (во всяком случае она тогда документировалась). Вполне возможно, что в некоторых билдах на линейке win9x оставлена с целью совместимости.. В линейке winNT ее нет.

2. Всякие "интересные эффекты", наблюдаемые при вызове этой функции связаны не с кознями этой футкции, а вероятнее всего, с тем, что кто-то неправильно строит вызов и программа уходит бог знает куда. Версия, как это может произойти: некий Nox находит декларацию DisableKernel со времен win3, где некий wparam описан как word.. Компилирует это дело для win32 и упускает с виду, что при портинге с 16 битного win3 в 32 битный всякие wparam декларируются уже как integer (что в даном случае есть уже 4 байта, вместо двух для ворд). Cледствие - стек вызова построен неправильно.. Со всеми последствиями.. Повторяю - это только версия.. Но таких финтов ты мог наделать кучу. Я не телепат угадывать..

Зы - тут через день находят ошибки в компиляторе, сходи в те ветки, может там единомышлиников отыщешь.. А если серьезно - кончай фигней маятся, есть более доснойные внимания вещи.. Но если все же очень неймется - пройдись дизассемблером по соотв. модулю - потом тут раскажешь, чем закончилось..





 
Nox   (2003-06-06 16:48) [19]

2 Ihor Osov"yak.
Спасибо за коментарий. Не хочется больше писать и возражать, но... почему же тогда EnableKernel работает без глюков? =)))
Ладно. Можешь не отвечать. Я понял, хотя эта ф-я в 3.11 была всё-таки undoc.



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

Форум: "Потрепаться";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.023 c
14-84745
Всеволод Соловьёв
2003-06-04 00:03
2003.06.26
Принимаю заказы.


14-84672
DenKop
2003-06-08 20:51
2003.06.26
Знатокам MSOffice, Word


3-83964
GSVSerg
2003-05-29 12:50
2003.06.26
dbgrid


1-84407
Saracin
2003-06-09 17:46
2003.06.26
Как выровнить один пункт меню например Help к левой границе.


7-84785
Andr_Volk
2003-04-16 05:44
2003.06.26
Как отключить мышь?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский