URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 2638
[ Назад ]

Исходное сообщение
"Сорри что не по юниксу, но нужна помощь!"

Отправлено EvilsInterrupt , 08-Мрт-04 22:40 
Binary digit !!!

Я решаю для себя одну задачу с помощью языка Ассемблера,
под MS-DOS. Корпус у меня atx, т.е. если я в винде нажму
завершить работу, далее выключить компьютер, то он выклю-
чится.
По моему винда вызывает api: ExitWindow:

     Описание:
function ExitWindows(Reserved: DWord; ReturnCode: Word): Bool;

Иницииpует стандаpтную пpоцедуpу завеpшения pаботы с
Windows. Все пpикладные задачи должны подтвеpдить завеpшение
pаботы Windows. Вызывает функцию 4CH пpеpывания 21H DOS.

     Паpаметpы:
Reserved: Установлен в нуль.
ReturnCode: Значение, пеpедаваемое в DOS (в pегистpе AL).

     Возвpащаемое значение:
Нуль, если одна или несколько задач отказываются завеpшить
pаботу.

Пробывал:
        mov ah,4ch
        mov al,код выхода
        int 21h
Перебрал от 1 до 0bh и не фига.

Как бы мне вырубить комп, ноходясь в MS-DOS?
На всякий случай, сижу в Tasm`e.


    Надеюсь гуру еще не вымерли ?! (с вызовом)
    Буду премного благодарен за ответ на мой вопрос !


Содержание

Сообщения в этом обсуждении
"Сорри что не по юниксу, но нужна помощь!"
Отправлено XMan , 09-Мрт-04 00:36 
Не думаю, что возможно завершить работу win из dos-задачи. Тебе нужно напрямую лезть в WInAPI, а это уже получится не dos-задача, а как минимум win16.

А функция 4ch - это обычный выход из программы. Код завершения нужен для того, чтобы запустивший процесс мог узнать - нормально отработала программа (принято использовать 0) или с ошибками (отличное от 0 значение: 1..255).


"Сорри что не по юниксу, но нужна помощь!"
Отправлено StatusQuo , 09-Мрт-04 00:53 
Может вот это натолкнёт на мысль?:

http://www.computerhope.com/rdebug.htm#7


"Сорри что не по юниксу, но нужна помощь!"
Отправлено XMan , 09-Мрт-04 01:02 
Вряд ли... Win на вызов перезагрузки из dos-задачи ругнется и снимет нафиг процесс.

"Сорри что не по юниксу, но нужна помощь!"
Отправлено EvilsInterrupt , 09-Мрт-04 17:24 
Винду я имел в качестве примера, сорри за некорректно описанный вопрос!