Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Como hacer que mi aplicacion se inicie antes que Windows? (https://www.clubdelphi.com/foros/showthread.php?t=68950)

JoAnCa 16-07-2010 17:35:29

Como hacer que mi aplicacion se inicie antes que Windows?
 
Hola a Todos
Quisiera saber como es que se hace una aplicación que se inicie antes de cargar windows, tal como hace Partition Manager, Partion Magic y otros mas

Es decir, al iniciar la PC se ejecuta mi programa, hace lo que va a hacer y despues le devuelve el control a la carga del SO

ecfisa 16-07-2010 21:06:04

Hola.

Para que un código se inicie antes que el S.O. tenés que hubicarlo en el sector de arranque, el cuál tiene 512 bytes o sea que ni sueñes otra cosa que teclear assembler.

Es allí donde tendrías que insertar un código que llame a tu aplicación y luego llamar al núcleo del S.O como en un arranque normal si no, cuelgue seguro ...

Como el comportamiento que deseas es similar al de un virus ACSO, podrías revisar en google sobre este tipo de programas y extraer lo que precises del código.


Saludos.

Casimiro Notevi 16-07-2010 21:15:35

Aparte de lo dicho por ecfisa, ten mucho cuidado, un simple byte equivocado de sitio y ¡¡¡perdiste los datos de tu disco duro!!! :)

AzidRain 16-07-2010 22:03:28

Alguna vez hace mil años hice una aplicación para quitar el famoso virus NATAS o SATAN que precisamente hacia eso, cargarse antes que nadie, limpiar y dejar el arranque en forma normal. Son cosas ya demasiado esotéricas pero interesantes. En aquellas épocas mi libro de cabecera era "Manual de interrupciones BIOS Y DOS", obviamente todas mis "herramientas" estaban hechas en Pascal y Ensamblador, y claro como bien dice casimiro, a veces un simple byte (o bit) te echaba a perder todo...

delphi.com.ar 16-07-2010 22:32:01

Yo buscaría algo de info por el lado del archivo "Boot.ini" es muy fácil cambiarlo, casi sin riesgos y no tienes que destruír la FAT pero lo complicado es que tienes que armar tu sector de arranque. Si quieres que sea como hace el ScanDisk u otros programitas varios, que muestran una consola bajo en núcle de Windows, buscaría info por el lado del "Session Manager \BootExecute". El problema y la ventaja es que en esa instancia aún no ha sido instanciados los drivers, no se ha iniciado ningún servicio ni el manejador de memoria. Desconozco si puedes programar alegremente en Delphi utilizando la WinApi libremente en esa instancia.

Te recomiendo probar las cosas en máquinas de prueba, porque es posible que tu sistema no vuelva a arrancar correctamente. Y por favor cuéntanos cómo te ha ido!

Saludos!

rgstuamigo 16-07-2010 22:37:36

Bueno,personamente no me metería con esas cosas,ya que como bien te han dicho, corres el riesgo de perder la info de tu disco, de todas formas aquí tienes un ejemplo hecho en C++.;).
Saludos...:)

ecfisa 16-07-2010 23:01:15

Cita:

Empezado por AzidRain (Mensaje 370673)
Alguna vez hace mil años hice una aplicación para quitar el famoso virus NATAS o SATAN que precisamente hacia eso, cargarse antes que nadie, limpiar y dejar el arranque en forma normal. Son cosas ya demasiado esotéricas pero interesantes. En aquellas épocas mi libro de cabecera era "Manual de interrupciones BIOS Y DOS", obviamente todas mis "herramientas" estaban hechas en Pascal y Ensamblador, y claro como bien dice casimiro, a veces un simple byte (o bit) te echaba a perder todo...

Epocas lindas, si las hay. :)

El mío era "PC Interno 2 y 5", todavía los tengo aunque hace años que no los leo.


Saludos.

Casimiro Notevi 16-07-2010 23:26:21

Cita:

Empezado por ecfisa (Mensaje 370684)
Epocas lindas, si las hay. :)
El mío era "PC Interno 2 y 5", todavía los tengo aunque hace años que no los leo. Saludos.

El mecánico de discos Norton :)

AzidRain 17-07-2010 20:37:14

Lo es que ya pasar de los 30 verdad compadres...jejeje...lo curioso y bello a la vez, es que todo eso...¡Aún funciona!...Todos mis programitas locos en ensamblador, Pascal y demás que hacían cuanta cosa aún hacen lo que tenían que hacer, y como está la situación seguramente lo harán durante mucho tiempo.

JoAnCa 19-07-2010 15:13:52

Muchas gracias por las respuestas, en realidad todavia no pienso diseñar ningun soft de ese tipo, solo senti curiosidad por saber como es que se hace.

Mas bien la pregunta fue con fines didacticos, pues quise saber como es que hacen los programas de particionar discos, el scandisk y otros

El enlace que me dio rgstuamigo esta interesante

AzidRain 19-07-2010 20:22:27

Excelente JonAca...así empezamos todos, tratando de averiguar como le hacían otros para lograr tal o cuales cosas. Esa curiosidad verás que te va a servir muchísimo para aprender y superarte.


La franja horaria es GMT +2. Ahora son las 08:06:57.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi