Advertisement
TLama

Untitled

Sep 25th, 2014
444
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Delphi 1.11 KB | None | 0 0
  1. [Setup]
  2. AppName=My Program
  3. AppVersion=1.5
  4. DefaultDirName={pf}\My Program
  5.  
  6. [Code]
  7. #ifdef UNICODE
  8.   #define AW "W"
  9. #else
  10.   #define AW "A"
  11. #endif
  12.  
  13. const
  14.   WM_MOUSEMOVE = $0200;
  15.  
  16. function GetClientRect(hWnd: HWND; out lpRect: TRect): BOOL;
  17.   external 'GetClientRect@user32.dll stdcall';
  18. function FindWindowEx(hwndParent: HWND; hwndChildAfter: HWND;
  19.   lpszClass: string; lpszWindow: string): HWND;
  20.   external 'FindWindowEx{#AW}@user32.dll stdcall';
  21.  
  22. procedure CleanSystemTray;
  23. var
  24.   R: TRect;
  25.   X: Integer;
  26.   Y: Integer;
  27.   SysTray: HWND;
  28.   SysPager: HWND;
  29.   Container: HWND;
  30.   NotifyArea: HWND;
  31. begin
  32.   Container := FindWindowEx(0, 0, 'Shell_TrayWnd', '');
  33.   SysTray := FindWindowEx(Container, 0, 'TrayNotifyWnd', '');
  34.   SysPager := FindWindowEx(SysTray, 0, 'SysPager', '');
  35.   NotifyArea := FindWindowEx(SysPager, 0, 'ToolbarWindow32', 'Notification Area');
  36.  
  37.   GetClientRect(NotifyArea, R);
  38.  
  39.   X := 0;
  40.   Y := 0;
  41.   while X < R.Right do
  42.   begin
  43.     while Y < R.Bottom do
  44.     begin
  45.       SendMessage(NotifyArea, WM_MOUSEMOVE, 0, (Y shl 16) + X);
  46.       Y := Y + 5;
  47.     end;
  48.     X := X + 5;
  49.   end;
  50. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement