• Domingo 28 de Abril de 2024, 22:10

Autor Tema:  Re: Int 19h  (Leído 2369 veces)

Logan

  • Nuevo Miembro
  • *
  • Mensajes: 19
    • Ver Perfil
Re: Int 19h
« en: Lunes 3 de Noviembre de 2003, 20:56 »
0
He usado la Int 19h para reiniciar el sistema (DOS), en lugar de cerrar un programa con mov ah,4Ch Int 21h lo he hecho con la int 19h y la ventana de ms-dos se cierra, esto usando un Windows Me, tambien lo he probado en windows 2000 y XP pero unicamente termina el programa sin cerrar la ventana, alguien sabe por que?
Aprovechando, deseo encontrar una forma de reiniciar el sistema Windows por medio de ensamblador ya sea 98, Me, 2000 o XP. No axactamente que es lo que tengo que hacer en ese caso.
Estamos aqui porque jamás terminaremos de aprender....

Super_G

  • Miembro MUY activo
  • ***
  • Mensajes: 375
    • Ver Perfil
Int 19h
« Respuesta #1 en: Miércoles 5 de Noviembre de 2003, 04:13 »
0
Con interrupciones y en 16bits no he encontrado nada, solo con un compilador de 32bits como el MASM32 que con un sencillo programa utilizando las APIs puede cerrar windows; este es el codigo:
;#########################################################################

      .386
      .model flat, stdcall
      option casemap :none   ; case sensitive

;#########################################################################

      include masm32includewindows.inc
      include masm32includeuser32.inc
      include masm32includekernel32.inc

      includelib masm32libuser32.lib
      includelib masm32libkernel32.lib

; #########################################################################

    .code

start:

        invoke ExitWindowsEx,1,0
        invoke ExitProcess,eax

; #########################################################################

end start

        ; Flags for ExitWindowEx

        ; EWX_LOGOFF    equ 0
        ; EWX_SHUTDOWN  equ 1
        ; EWX_REBOOT    equ 2
        ; EWX_FORCE     equ 4
        ; EWX_POWEROFF  equ 8
;;;///////////////////////////////////////////