Como eu faço para desabilitar o botão Iniciar?
Estou com um pequeno probleminha...
Estou fazendo um sistema de bloqueio do computador e estava indo muito bem até q eu descobri q quando eu escondo a barra de tarefas o menu Iniciar do Windows os icones da tela enfim tudo e deixo so o meu programa aberto....
...se eu der um duplo clique na tela do windows o menu Iniciar se abre...
...ae é sacanagem....
o que eu faço...
me ajudem se possivel
Estou fazendo um sistema de bloqueio do computador e estava indo muito bem até q eu descobri q quando eu escondo a barra de tarefas o menu Iniciar do Windows os icones da tela enfim tudo e deixo so o meu programa aberto....
...se eu der um duplo clique na tela do windows o menu Iniciar se abre...
...ae é sacanagem....
o que eu faço...
me ajudem se possivel
Profjohnny
Curtidas 0
Respostas
Moonlight
14/08/2003
Tenho aqui um exemplozinho que peguei de uma revista há mto tempo... tem essa função que esconde ou mostra o botão iniciar
é essa:
Na hora de passar o parâmetro, pra esconder vc passa FALSE e pra aparecer vc passa TRUE.
Quem sabe vc encontra um jeito de usar ela aí.
Se precisar de fonte com exemplo, MP me.
é essa:
procedure MostrarEsconderIniciar(Estado:Boolean);
Var taskbarhandle,buttonhandle:HWND;
begin
taskbarhandle:=FindWindow(´Shell_TrayWnd´,nil);
buttonhandle:=GetWindow(taskbarhandle,GW_CHILD);
If (estado=true)
then ShowWindow(buttonhandle,SW_RESTORE) {mostra o botao}
else ShowWindow(buttonhandle,SW_HIDE); {esconde o botao}
end;Na hora de passar o parâmetro, pra esconder vc passa FALSE e pra aparecer vc passa TRUE.
Quem sabe vc encontra um jeito de usar ela aí.
Se precisar de fonte com exemplo, MP me.
GOSTEI 0
Profjohnny
14/08/2003
Eu ja tentei usar este exemplo mas naum da certo naum...
mesmo com o botao iniciar escondido se eu clicar duplo na tela o menu iniciar abre...
eu naum entendo, até parece q eu to ficando loco...
mas é verdade...
se alguem puder me ajudar estou precisando muito disto o sistema estava quase funcionando...
mesmo com o botao iniciar escondido se eu clicar duplo na tela o menu iniciar abre...
eu naum entendo, até parece q eu to ficando loco...
mas é verdade...
se alguem puder me ajudar estou precisando muito disto o sistema estava quase funcionando...
GOSTEI 0
Rabitz
14/08/2003
Eu ja tentei usar este exemplo mas naum da certo naum...
mesmo com o botao iniciar escondido se eu clicar duplo na tela o menu iniciar abre...
eu naum entendo, até parece q eu to ficando loco...
mas é verdade...
se alguem puder me ajudar estou precisando muito disto o sistema estava quase funcionando...
Pergunta:
Será que não é algum software de terceiros que está fazendo isso??? (Ex.: Drivers de Placa de Vídeo)
Este esquema acima, funciona, e não tive problemas com duplo-clique no desktop....
Ps.: Será que você sabe de uma rotina para esconder o Pop-Up (botão esquerdo do mouse no desktop)?
Falouw
GOSTEI 0
Fred
14/08/2003
ou apenas desabilitar
procedure TForm1.MostrarEsconderIniciar(Estado: Boolean);
Var taskbarhandle,buttonhandle:HWND;
begin
taskbarhandle:=FindWindow(´Shell_TrayWnd´,nil);
buttonhandle:=GetWindow(taskbarhandle,GW_CHILD);
If (estado=true) then
EnableWindow(buttonhandle,false)
//ShowWindow(buttonhandle,SW_RESTORE) {mostra o botao}
else
EnableWindow(buttonhandle,true);
//ShowWindow(buttonhandle,SW_HIDE); {esconde o botao}
end;
mas nao funciona para ctrl+esc e nem para o botao de atalho do teclado!!
procedure TForm1.MostrarEsconderIniciar(Estado: Boolean);
Var taskbarhandle,buttonhandle:HWND;
begin
taskbarhandle:=FindWindow(´Shell_TrayWnd´,nil);
buttonhandle:=GetWindow(taskbarhandle,GW_CHILD);
If (estado=true) then
EnableWindow(buttonhandle,false)
//ShowWindow(buttonhandle,SW_RESTORE) {mostra o botao}
else
EnableWindow(buttonhandle,true);
//ShowWindow(buttonhandle,SW_HIDE); {esconde o botao}
end;
mas nao funciona para ctrl+esc e nem para o botao de atalho do teclado!!
GOSTEI 0
Fred
14/08/2003
Procedure ShowTaskbar(Visible:Boolean);
var wndHandle : THandle;
wndClass : array[0..50] of Char;
begin
StrPCopy(@wndClass[0],´Shell_TrayWnd´);
wndHandle := FindWindow(@wndClass[0], nil);
If Visible=True Then Begin
ShowWindow(wndHandle, SW_RESTORE); // This restores the taskbar
End Else Begin
ShowWindow(wndHandle, SW_HIDE); // This hides the taskbar
End;
end;
Pelo menos no windows XP este código evitou o duplo clique na area de trabalho mas nao evita o ctrl+esc
Voce pode postar aqui os codigos que voce usou para desabilitar os botões? preciso que funcione no XP :?
var wndHandle : THandle;
wndClass : array[0..50] of Char;
begin
StrPCopy(@wndClass[0],´Shell_TrayWnd´);
wndHandle := FindWindow(@wndClass[0], nil);
If Visible=True Then Begin
ShowWindow(wndHandle, SW_RESTORE); // This restores the taskbar
End Else Begin
ShowWindow(wndHandle, SW_HIDE); // This hides the taskbar
End;
end;
Pelo menos no windows XP este código evitou o duplo clique na area de trabalho mas nao evita o ctrl+esc
Voce pode postar aqui os codigos que voce usou para desabilitar os botões? preciso que funcione no XP :?
GOSTEI 0