La Web del Programador: Comunidad de Programadores
 
    Pregunta:  27988 - DETENER LA CARGA DE WIN MIENTRAS EJECUTO MI PROGRAMA
Autor:  Nunger Patricio Fernandez Villavicencio
Deseo detener la carga de los programas de windows mientras se ejecuta mi programa, es algo parecido a cuando aparece el dialogo de entrada a win 9x, ese donde se ingresa la clave de acceso.

  Respuesta:  SuNcO
Ok, para hacer eso yo hize un truco que ya lo dije una vez y si funciona

Te vas al win.ini y modificas el shell=explorer.exe por shell=tu_programa.exe

Asi, despues que termine tu programa ejecutas el explorer.exe; El problema es que lleva un parametro tal como /s /r o algo asi y no lo recuerdo

Otra solucion es esta; Entras al win.ini y en la linea load= pones
load=tu_programa.exe

A tu_programa.exe le pones un timer de 10 (milisegundos) y que lleve dentro esto :

Resultado = SetWindowPos(Cyber_Plus1C.hwnd, HWND_TOPMOST, 0, 0, 0, 0, TOPMOST_FLAGS)

Eso hace que tu programa este en primer plano siempre;
Tambien ocupas :

Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long

Private Const HWND_TOPMOST = -1
Private Const HWND_NOTOPMOST = -2

Private Const SWP_NOMOVE = &H2
Private Const SWP_NOSIZE = &H1
Private Const TOPMOST_FLAGS = SWP_NOMOVE Or SWP_NOSIZE

Eso si, aclaro que esto no detiene la carga de Windows, solo son pequeños trucos que sirven; De ahi puedes agregarle que no se pueda presionar Ctrl-Alt-Supr o algo asi