Blokada klawiszy i schowka w C++

0

Witam!
Aktualnie piszę program zaliczeniowy z baz danych - konkretnie system egzaminacyjny studentów. A że student to szczwana bestia i pewnie chciałby wynieść pytania z sali egzaminacyjnej na zewnątrz lub korzystać ze ściąg na dysku lub w internecie - potrzebne mi są pewne zabezpieczenia. Chodzi o to, by po uruchomieniu programu zajmował on cały ekran i był w pozycji AlwaysOnTop. Wiem - to jest banalnie proste i nie stanowi większego problemu. Ale trzeba by jeszcze dodatkowo zablokować kombinacje klawiszy podczas startu programu i odblokować je przy jego zakończeniu. Konkretnie chodzi o blokady (lub zmianę funkcjonalności np. na wyświetlenie jakiegos komunikatu) nastepujacych kombinacji:

  • Alt+Tab;
  • Ctrl+Alt+Delete;
  • Ctrl+A;
  • Ctrl+C;
  • Ctrl+V;
  • Ctrl+X;
  • Print Screen.

Dobrze byłoby również całkowicie wyłączyć systemowy schowek, lub po prostu opróżniać go automatycznie po każdej zmianie jego zawartości (widziałem program studenta, który uruchomiony w tle zrzucał schowek do pliku natychmiast po zmianie jego zawartości - wtedy nawet nie ma potrzeby przełączać się na aplikacje w tle).

Jak znam życie to zapomniałem o jakiejś ważnej kwestii z tym związanej lub jakimś skrócie klawiszowym, ale mam nadzieję że wyraziłem się w miarę jasno, jeśli chodzi o mój problem. Teraz uprzejmie proszę o pomoc w jego rozwiązaniu.
Pozdrawiam,
Łukasz

0

Blokada ALT+CTRL+DELETE



//Zablokowanie:

SystemParametersInfo(SPI_SCREENSAVERRUNNING, TRUE , NULL,0);

//Odblokowanie:

SystemParametersInfo(SPI_SCREENSAVERRUNNING, FALSE , NULL,0);

Tak to robią wygaszacze!!!

0

SystemParametersInfo() w ogóle nie działa na taskmanagera pod XP ;)

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\taskmgr.exe
Debugger=jakiś.exe

0
sQbanieTZ napisał(a)

Dobrze byłoby również całkowicie wyłączyć systemowy schowek

Spróbuj użyć funkcji OpenClipboard, CloseClipboard i EmptyClipboard.

W helpie jest napisane:

The OpenClipboard function opens the clipboard for examination and prevents other applications from modifying the clipboard content.

co w pośrednio prowadzi do zablokowania skrótów Ctrl+C, Ctrl+X, Ctrl+V (w pewnym sensie).

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