Einzelnen Beitrag anzeigen

Benutzerbild von sundance
sundance

Registriert seit: 9. Mai 2006
98 Beiträge
 
Delphi 7 Professional
 
#7

AW: Applikation IMMER im Vordergrund

  Alt 9. Apr 2013, 11:00
@CCRDude:
Zitat:
Ich hab mir ne Unit ( < 400 Zeilen, schon inklusive Code, vom vorigen Desktop einen Screenshot zu erstellen und als neuen ausgegrauten Hintergrund zu verwenden) geschrieben (...)
Vielleicht kannst du dich ja durchringen, uns diese Unit zur Verfügung zu stellen...

@Günther:
Deiner Anregung folgend habe ich jetzt folgendes eingebaut:
Code:
// --- Routinen zur Installation eines Keyboard-Hooks --------------------------

var
  HookHandle: Cardinal = 0;


function LowLevelKeyboardProc(nCode: Integer; wParam: wParam; lParam: lParam): LRESULT; stdcall;
begin
  if (nCode < 0) then
    Result := CallNextHookEx(HookHandle, nCode, wParam, lParam)
  else
    Result := 1;
end;


function InstallHook(Hwnd: Cardinal): Boolean; stdcall;
begin
  Result := False;
  if (HookHandle = 0) then begin
    HookHandle := SetWindowsHookEx(13, LowLevelKeyboardProc, 0, 0);
    Result := (HookHandle <> 0);
  end;
end;


function UninstallHook: Boolean; stdcall;
begin
  Result := UnhookWindowsHookEx(HookHandle);
  HookHandle := 0;
end;
wobei InstallHook im FormCreate und UninstallHook im FormDestroy Event ausgeführt wird.
Damit habe ich (fast) alles gesperrt, was mir wichtig war (Die Taskleiste kann der Anwender wegen der vollformatigen, schwarzen Form nicht erreichen).
Aber der gemeine Anwender ist meist sehr erfinderisch; mal sehen, was er sich jetzt einfallen läßt...
  Mit Zitat antworten Zitat