Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-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
Unhappy Necesito una pantalla azul de error Windows

Hola,

no sabia donde publicar este tema, ante la duda lo he puesto aqui.

El caso esque por algunos motivos razonables personales necesito alguna mini aplicacion o algo para que cuando Windows Xp encienda aparezca una pantalla (a tamaño completo, es decir, pantalla completa) de color azul como la de los errores de windows que diga error_memory_process, unas largas columnas de codigo cualquiera (010EX84934048, lo que sea xD) y que ahi se quede....que para quitarlo haga falta alguna combinacion especial de teclas o el ctrl+alt+supr para que salga taskman.


A continuacion explico porque quiero esto tal y como digo:

El caso esque necesito un nuevo modulo de RAM porque este da fallos, muchos mientras estas trabjando y te reinicia y adios trabajos.

Se lo he dicho a mi padre pero el como no entiende de esto lo ve funcionar y se piensa que lo digo porque si xDD (es un cabezon )

Almenos asi podre mostrale esa pantalla y le convezco que me pille una xDD

Entonces....¿Alguien me hace el favor de ayudarme con el tema?

P O R F A V O R


P.D: Un saludo a todos y gracias de antemano
Responder Con Cita
  #2  
Antiguo 25-04-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Respuesta estilo Casimiro:

No hagas nada, sólo prende la máquina y espera unos minutos

Si no funciona pues ármate de una aplicación cuyo formulario principal sea de color azul, sin bordes y maximizado. Sobre él pones los labels necesarios y colocas la aplicación en el menú inicio, y que tu padre me perdone

// Saludos
Responder Con Cita
  #3  
Antiguo 25-04-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

En Google encuentras algunas imágenes que lo mismo te sirvan o puedan darte ideas...
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 25-04-2007
Avatar de kinobi
kinobi kinobi is offline
Miembro
 
Registrado: may 2003
Posts: 2.621
Poder: 24
kinobi Va por buen camino
Cita:
Empezado por roman
Respuesta estilo Casimiro:

No hagas nada, sólo prende la máquina y espera unos minutos


Si no funciona pues ármate de una aplicación cuyo formulario principal sea de color azul, sin bordes y maximizado. Sobre él pones los labels necesarios y colocas la aplicación en el menú inicio, y que tu padre me perdone
¡Simplemente genial!

Cita:
Empezado por dec
Yo hablaría con mi padre y se lo diría de otro modo, pero, en fin... en Google encuentras algunas imágenes que lo mismo te sirvan o puedan darte ideas...
Eso sí, que no utilice la que sale Bill... http://members.ozemail.com.au/~lbras...GATES-bsod.jpg... ni esta http://www.gdargaud.net/Humor/Pics/BlueScreen.jpg

Todo tiene un límite

Saludos

Última edición por kinobi fecha: 25-04-2007 a las 00:15:34.
Responder Con Cita
  #5  
Antiguo 25-04-2007
Avatar de kinobi
kinobi kinobi is offline
Miembro
 
Registrado: may 2003
Posts: 2.621
Poder: 24
kinobi Va por buen camino
Cita:
Empezado por Namaris
El caso esque necesito un nuevo modulo de RAM porque este da fallos, muchos mientras estas trabjando y te reinicia y adios trabajos.
Por cierto, sólo por si las moscas: ¿no tendrá algo que ver el problema con una mala refrigeración?

Saludos... y suerte
Responder Con Cita
  #6  
Antiguo 25-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: 24
seoane Va por buen camino
Prueba con esto
http://www.microsoft.com/technet/sys...lueScreen.mspx
Responder Con Cita
  #7  
Antiguo 25-04-2007
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Ja, ja, ja... ¡¡¡ qué bueno !!!

Justo iba a escribir lo que ha puesto roman, es lógico, si falla... entonces simplemente debes esperar un ratito
Responder Con Cita
  #8  
Antiguo 25-04-2007
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Pues mira, puedes utilizar Allegro.pas (si utilizas Delphi deberás trucarlo un poco, pero seoane dijo que no era complicado) para abrir un programa en pantalla completa, dibujar el pantallazo azul y capturar el teclado. Como es una librería para juegos, podrás capturar combinaciones como la que dices sin muchos problemas.

Perdón por el spam, pero creo que merece la pena para una broma así.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #9  
Antiguo 26-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
Cita:
Empezado por Ñuño Martínez
Pues mira, puedes utilizar Allegro.pas (si utilizas Delphi deberás trucarlo un poco, pero seoane dijo que no era complicado) para abrir un programa en pantalla completa, dibujar el pantallazo azul y capturar el teclado. Como es una librería para juegos, podrás capturar combinaciones como la que dices sin muchos problemas.

Perdón por el spam, pero creo que merece la pena para una broma así.
Me he bajado eso pero nose de que va xD
Esque yo no se programar en realidad, postee aqui porque pense que como aqui si sabes me podrian ayudar

Simplemente necesito que salga una ventana azul al inciar y que solo se pueda quitar cn una combinacion de teclas
Responder Con Cita
  #10  
