Delphi-PRAXiS
Seite 5 von 6   « Erste     345 6      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi bestimmte Tasten Sperren. (https://www.delphipraxis.net/69054-bestimmte-tasten-sperren.html)

Noobinator 16. Mai 2006 16:22

Re: bestimmte Tasten Sperren.
 
ups die habe ich vergessen^^
also STRG+ALT+ENTF geht nicht unter XP zu sperren soweit ich mich da belesen habe, aber die Windostaste Bräuchte ich noch^^
wäre die möglich zu sperren?
wenn ja wie?
bitte quellcode texten.

nat 16. Mai 2006 18:34

Re: bestimmte Tasten Sperren.
 
Zitat:

Zitat von Noobinator
bitte quellcode texten.

kann es sein, dass du möchtes, dass dir jemand das schreiben deines programms abnehmen soll?? :roll:
den kannste ma schön selber schreiben. du hast doch gesehen, wie man keys mittels eines
hooks anhand des virtual key-codes sperrt. die key-codes für die win-tasten
sind VK_LWIN und VK_RWIN.

Noobinator 16. Mai 2006 20:16

Re: bestimmte Tasten Sperren.
 
nein du sollst mein Programm nicht schreiben, aber ich habe schon geschrieben, das ich dein Programm versucht habe als beispiel zu nehmen und umzuändern. Ich schaffe es einfach nicht *dummbin* :(

naja was müsste ich den wie ändern?
müsste das so aussehen?

Delphi-Quellcode:
if KeyDown and (P^.vkCode = VK_lwin) or
      Bool($8000 and GetAsyncKeyState(VK_rwin)) then<--- was muss dahin??????
      result := HC_SKIP
    else result := CallNextHookEx(hKeyHook, Code, wParam, lParam);
oder muss sosnt noch was geändert werden?

Olli 16. Mai 2006 20:38

Re: bestimmte Tasten Sperren.
 
Du sagst zwar was du machen möchtest, aber nicht was du erreichen möchtest. Eben letzteres wäre aber wichtig.

Beschreibe uns doch erstmal was du für einen Effekt erreichen möchtest. Und zwar möglichst redundant, damit wir auch andere Alternativen anbieten können :roll:

Noobinator 16. Mai 2006 20:49

Re: bestimmte Tasten Sperren.
 
also wir sollen ein Programm schreiben, welches man nur beenden kann,wenn man eine bestimme bedingung erfüllt. (wie z.B. eine Rechenaufgabe löst).
Nun darf man das Programm auch nicht einfach zur seite schieben können, und es ignorieren, was ich eben erreichen muss.
habe formclose schon abgefangen , und muss jetzt eben nur noch die Windows tasten beenden.
mehr nicht.

Alt+tab habe ich mit form1.formstyle:=Tstayontop; einfach verarscht, da sich so meine form bei vollild einfach wieder drüber legt.
weiterhin habe ich:
borderstyle:=bsnone
STRG*ESC und die starttaste deaktiviert.

Olli 16. Mai 2006 20:58

Re: bestimmte Tasten Sperren.
 
Wie wäre es, wenn dein Programm einfach einen anderen Desktop erstellt und zu diesem wechselt. Ein Benutzer MUSS dann die Aufgabe lösen, damit dein Programm ihn wieder auf den Standard-Desktop läßt. Da hülfe auch kein Strg+Alt+Entf, weil Winlogon nach der SAS ja wieder zum Ausgangsdesktop zurückkehrt. Killen des Programms ist auch unpraktikabel, weil dann ein Shutdown nötig wird.

Noch fieser wäre es, das Ganze in eine Ersatz-GINA zu packen. Dann kannst du nämlich solche Geschichten wie Strg+Alt+Entf sehr wohl kontrollieren!!!

Noobinator 16. Mai 2006 21:03

Re: bestimmte Tasten Sperren.
 
wie meinst du das mit dem ersatz desktop? einen zweiten monitor anschließen :gruebel:
und was ist gina?

Olli 16. Mai 2006 21:13

Re: bestimmte Tasten Sperren.
 
Nein, kein 2ter Monitor. Ein Desktop ist ein Container für Fenster und ist innerhalb einer WindowStation enthalten. Eine WindowStation kann aber auch mehrere Desktops enthalten.

Beispielsweise ist das, was du siehst wenn du dich einloggst oder den "Sicherheitsbildschirm" siehst bzw. Strg+Alt+Entf drückst (wenn die Willkommensseite ausgeschalten ist) ein anderer Desktop. Normalerweise ist immer nur ein Desktop in der interaktiven WindowStation sichtbar. Und genau das kannst du programmatisch ändern.

Eine GINA ist eine DLL, die in Winlogon geladen wird (MSGINA.DLL ist Standard) und die für die grafische Darstellung des Logonbildschirms und des Sicherheitsbildschirms (und entsprechend für die Desktops) zuständig ist. Also ein anderer Ansatzpunkt als oben. Obiges verhindert nämlich nicht, daß der Benutzer den Taskmanager per Strg+Alt+Entf startet - dazu müßtest du die Policy des Systems anpassen.

Noobinator 16. Mai 2006 21:15

Re: bestimmte Tasten Sperren.
 
wie kann ich das mit dem desktop realisieren? das hört sich interressant an.

Noobinator 16. Mai 2006 21:50

Re: bestimmte Tasten Sperren.
 
ok weiteres Problem:
wie kann ich windows+D abfangen?

mein Problem ist, das windows ein virtual keycode ist, und D ein ascii.. wir kann man das machen?
srry für die vielen fragen, aber ich bin eben ein noob in NOT.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:31 Uhr.
Seite 5 von 6   « Erste     345 6      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz