Autor Beitrag
dwp
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Mo 10.02.03 19:03 
DELPHI: Tastaturcode, Tastaturbelegung ???

problem:

die drei tasten <Strg><Alt><Entf> sollen während eines (Delphi) programmlaufes deaktiviert sein, damit ein user das programm nicht ohne bestimmte bedingungen beenden kann.

dieser code deaktiviert nur <Alt><F4>:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
procedure TForm_DK.Edit1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
  label a;
begin
//if key=18 then showmessage('alt');
//<Strg>=17  <ALT>=18  <Entf>=46,   <F4>=115    <a>=65
//Listbox1.Items.Add('Edit1.KeyPress'+ inttostr(Key));
a:
  if key=18 then begin key:=0; goto a; end;
  if key=115 then begin key:=65; goto a; end;
  if key=17 then begin key:=65; goto a; end;
  if key=46 then begin key:=65; goto a; end;
end;

wer kann was vorschlagen?

danke.

Moderiert von user profile iconTino: Code-Tags hinzugefügt.
MathiasH
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 699

WinXP, Win98SE, Debian, Win95
D5 Stand, D6 Prof
BeitragVerfasst: Mo 10.02.03 19:11 
Hallo
Es gibt einen trick, mit dem man windows vorgaukelt, dein Programm sei ein Bildschirmschoner. bei denen ist ja strg+Alt+Entf deaktiviert.
leider weis ich nicht mehr genau, wie er funktioniert

IO-sys

_________________
"Viel von sich reden, kann auch ein Mittel sein, sich zu verbergen."
Friedrich Nietzsche
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 10.02.03 19:42 
Geht nur schwer bis gar nicht (für Otto-Normal-Programmierer) unter 2000 und XP.

Und bvisher konnte mir auch noch niemand einen vernünftigen Grund nennen, warum man das verbieten muß. Damit nimmt man jeden Benutzer die Möglichkeit sich abzumelden, die Arbeitstsation zu sperren oder ein nicht mehr reagierendes Programm zu beenden. Ist wie, als wenn du bei einem Auto die Bremsen ausbaust. In dem Auto möchtest du doch wohl auch nicht sitzen oder?

Wenn dein Programm nicht beendet werden darf, dann komzipiere es als Service unter 2000/XP. Die darf nur der Admin einrichten, starten und beenden.
DaRkFiRe
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 526

WinXP Home & Professional
C, C++, Delphi
BeitragVerfasst: Mo 10.02.03 21:41 
Mitnichten, Luckie - es gibt sehr wohl auch nützliche Zwecke für soetwas. Z.B. wenn Du mal nicht am Rechner bist und jemand anderes nicht an den Rechner soll. Dann blockiert Dein Programm den Rechner und verhindert somit den unbefugten Zugriff auf den Rechner. Hab so ein Programm schon für meine LANs geschrieben, weil ich sowas nicht leiden kann, verstehste!?

Schaut unter SystemParametersInfo - da sollte das stehen.

Die Konstante für den Screensaver lautet:
SPI_SCREENSAVERRUNNING = 97

_________________
Lang ist der Weg durch Lehren - kurz und wirksam durch Beispiele! Seneca
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mo 10.02.03 22:04 
Unter Win98 macht es eventuell noch Sinn aber unter 2000/XP sperre ich den Computer (Strg+Alt+Entf -> "Computer sperren") - fertig, aus die Maus.