Ir para conteúdo
Fórum Script Brasil
  • 0

Ctrl Alt Del


Guest felomenal

Pergunta

Guest felomenal

Gostaria de que meu programa não aparecesse quando fossem tecladas o Ctrl Alt Del, como eu faria?

Como eu solucionaria também, caso um vírus estivesse fechando meu sistema?

Ele o fecha sem confirmação sem nada, apenas o fecha... como poderia fazer?

[]'s

Link para o comentário
Compartilhar em outros sites

23 respostass a esta questão

Posts Recomendados

  • 0

Respondendo a sua pergunta

1 Gostaria de que meu programa não aparecesse quando fossem tecladas o Ctrl Alt Del, como eu faria?

neste caso depende do programa e de sua função, click iniciar - execultar - msconfig ou altere o conteudo da pasta sytem do windows

2 Como eu solucionaria também, caso um vírus estivesse fechando meu sistema?

3. Ele o fecha sem confirmação sem nada, apenas o fecha... como poderia fazer?

aconselho que você utiliza do ms-dos para restalrar seus sitema, caso não tenha muita pratica pode fzer um coisa simples e eficaz, remover qalqer tipo de virus

digite no ms-dos o comando scanreg - escolha exibi backup , por fim escolha um dia antes ou mais do acontecido.

Maiores Informações

Michel Dourado

site Michel Dourado .rg3.net

email michelstudio@ig.com.br

Link para o comentário
Compartilhar em outros sites

  • 0

2 Como eu solucionaria também, caso um vírus estivesse fechando meu sistema?

3. Ele o fecha sem confirmação sem nada, apenas o fecha... como poderia fazer?

aconselho que você utiliza do ms-dos para restalrar seus sitema, caso não tenha muita pratica pode fzer um coisa simples e eficaz, remover qalqer tipo de virus

digite no ms-dos o comando scanreg - escolha exibi backup , por fim escolha um dia antes ou mais do acontecido.

Cara mas quero desenvolver isso no meu programa, por uma função pra impedir que qualquer outro aplicativo, feche meu programa!!

Respondendo a sua pergunta

1 Gostaria de que meu programa não aparecesse quando fossem tecladas o Ctrl Alt Del, como eu faria?

neste caso depende do programa e de sua função, click iniciar - execultar - msconfig ou altere o conteudo da pasta sytem do windows

Não. Eu já vi um código desses, que voce implementa no seu projeto Delphi... Eu quero soluções e códigos em Delphi!

De qualquer forma, Muito Obrigado!

Link para o comentário
Compartilhar em outros sites

  • 0

pra você esconder do ctrl+alt+del:

//Kurt22 - Orlando da Silva Junior
//orlandosjunior@hotmail.com
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

type
  TForm1 = class(TForm)
  procedure FormCreate(Sender: TObject);
  procedure FormDestroy(Sender: TObject);
  private
  { Private declarations }
  public
  { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}
{Para ocultar um programa, deve-se registrar este como um serviço do Windows. Normalmente um serviço do Windows é ativado quando com a inicialização do sistema (Windows) e pemanece ativo até a finalização deste. Este processo esconde o programa da lista "Ctrl+Alt+Del"}
Const
  Servico_Simples = 1;
  Servico_Unregister = 1;

Function RegisterServiceProcess(DwProcessID, dwType: DWord): DWord; StdCall; External 'KERNEL32.dll';


procedure TForm1.FormCreate(Sender: TObject);
begin
  RegisterServiceProcess(GetCurrentProcessID, Servico_Simples);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  RegisterServiceProcess(GetCurrentProcessID, Servico_Unregister);
end;
end. 

Grato.

Link para o comentário
Compartilhar em outros sites

  • 0

Quanto a desaparecer do CTRL+ALT+DEL, basta que você registre o seu programa como um serviço. Isso pode ser feito por meio da API RegisterServiceProcess, só que vale ressaltar que isso só valerá para o Win9x, já que a plataforma NT (Win2000/XP/2003) mostra os serviços de forma natural (o que é o correto, aliás). Tentei adaptar o código que uso com essa função, no VB, para o Delphi, só que não pude testar já que estou com o XP aqui. Declare a seguinte função:

