![]() |
Ein eventuell vorhandenes Hauptmenü nicht vergessen. :wink:
|
Moin Hagen,
Zitat:
Mir geht's hierbei nicht um eine "normale" Installation, sondern um die Verteilung von Software in Unternehmen. Da hat der User meist nicht mitzubestimmen, ob er eine Software bekommt oder nicht. ;-) Gerade bei kompletten Systeminstallationen kann eine Abschaltung von Keyboard und Maus die Installation ganz entschieden schützen. |
Ok,
jetzt mal zum AusgangsThread zurück. Also, was ich mit "Maus sperren" meine ist, dass der User die Maus nicht mehr bewegen kann und auch nicht klicken kann. Dies ist für mein Programm eigentlich sehr sinnvoll... @negaH : Keine Angst, es ist kein Setup-Programm und der User kann es selbst entscheiden, wann die Maus gesperrt werden soll und wann nicht. @Luckie : Wozu ich die Maus sperren will, ist doch egal. Wenn du einen Code oder Tipp für mich hast, du wäre ich froh, du würdest ihn mir posten... Ich kann dir nur sagen, das macht Sinn und der User, der genauso denkt, wird diese Funktion benutzen... Würde mich über einen Code freuen, in dem die Maus komplett "einfriert" DJ-SPM |
Wenn du einen Low-Level Maushook installierst (WH_MOUSE_LL) und in der Hauptfunktion das CallNextHookEx nicht aufrufst, kannst du keine Eingabe meher tätigen. Falls du nicht weißt, wie man einen Hook in der Form einichtet, guck einfach mal
![]() ![]() ![]() Funktioniert aber glaub ich nur ab NT, da 98 diesen Maushook gar nicht kennt. |
Zitat:
Ausserdem fällt mir derzeit keine Sache ein bei der das Sinn machen würde, deshalb würd mich das deswegen schon interessieren. |
Nur um mal eine Sache zu nennen wo es Sinn machen würde / könnte: Es gibt eine Reihe Tools, die sozusagen die Arbeitsstation sperren. Sie ermöglichen keine Mauseingaben mehr (Tastatur außerhalb des Programms natürlich auch nicht), und die einzige Eingabemöglichkeit wäre die eines Passwortes zwecks Entsperrung.
Ob so ein Tool in Zeiten von Windows 2000 / XP noch Sinn macht ist allerdings wiederum eine andere Frage. Bei Spielen glaube ich allerdings nicht, dass "Maus sperren" sinnvoll ist, da es dort meist genügt, einfach den Cursor abzuschalten. Bei potentiell bösartigem Code bin ich daher auch dafür, das Anwendungsgebiet zu benennen, denn das ist ja meist nicht so schwer... |
Hallo,
ich hatte vor kurzem das Problem, eine Fremdapplikation zu steuern, wo manche Komponenten keine waren, sondern nur grafische Elemente. Daher bestimmte ich die relative Position dieser Elemente, und schob danach die Maus dorthin und simulierte einen Mausklick. Damit inzwischen der User nicht den Mauscurser in eine andere Richtung verschob, versteckte/schaltete ich die Maus aus :cat:!
Delphi-Quellcode:
Damit schaltete ich die Maus aus (WinXP)
ShowCursor(FALSE); // Cursor aus/ein
ShowCursor(TRUE);
Delphi-Quellcode:
Quelle:
procedure TForm1.Button1Click(Sender: TObject);
function FuncAvail(_dllname, _funcname: string; var _p: pointer): boolean; { Devuelve true si la funcion _funcname esta disponible en la DLL _dllname. Si es asi, almacena en _p la direccion de la función.} var _lib: tHandle; begin Result := false; _p := NIL; if LoadLibrary(PChar(_dllname)) = 0 then exit; _lib := GetModuleHandle(PChar(_dllname)); if _lib <> 0 then begin _p := GetProcAddress(_lib, PChar(_funcname)); if _p <> NIL then Result := true; end; end; var xBlockInput : function(Block: BOOL): BOOL; stdcall; begin if FuncAvail('USER32.DLL', 'BlockInput', @xBlockInput) = true then begin {Bloquear entradas/Disable input} xBlockInput(true); sleep(4000); {Desbloquear/Enable} xBlockInput(false); end; end; ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:03 Uhr. |
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-2025 by Thomas Breitkreuz