exclusividade para o meu programa

Delphi

13/04/2004

Gostaria de saber como fazer para que, ao iniciar minha aplicacao Delphi, eu ´ desabilite ´ o shell do Windows (Explorer). Ou seja, o que eu preciso e´ de uma forma de fazer com que apos a minha aplicacao seja iniciada, a maquina trave e só funcione quando eu digitar uma senha. tipo proteção de tela

tentei o codigo abaixo, mas nao funcionou em delphi7:



procedure Tform1.ChangeShell(String programa);
var
ArquivoIni : Tinifile;
begin
try
ArquivoIni := Tinifile.Create(´System.ini´);
ArquivIni.WriteSection(´Config´,´Shell´,´Myprog.exe´);
fynally
ArquivoIni.Destroy;
end;
end;


Mahdak

Mahdak

Curtidas 0

Respostas

Orlando Frade

Orlando Frade

13/04/2004

Eu tenho um exemplo de um prog q faz isso. Eu vou postá-lo aqui depois, pois estou sem tempo agora.


GOSTEI 0
Orlando Frade

Orlando Frade

13/04/2004

É + ou - assim (pq eu ainda não entendi direito o código)

vc deve declarar uma [b:0151cef896]procedure[/b:0151cef896] na sessão privada q é: [i:0151cef896][b:0151cef896]procedure[/b:0151cef896] AppMsg(var Msg: TMsg; var Handled: Boolean);[/i:0151cef896]
procedure TFormSenha.AppMsg(var Msg: TMsg; var Handled: Boolean); begin if (Msg.Message = wm_SysCommand) and (Msg.wParam = sc_ScreenSave) then Handled := true; end;


no evento OnCreate do formulário principal que eu chamo de FormSenha você deve digitar o seguinte código:
procedure TFormSenha.FormCreate(Sender: TObject); begin Application.OnMessage := AppMsg; SetForeGroundWindow(Application.Handle); ShowWindow(FindWindow(nil,´Program Manager´),SW_HIDE); // Ícones Desktop ShowWindow(FindWindow(´Shell_TrayWnd´, nil), SW_HIDE); // Barra de Tarefas //SystemParametersInfo(97, Word(True), @OldValue, 0); // liga Ctrl+Alt+Del, Alt+Tab, Ctrl+Esc SystemParametersInfo(SPI_SCREENSAVERRUNNING, 1, Nil, 0)


ainda tá faltando desabilitar o Ctrl + Alt + Del q está em uma outra documentação. Mais tarde eu coloco aqui pra vc


GOSTEI 0
Orlando Frade

Orlando Frade

13/04/2004

Para desabilitar o ctrl+alt+del
declare a variavel [b:50e047071e]OldValue : LongBool;[/b:50e047071e] no evento onCreate do formulário principal e dentro do procedimento coloque a seguinte linha:
[b:50e047071e]SystemParametersInfo(97, Word(True), @OldValue, 0);[/b:50e047071e]

Com isso vc desabilita o ctrl+alt+del, alt+tab + ctrl+esc.

Essa dica foi retirada do site da borland


GOSTEI 0
POSTAR