function RegisterServiceProcess(dwProcessId, dwType: DWORD): DWORD; external 'kernel32.dll';
Depois, chame-a no evento OnLoad do Form principal:
  RegisterServiceProcess(GetCurrentProcessId(), 1);

E veja aí se dá certo.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0
Guest felomenal

Mas e quanto o virus estar fechando meu prog sem confirmação sem nada? quando ele ativa ele fecha, q q eu poderia estar implementando em meu código pra evitar isso?

Abraços!

Link para o comentário
Compartilhar em outros sites

  • 0

Olá, esse programa que fecha o seu deve estar mandando uma msg do tipo wm_Close p/ o handle da sua janela. você pode interceptar essa msg antes de ser processada pelo seu programa. Defina:

var Pode_Fechar:Boolean;
procedure WndProc(var Msg:TMessage); override;

procedure TForm1.WndProc(var Msg:TMessage);
begin
  if (Msg.Msg <> wm_Close) or Pode_Fechar then
    inherited;
end;

ps: Ative o flag de Pode_Fechar quando quiser encerrar senão nem você irá conseguir fechar sua janela.

Link para o comentário
Compartilhar em outros sites

  • 0

Olá colega, tente monitorar as msgs.

procedure TForm1.WndProc(var Msg:TMessage);
var f:TextFile;
begin
  if not FileExists('c:\Log.txt') then
  begin
    AssignFile(f, 'c:\Log.txt');
    Rewrite(f);
    CloseFile(f);
  end;
  AssignFile(f, 'c:\Log.txt');
  Append(f);
  Writeln(f, IntToStr(Msg.Msg)+' '+IntToStr(Msg.WParam)+' '+IntToStr(Msg.LParam));
  CloseFile(f);
  inherited; // não vá esquecer desta linha porque WndProc é override
end;

1-Chame seu programa.

2-Chame o programa que fecha o seu.

3-Quando seu programa fechar, edite o arquivo Log.txt e poste as 30 últimas linhas.

Link para o comentário
Compartilhar em outros sites

  • 0
Guest felomenal

32 1756 33554433
32 1756 33554433
32 1756 33554433
32 1756 33554433
32 1756 33554433
32 1756 33554433
32 1756 33554433
32 1756 33554433
32 1756 33554433
32 1756 33554433
45076 0 13188108
45075 0 13188108
134 1 0
70 0 7732036
528 513 8585557
33 1284 33619969
45111 0 13464836
16 0 0
24 0 1
24 0 0
70 0 7730500
71 0 7730560
134 0 0
6 0 0
28 0 -1715021
45067 0 0
45081 0 0
2 0 0
128 1 0
130 0 0

Essas aí são as últimas 30 Linhas...

Valeu Um Abraço!

Link para o comentário
Compartilhar em outros sites

  • 0
Guest felomenal

45076 0 13188108

45075 0 13188108

32 3468 33554433

32 3468 33554433

32 3468 33554433

32 3468 33554433

32 3468 33554433

32 3468 33554433

32 3468 33554433

32 3468 33554433

45076 0 13188108

45075 0 13188108

134 1 0

70 0 7732036

528 513 8782185

33 3380 33619969

45111 0 13416360

16 0 0

24 0 1

24 0 0

70 0 7730500

71 0 7730560

134 0 0

6 0 0

28 0 -1638601

45067 0 0

45081 0 0

2 0 0

128 1 0

130 0 0

As últimas 30 linhas denovo, valeuuuu, falous!

Link para o comentário
Compartilhar em outros sites

  • 0

Acho que você deve estar fazendo alguma coisa errada, porque quando você coloca:

if Msg.Msg <> WM_CLOSE then inherited; em WndProc que é override, significa o seguinte:

Todas as msgs exceto WM_CLOSE serão processadas(inherited).

Com isto, você não consegue fechar sua janela clicando no 'X' da barra de título.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,9k
×
×
  • Criar Novo...