Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-04-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 26
seoane Va por buen camino
Namaris, espero que esto no se vuelva una costumbre. Tanto lo de pedir programas a la carta, como lo de engañar a tu familia, que esta muy feo

Aquí te dejo una aplicación que al ejecutarse muestra un pantallazo azul. La única forma de salir es con Ctr+Alt+Supr.

El código (el ejecutable esta en el zip):
Código Delphi [-]
program BlueScreen;

{$APPTYPE CONSOLE}

uses
  Windows, SysUtils;


const
  Mensaje =
  '*** STOP: 0x0000007B (0xF201B84C,0xC0000034,0x00000000,0x00000000)' +#13#10+
  'INACCESIBLE_BOOT_DEVICE'                                      +#13#10#13#10+
  'If this is the first time you have seen this Stop error screen,'    +#13#10+
  'restart your computer. If this screen appears again, follow'        +#13#10+
  'these steps:'                                                 +#13#10#13#10+
  'Check for viruses on your computer. Remove any newly installed'     +#13#10+
  'hard drives or hard drive controllers. Check your hard drive'       +#13#10+
  'to make sure it is properly configured and teminated.'              +#13#10+
  'Run CHKDSK /F to check for hard drive corruption, and then'         +#13#10+
  'restart your computer.'                                       +#13#10#13#10+
  'Refer to tour Getting Started manual for more information on'       +#13#10+
  'troubleshooting Stop errors.';

const
  WH_KEYBOARD_LL = 13;

function SetConsoleDisplayMode(hConsoleOutput: THandle; dwFlags: DWORD;
  var pNewScreenBufferDimensions: TCoord): BOOL; stdcall;
  external 'Kernel32.dll' name 'SetConsoleDisplayMode';

function HandlerRoutine(dwCtrlType: DWORD): BOOL; stdcall;
begin
  Result:= TRUE;
end;

function KbdHook(Code: Integer; WParam, LParam: DWORD): HHook; stdcall;
begin
  Result:= 1;
end;

procedure Loop;
var
  Msg: TMsg;
begin
  while GetMessage(Msg,0,0,0) do
    DispatchMessage(Msg); 
end;

procedure WriteMsg;
var
  F: TextFile;
  Str: String;
begin
  if FileExists(ChangeFileExt(ParamStr(0),'.txt')) then
  begin
    AssignFile(F,ChangeFileExt(ParamStr(0),'.txt'));
    {$I-}
      Reset(F);
    {$I+}
    if IOResult=0 then
    begin
      while not EOF(F) do
      begin
        Readln(F,Str);
        Writeln(Str);
      end;
      CloseFile(F);
    end else
      Writeln(Mensaje);
  end else
    Writeln(Mensaje);
end;

var
  BufferSize: DWORD;
  Hook: HHook;
  ScreenBuffer: THandle;
  Coord: TCoord;

begin
  ScreenBuffer:= GetStdHandle(STD_OUTPUT_HANDLE);
  if ScreenBuffer <> INVALID_HANDLE_VALUE then
    if SetConsoleDisplayMode(ScreenBuffer,1,Coord) then
    begin
      FillChar(Coord,Sizeof(Coord),0);
      FillConsoleOutputAttribute(ScreenBuffer,FOREGROUND_RED or FOREGROUND_BLUE or
        FOREGROUND_GREEN or FOREGROUND_INTENSITY or BACKGROUND_BLUE,
        MAXINT, Coord, BufferSize);
      SetConsoleTextAttribute(ScreenBuffer,FOREGROUND_RED or FOREGROUND_BLUE or
        FOREGROUND_GREEN or FOREGROUND_INTENSITY or BACKGROUND_BLUE);
      SetConsoleCursorPosition(ScreenBuffer,Coord);
      if SetConsoleCtrlHandler(@HandlerRoutine,TRUE) then
      begin
        Hook:= SetWindowsHookEx(WH_KEYBOARD_LL, @KbdHook, HInstance, 0);
        if Hook <> 0 then
        begin
          WriteMsg;
          Loop;
          UnhookWindowsHookEx(Hook);
        end;
      end;
    end;
end.

PD: Hace tanto tiempo que no veía ninguna que tuve que copiar el mensaje de la wikipedia.
Archivos Adjuntos
Tipo de Archivo: zip BlueScreen.zip (26,0 KB, 16 visitas)

Última edición por seoane fecha: 26-04-2007 a las 16:51:32.
Responder Con Cita
  #2  
Antiguo 26-04-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.142
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Está muy bien Seoane. Ayer inicié yo un intento... y terminé mal porque comenzé peor, a lo que veo.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 26-04-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 26
seoane Va por buen camino
Bueno, lo modifique un poco. Ahora si encuentra en el mismo directorio un archivo con su mismo nombre pero con la extensión .txt (ej: BlueScreen.txt) muestra el contenido de ese archivo, en vez del mensaje que yo puse.

Ahora solo falta que a alguien se le ocurra un buen mensaje de error.