Antiguo 26-04-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Bueno que tal esto:
Creas una nueva aplicacion, colocas un boton, un timer, cuatro labels.
Eliminas todo del unit y colocas el codigo completo que esta abajo.
Tienes que colocar los eventos, osea darle un click al boton, un click al label1 un click al onformshow y destroy, fijate bien, la unica manera de salir del programa sera dando click sobre el label1.
Puedes darle el color y formato que quieras a los label.
Bueno como dice Roman, que me perdone tu papa.
Va:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    Timer1: TTimer;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure Label1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
   // La posicion del label que estamos dibujando (de 1..9)
    _labelActual:Integer;
    { Private declarations }
    procedure CreateParams(var Params: TCreateParams); override;


  public
    { Public declarations }
  end;

  // Define una lista de posiciones
  labelPosition = array[1..20] of integer;

const
  // Amarillo
  POSITION_lab1X:labelPosition = (1152,1144,1040,992,904,856,768,728,640,592,512,472,392,352,280,240,160,120,48,16);
  POSITION_lab1Y:labelPosition = (216,216,216,216,216,216,216,216,216,216,216,216,216,216,216,216,216,216,216,216);
  // Violeta
  POSITION_lab2X:labelPosition = (1152,1144,1040,992,904,856,768,728,640,592,512,472,392,352,280,240,160,120,48,16);
  POSITION_lab2Y:labelPosition = (304,304,304,304,304,304,304,304,304,304,304,304,304,304,304,304,304,304,304,304);
  // Rojo
  POSITION_lab3X:labelPosition = (1152,1144,1040,992,904,856,768,728,640,592,512,472,392,352,280,240,160,120,48,16);
  POSITION_lab3Y:labelPosition = (248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248);

var
  Form1: TForm1;

implementation

{$R *.dfm}
procedure TForm1.CreateParams(var Params: TCreateParams);
 begin
 inherited CreateParams(Params);
 with Params do
 Style := (Style or WS_POPUP) and not WS_DLGFRAME;

 end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Close;

end;

procedure TForm1.Label1Click(Sender: TObject);
begin
   Button1.Perform(WM_LButtonDown,0,0);
   Sleep(250);
   Button1.Perform(WM_LButtonUp,0,0);


end;

procedure TForm1.FormShow(Sender: TObject);
begin
 Form1.Align:= alClient;
 Form1.Color:= clActiveCaption;
 Button1.Visible:= False;
 Label1.Caption:= 'Falla grave  Microsoft ....................................';
 Label2.Caption:= 'Este ordenador esta por fallar';
 Label4.Caption:= 'Necesita memoria urgente';
 Label3.Caption:= 'Que papa, me la compra?';
 //Esconde Barra de inicio
     ShowWindow(FindWindow
    ('Shell_TrayWnd',nil), SW_HIDE) ;

end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
  total:Integer;
begin

  // Que pez estamos dibujando
  _labelActual := _labelActual + 1;
  total := Length(POSITION_lab1X);

  // Se ha acabado?
  if (_labelActual > total) then begin
     _labelActual:= 0;
  {  TimerAnim.Enabled := False;
    I1.Visible := False;
    IV1.Visible := False;
    IR1.Visible := False;
    // Sacar el Main
    //...

   Exit;}
  end
  else begin
    // Amarillo
    label2.Visible := True;
    label2.Transparent := True;
    label2.Left := POSITION_lab1X[_labelActual];
    label2.Top := POSITION_lab1Y[_labelActual];
    // Violeta
    label3.Visible := True;
    label3.Transparent := True;
    label3.Left := POSITION_lab2X[_labelActual];
    label3.Top := POSITION_lab2Y[_labelActual];
    // Rojo
    label4.Visible := True;
    label4.Transparent := True;
    label4.Left := POSITION_lab3X[_labelActual];
    label4.Top := POSITION_lab3Y[_labelActual];


end;
  end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
   //Muestra Barra de inicio
     ShowWindow(FindWindow
    ('Shell_TrayWnd',nil), SW_SHOWNA) ;
end;

end.
Este codigo es en parte aporte de mis Maestros del foro.
Saludos
Responder Con Cita
  #11  
Antiguo 26-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
Gracias Caral por tu ayuda pero esto.........que hago con este codigo? me bajo alcun complilador de Delphi y lo copio y pego ahi?


Una vez que lo tng pues que hago? lo coloco en inicio de windows?


Un saludo
Responder Con Cita
  #12  
Antiguo 26-04-2007
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Poder: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Cita:
Empezado por Namaris
Me he bajado eso pero nose de que va xD
Esque yo no se programar en realidad, postee aqui porque pense que como aqui si sabes me podrian ayudar

Gracias Caral por tu ayuda pero esto.........que hago con este codigo? me bajo alcun complilador de Delphi y lo copio y pego ahi?


Una vez que lo tng pues que hago? lo coloco en inicio de windows?
Sólo puedo decir una palabra: ¡LOLAZO!

No te lo tomes como insulto, lo que pasa es que no me lo esperaba (bueno, ni yo ni nadie de este foro ).

A ver, alguien que compile el programa que ha publicado nuestro amigo y eterno padawan Caral y le pase el ejecutable a Namaris, a ser posible bien envuelto para su fácil instalación. Yo es que no tengo el compilador listo y estoy haciendo limpieza. Gracias.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita
  #13  
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: 24
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
  #14  
Antiguo 26-04-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
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
  #15  
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: 24
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
  #16  
Antiguo 26-04-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
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
  #17  
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: 24
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
  #18  
Antiguo 26-04-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
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
  #19  
Antiguo 26-04-2007
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi 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
  #20  
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
Respuesta



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 01:02:29.


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
Copyright 1996-2007 Club Delphi