[Delphi] Jak zablokować Pulpit..?

0

Witam!

Potrzebuję źródła na zablokowanie pulpitu. Albo inaczej. Zrobiłem Form1 i doczepiłem do OnCreate kod na wyswietlenie hasła - InputBox. I chcę aby pulpit był zablokowany bo już reszte zrobilem żeby blokował Start, Ctrl+Alt+Del, Alt+Tab itp. a teraz chce żeby nikt nie dostał się do ikon pulpitu. Miałem pomysł na Uruchomienie Form2 czyli w OnCreate:

Form2.Show; //- Właśnie to nie działa !!!!
repeat
//tu nic
until InputBox(.....)....

Prosze pomożciee mi!!!

0

Spróbuj to: (u mnie na winxp działa idealnie :]):

ShowWindow(FindWindow('Progman','Program Manager'),xxxx);

Gdzie xxxx to SW_HIDE (aby ukryć) lub SW_SHOW (aby pokazać).

0

Dzięki zobacze czy działa!

0
procedure TForm1.FormCreate(Sender: TObject);
begin
  form1.WindowState:=wsMaximized;
  form1.FormStyle:=fsStayOnTop;   
end;
<font size="5"> Powinno działać</span>. :-)
0
Ktosiek-Cosiek napisał(a)
procedure TForm1.FormCreate(Sender: TObject);
begin
  form1.WindowState:=wsMaximized;
  form1.FormStyle:=fsStayOnTop;   
end;

Powinno działać
:-)

Jeszcze bsNone w stylach okna ;-P

0

nie działa, bo blokujesz pętlę komunikatów i nie dajesz ukończyć wykonywania konstruktorowi. daj tą pętlę gdzie indziej (później w innym zdarzeniu), a w niej application.processmessages().

jest jeszcze shift+ctrl+esc, win+D, win+M, win+E, win+F i pewnie jeszcze dużo innych.

0

[pesymizm mode on]
namęczysz się, a ktoś i tak znajdzie obejście...

0

a może tak:

  • odpalasz swój porgram
  • zabijasz proces explorera
  • blokujesz kombinacje klawiszy
  • przy zamykaniu swojego programu uruchamiasz explorera
0

Właściwą metodą jest zarejestrowanie programu jako shell systemowy zamiast Eksploratora. Wtedy NIE MA pulpitu ani paska zadań, gdyż są one częścią standardowej powłoki explorer.exe
http://www.knowledgesutra.com/index.php/Change-Windows-Xp-Shell_t20367.html
Automatycznie niemożliwe stanie się również uruchomienie innego exe poprzez prawy klawisz myszy w oknie otwórz/zapisz.

1 użytkowników online, w tym zalogowanych: 0, gości: 1