Algo así (BlueScreen.txt):
Código:
*** STOP: 0x0000007B (0xF201B84C,0xC0000034,0x00000000,0x00000000)
INACCESIBLE_BOOT_DEVICE

Si es la primera vez que lees este mensaje te sentiras confuso
y asustado, pero sera mejor que te relajes porque no sera la
ultima vez. 

Ahora probaremos un par de cosas sin sentido para que te sientas
mejor, no solucionaran el problema, pero aliviaran tu sensacion
de impotencia. Pero cuando todo falle lo mejor sera reiniciar y
rezar para que todo funcione ... esto me recuerda el chiste que
dice que van un informatico, un mecanico y un electricista en
un coche y el coche se para ....


Sabias lo que hacias cuando instalaste Windows. Ahora no te quejes.
PD: El mensaje se lo dedico a Casimiro , y alguno mas ...
Responder Con Cita
  #4  
Antiguo 26-04-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
Seoane Y=?:
Cita:
un coche y el coche se para ....
Bueno, nos dejas colgados , vamos terminalo que no lo conozco
Saludos
Responder Con Cita
  #5  
Antiguo 26-04-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 26
seoane Va por buen camino
Cita:
Empezado por Caral
Bueno, nos dejas colgados , vamos terminalo que no lo conozco
En un coche van un electricista, un mecánico y un informático. Entonces el coche se para y el electricista dice que evidente es un problema eléctrico. El mecánico, sin embargo, insiste en que por el ruido que hace el motor el problema es mecánico. El informático se queda pensativo durante un rato y dice: ¿Y si nos bajamos y nos volvemos a subir?
Responder Con Cita
  #6  
Antiguo 26-04-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
Esta buenisimo, me he reido a mas no poder, esto va bien para windows, tipico.
Con razon se lo dedicaste a Casimiro.
Saludos
Responder Con Cita
  #7  
Antiguo 26-04-2007
Avatar de Casimiro Noteví
Casimiro Noteví Casimiro Noteví is offline
Merodeador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.671
Poder: 10
Casimiro Noteví Tiene un aura espectacularCasimiro Noteví Tiene un aura espectacular
Cita:
Empezado por seoane
Sabias lo que hacias cuando instalaste Windows. Ahora no te quejes.
[/code]
PD: El mensaje se lo dedico a Casimiro , y alguno mas ...

Muchas gracias, se me han saltado unas lagrimitas, de la emoción, qué bonito, lo voy a imprimir y ponerlo en la pizarra de anuncios, en el trabajo, para que todos lo vean
Responder Con Cita
  #8  
Antiguo 27-04-2007
Avatar de Namaris
Namaris Namaris is offline
Miembro
 
Registrado: dic 2006
Ubicación: Internet
Posts: 16
Poder: 0
Namaris Va por buen camino
Jajaja, no Seoane, no es costumbre pero es que solo recurro a esto cuando la situacion es extrema, tengo en mente empezar a estudiar pogramacion en verano asi no molesto a nadie xD Gracias.

Mira, el caso esque ami me hace falta que esa pantalla salga al inicio de windows y por eso la copie en la carpeta inicio para que arranque con el sistema pero lo malo esque sale un seg y se minimiza al inicio :S

Supongo que sera pk estaran cargandose los otros progamas de inicio y habra una cola o algo...pero no sirve pk si se minimiza mi padre lo cierra y listo xD

Aparte me baje el .zip como dijiste pero dentro estaba solo el .exe, ese .txt del que ablas para cambiar el texto no lo llege a ver (y lo baje 3 veces)
Responder Con Cita
  #9  
Antiguo 27-04-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 26
seoane Va por buen camino
Cita:
Empezado por Namaris
Mira, el caso esque ami me hace falta que esa pantalla salga al inicio de windows y por eso la copie en la carpeta inicio para que arranque con el sistema pero lo malo esque sale un seg y se minimiza al inicio :S
Eso vas a tener que solucionarlo tu, creo que para ser una "broma" ya le he dedicado mucho tiempo. Prueba a ejecutarlo con las tareas programadas, o algo así ...
Cita:
Empezado por Namaris
Aparte me baje el .zip como dijiste pero dentro estaba solo el .exe, ese .txt del que ablas para cambiar el texto no lo llege a ver (y lo baje 3 veces)
El archivo no va en el zip, simplemente crea un archivo de texto (con el bloc de notas por ejemplo) y colocalo en el mismo directorio del programa y con el mismo nombre, solo cambiándole la extensión de .exe a .txt
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
¿Por qué la tinta de los bolígrafos es azul? marcoszorrilla La Taberna 19 25-07-2007 12:27:09
Ocultar Barra de Windows (Azul) en objeto oleautomation apicito OOP 2 04-05-2007 15:00:11
Necesito el código de una Clase para el manejo del Registro de Windows Jesús Pena OOP 6 06-02-2006 21:52:44
Capturar pantalla desde un servicio del windows walrus API de Windows 4 17-08-2005 17:59:14
Error al capturar la pantalla!! DarkByte Gráficos 7 28-07-2005 03:16:33


La franja horaria es GMT +2. Ahora son las 08:04:14.


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