sandin Posted April 29, 2009 Posted April 29, 2009 With SendMessage I can send the message with wparam and lparam to window with a certain handle, but what I need is to hook msges and their wparam/lparam from win handle I choose to. Is there a way to do so? Can someone show me? Some cool glass and image menu | WinLIRC remote controler | Happy Holidays to all... | Bounce the sun, a game in which you must save the sun from falling by bouncing it back into the sky | Hook Leadtek WinFast TV Card Remote Control Msges | GDI+ sliding toolbar | MIDI Keyboard (early alpha stage, with lots of bugs to fix) | Alt+Tab replacement | CPU Benchmark with pretty GUI | Ini Editor - Edit/Create your ini files with great ease | Window Manager (take total control of your windows) Pretty GUI! | Pop-Up window from a button | Box slider for toolbar | Display sound volume on desktop | Switch hotkeys with mouse scroll
Yashied Posted April 29, 2009 Posted April 29, 2009 (edited) You mean this? Edited April 26, 2010 by Yashied My UDFs: iKey | FTP Uploader | Battery Checker | Boot Manager | Font Viewer | UDF Keyword Manager | Run Dialog Replacement | USBProtect | 3D Axis | Calculator | Sleep | iSwitcher | TM | NetHelper | File Types Manager | Control Viewer | SynFolders | DLL Helper Animated Tray Icons UDF Library | Hotkeys UDF Library | Hotkeys Input Control UDF Library | Caret Shape UDF Library | Context Help UDF Library | Most Recently Used List UDF Library | Icons UDF Library | FTP UDF Library | Script Communications UDF Library | Color Chooser UDF Library | Color Picker Control UDF Library | IPHelper (Vista/7) UDF Library | WinAPI Extended UDF Library | WinAPIVhd UDF Library | Icon Chooser UDF Library | Copy UDF Library | Restart UDF Library | Event Log UDF Library | NotifyBox UDF Library | Pop-up Windows UDF Library | TVExplorer UDF Library | GuiHotKey UDF Library | GuiSysLink UDF Library | Package UDF Library | Skin UDF Library | AITray UDF Library | RDC UDF Library Appropriate path | Button text color | Gaussian random numbers | Header's styles (Vista/7) | ICON resource enumeration | Menu & INI | Tabbed string size | Tab's skin | Pop-up circular menu | Progress Bar without animation (Vista/7) | Registry export | Registry path jumping | Unique hardware ID | Windows alignment More...
sandin Posted April 29, 2009 Author Posted April 29, 2009 yup, I've tried several things, this is what I've got so far: #Include <WinAPI.au3> HotKeySet("{ESC}","close") $callback=DllCallbackRegister("_Intercept","lresult","int;wparam;lparam") Run("winmine.exe") WinWait("Minesweeper") WinActivate("Minesweeper") $module=_WinAPI_GetModuleHandle(0);WinGetHandle("Minesweeper")) ;<--- dunno what to set here $hook=_WinAPI_SetWindowsHookEx($WH_GETMESSAGE,DllCallbackGetPtr($callback),$module) TrayTip("", "I should be able to hook msges now", 10) While 1 Sleep(10) WEnd Func _Intercept($nCode,$wParam,$lParam) TrayTip("message!", $nCode & @CRLF & $wParam & @CRLF & $lParam, 10) EndFunc Func close() _WinAPI_UnhookWindowsHookEx($hook) DllCallbackFree($callback) EndFunc NOT working yet Some cool glass and image menu | WinLIRC remote controler | Happy Holidays to all... | Bounce the sun, a game in which you must save the sun from falling by bouncing it back into the sky | Hook Leadtek WinFast TV Card Remote Control Msges | GDI+ sliding toolbar | MIDI Keyboard (early alpha stage, with lots of bugs to fix) | Alt+Tab replacement | CPU Benchmark with pretty GUI | Ini Editor - Edit/Create your ini files with great ease | Window Manager (take total control of your windows) Pretty GUI! | Pop-Up window from a button | Box slider for toolbar | Display sound volume on desktop | Switch hotkeys with mouse scroll
WideBoyDixon Posted April 29, 2009 Posted April 29, 2009 Something in the back of mind is niggling me. I seem to recall that your hook procedure has to be in a separate DLL and that's not something that can be achieved through AutoIt. However, I might be wrong. It's been known. [center]Wide by name, Wide by nature and Wide by girth[u]Scripts[/u]{Hot Folders} {Screen Calipers} {Screen Crosshairs} {Cross-Process Subclassing} {GDI+ Clock} {ASCII Art Signatures}{Another GDI+ Clock} {Desktop Goldfish} {Game of Life} {3D Pie Chart} {Stock Tracker}[u]UDFs[/u]{_FileReplaceText} {_ArrayCompare} {_ToBase}~ My Scripts On Google Code ~[/center]
Yashied Posted April 30, 2009 Posted April 30, 2009 Something in the back of mind is niggling me. I seem to recall that your hook procedure has to be in a separate DLL and that's not something that can be achieved through AutoIt. However, I might be wrong. It's been known.What do you think why there is a DllCallbackRegister()? My UDFs: iKey | FTP Uploader | Battery Checker | Boot Manager | Font Viewer | UDF Keyword Manager | Run Dialog Replacement | USBProtect | 3D Axis | Calculator | Sleep | iSwitcher | TM | NetHelper | File Types Manager | Control Viewer | SynFolders | DLL Helper Animated Tray Icons UDF Library | Hotkeys UDF Library | Hotkeys Input Control UDF Library | Caret Shape UDF Library | Context Help UDF Library | Most Recently Used List UDF Library | Icons UDF Library | FTP UDF Library | Script Communications UDF Library | Color Chooser UDF Library | Color Picker Control UDF Library | IPHelper (Vista/7) UDF Library | WinAPI Extended UDF Library | WinAPIVhd UDF Library | Icon Chooser UDF Library | Copy UDF Library | Restart UDF Library | Event Log UDF Library | NotifyBox UDF Library | Pop-up Windows UDF Library | TVExplorer UDF Library | GuiHotKey UDF Library | GuiSysLink UDF Library | Package UDF Library | Skin UDF Library | AITray UDF Library | RDC UDF Library Appropriate path | Button text color | Gaussian random numbers | Header's styles (Vista/7) | ICON resource enumeration | Menu & INI | Tabbed string size | Tab's skin | Pop-up circular menu | Progress Bar without animation (Vista/7) | Registry export | Registry path jumping | Unique hardware ID | Windows alignment More...
ProgAndy Posted April 30, 2009 Posted April 30, 2009 To install a hook in an external application, you need a DLL with the hook-procedure. DLLCallbackREgister registers a function that can be called from a DLL loaded into the AutoIt-porcess. This functions can not be called from external processes. *GERMAN* [note: you are not allowed to remove author / modified info from my UDFs]My UDFs:[_SetImageBinaryToCtrl] [_TaskDialog] [AutoItObject] [Animated GIF (GDI+)] [ClipPut for Image] [FreeImage] [GDI32 UDFs] [GDIPlus Progressbar] [Hotkey-Selector] [Multiline Inputbox] [MySQL without ODBC] [RichEdit UDFs] [SpeechAPI Example] [WinHTTP]UDFs included in AutoIt: FTP_Ex (as FTPEx), _WinAPI_SetLayeredWindowAttributes
Yashied Posted April 30, 2009 Posted April 30, 2009 To install a hook in an external application, you need a DLL with the hook-procedure. DLLCallbackREgister registers a function that can be called from a DLL loaded into the AutoIt-porcess. This functions can not be called from external processes.You're right, but $WH_KEYBOARD_LL works fine. My UDFs: iKey | FTP Uploader | Battery Checker | Boot Manager | Font Viewer | UDF Keyword Manager | Run Dialog Replacement | USBProtect | 3D Axis | Calculator | Sleep | iSwitcher | TM | NetHelper | File Types Manager | Control Viewer | SynFolders | DLL Helper Animated Tray Icons UDF Library | Hotkeys UDF Library | Hotkeys Input Control UDF Library | Caret Shape UDF Library | Context Help UDF Library | Most Recently Used List UDF Library | Icons UDF Library | FTP UDF Library | Script Communications UDF Library | Color Chooser UDF Library | Color Picker Control UDF Library | IPHelper (Vista/7) UDF Library | WinAPI Extended UDF Library | WinAPIVhd UDF Library | Icon Chooser UDF Library | Copy UDF Library | Restart UDF Library | Event Log UDF Library | NotifyBox UDF Library | Pop-up Windows UDF Library | TVExplorer UDF Library | GuiHotKey UDF Library | GuiSysLink UDF Library | Package UDF Library | Skin UDF Library | AITray UDF Library | RDC UDF Library Appropriate path | Button text color | Gaussian random numbers | Header's styles (Vista/7) | ICON resource enumeration | Menu & INI | Tabbed string size | Tab's skin | Pop-up circular menu | Progress Bar without animation (Vista/7) | Registry export | Registry path jumping | Unique hardware ID | Windows alignment More...
Yashied Posted April 30, 2009 Posted April 30, 2009 sandin, I will be curious, but that the result you want? My UDFs: iKey | FTP Uploader | Battery Checker | Boot Manager | Font Viewer | UDF Keyword Manager | Run Dialog Replacement | USBProtect | 3D Axis | Calculator | Sleep | iSwitcher | TM | NetHelper | File Types Manager | Control Viewer | SynFolders | DLL Helper Animated Tray Icons UDF Library | Hotkeys UDF Library | Hotkeys Input Control UDF Library | Caret Shape UDF Library | Context Help UDF Library | Most Recently Used List UDF Library | Icons UDF Library | FTP UDF Library | Script Communications UDF Library | Color Chooser UDF Library | Color Picker Control UDF Library | IPHelper (Vista/7) UDF Library | WinAPI Extended UDF Library | WinAPIVhd UDF Library | Icon Chooser UDF Library | Copy UDF Library | Restart UDF Library | Event Log UDF Library | NotifyBox UDF Library | Pop-up Windows UDF Library | TVExplorer UDF Library | GuiHotKey UDF Library | GuiSysLink UDF Library | Package UDF Library | Skin UDF Library | AITray UDF Library | RDC UDF Library Appropriate path | Button text color | Gaussian random numbers | Header's styles (Vista/7) | ICON resource enumeration | Menu & INI | Tabbed string size | Tab's skin | Pop-up circular menu | Progress Bar without animation (Vista/7) | Registry export | Registry path jumping | Unique hardware ID | Windows alignment More...
sandin Posted April 30, 2009 Author Posted April 30, 2009 I'm making a script that will be able to control my PC over my remote control, so when I press a key on my remote control, my PC will perform certain command. (I already linked those two, and that's fully working) I would like my script to be able to send msges to other windows, like winamp for example, and send certain msg,wparam,lparam for switching the track, changing volume etc... (I know there is already winamp UDF, but I want this option to be available for all applications, not only winamp) (sending msges is also working, and I have no issues with this) in order to find out which msg does what in desired window I need to hook window and all his msges, but I dunno how to do so. Some cool glass and image menu | WinLIRC remote controler | Happy Holidays to all... | Bounce the sun, a game in which you must save the sun from falling by bouncing it back into the sky | Hook Leadtek WinFast TV Card Remote Control Msges | GDI+ sliding toolbar | MIDI Keyboard (early alpha stage, with lots of bugs to fix) | Alt+Tab replacement | CPU Benchmark with pretty GUI | Ini Editor - Edit/Create your ini files with great ease | Window Manager (take total control of your windows) Pretty GUI! | Pop-Up window from a button | Box slider for toolbar | Display sound volume on desktop | Switch hotkeys with mouse scroll
Yashied Posted April 30, 2009 Posted April 30, 2009 I'm making a script that will be able to control my PC over my remote control, so when I press a key on my remote control, my PC will perform certain command. (I already linked those two, and that's fully working)I would like my script to be able to send msges to other windows, like winamp for example, and send certain msg,wparam,lparam for switching the track, changing volume etc... (I know there is already winamp UDF, but I want this option to be available for all applications, not only winamp) (sending msges is also working, and I have no issues with this)in order to find out which msg does what in desired window I need to hook window and all his msges, but I dunno how to do so.Thank you. Excellent idea. But I think that the analysis of messages by means of hook hardly a difficult task and it is unlikely that this will be justified. I am sure that your idea can be realized without using a hook. I think better to use the emulation of key presses, because most players support hot keys. But in any case, you know what to do.Thanks again. My UDFs: iKey | FTP Uploader | Battery Checker | Boot Manager | Font Viewer | UDF Keyword Manager | Run Dialog Replacement | USBProtect | 3D Axis | Calculator | Sleep | iSwitcher | TM | NetHelper | File Types Manager | Control Viewer | SynFolders | DLL Helper Animated Tray Icons UDF Library | Hotkeys UDF Library | Hotkeys Input Control UDF Library | Caret Shape UDF Library | Context Help UDF Library | Most Recently Used List UDF Library | Icons UDF Library | FTP UDF Library | Script Communications UDF Library | Color Chooser UDF Library | Color Picker Control UDF Library | IPHelper (Vista/7) UDF Library | WinAPI Extended UDF Library | WinAPIVhd UDF Library | Icon Chooser UDF Library | Copy UDF Library | Restart UDF Library | Event Log UDF Library | NotifyBox UDF Library | Pop-up Windows UDF Library | TVExplorer UDF Library | GuiHotKey UDF Library | GuiSysLink UDF Library | Package UDF Library | Skin UDF Library | AITray UDF Library | RDC UDF Library Appropriate path | Button text color | Gaussian random numbers | Header's styles (Vista/7) | ICON resource enumeration | Menu & INI | Tabbed string size | Tab's skin | Pop-up circular menu | Progress Bar without animation (Vista/7) | Registry export | Registry path jumping | Unique hardware ID | Windows alignment More...
sandin Posted April 30, 2009 Author Posted April 30, 2009 ya, that is true, about hotkeys in players, but there's one issue, the player window must be active one for those hotkeys to work, and if I'm for example running some audio player, and have game running in fullscreen on my PC then the hotkey wouldn't work.It would be great if someone could show me an example of receiving other window msges without hooking them.anyway, I tried this:#Include <WinAPI.au3> #Include <WindowsConstants.au3> #include <_RegisterClassEx.au3> Run("winmine.exe") WinWait("Minesweeper") WinActivate("Minesweeper") $win_handle = WinGetHandle("Minesweeper") $class = _WinAPI_GetClassName($win_handle) ConsoleWrite("win title: " & WinGetTitle($win_handle) & @CRLF & _ "win handle: " & $win_handle & @CRLF & _ "win class: " & $class & @CRLF) _WinAPI_RegisterClassEx($class, "WindowCallback", 0, 0, 0xFF0000, $CS_DEFAULTSTYLE) ;~ $hWnd = _WinAPI_CreateWindowEx(0, $class, "title", $WS_OVERLAPPEDWINDOW, 100, 100, 400, 300, 0) ;~ _WinAPI_ShowWindow($hWnd) While 1 Sleep(10) WEnd Func WindowCallback($hWnd, $iMsg, $wParam, $lParam) TrayTip("", $iMsg & @CRLF & $wParam & @CRLF & $lParam, 10) ;~ Sleep(1000) Switch $iMsg Case $WM_CLOSE _WinAPI_UnregisterClass($class) Exit EndSwitch Return _WinAPI_DefWindowProc($hWnd, $iMsg, $wParam, $lParam) EndFunctried to hook win's class, but u'll need this: RegisterClass Some cool glass and image menu | WinLIRC remote controler | Happy Holidays to all... | Bounce the sun, a game in which you must save the sun from falling by bouncing it back into the sky | Hook Leadtek WinFast TV Card Remote Control Msges | GDI+ sliding toolbar | MIDI Keyboard (early alpha stage, with lots of bugs to fix) | Alt+Tab replacement | CPU Benchmark with pretty GUI | Ini Editor - Edit/Create your ini files with great ease | Window Manager (take total control of your windows) Pretty GUI! | Pop-Up window from a button | Box slider for toolbar | Display sound volume on desktop | Switch hotkeys with mouse scroll
WideBoyDixon Posted May 1, 2009 Posted May 1, 2009 I you want to be able to peek at windows messages being sent to other applications/windows then you need to install a global hook. However, this hook procedure *must* reside in a DLL so that it can be injected in to the application's process space (I believe). I could write a C++ DLL that allows you to hook windows messages but I would need to know which messages you want to receive information on. There's plenty of code on CodeProject and CodeGuru about doing it as well so perhaps you could take a look there. WBD [center]Wide by name, Wide by nature and Wide by girth[u]Scripts[/u]{Hot Folders} {Screen Calipers} {Screen Crosshairs} {Cross-Process Subclassing} {GDI+ Clock} {ASCII Art Signatures}{Another GDI+ Clock} {Desktop Goldfish} {Game of Life} {3D Pie Chart} {Stock Tracker}[u]UDFs[/u]{_FileReplaceText} {_ArrayCompare} {_ToBase}~ My Scripts On Google Code ~[/center]
sandin Posted May 1, 2009 Author Posted May 1, 2009 (edited) You would do that for me? I would like that very much (since I have no skills in other prog. languages) ok here's what I need. For example I hook winamp, and when I press "play" button on winamp, the hook program retrieves code: 40045 ,which stands for "play" function in winamp which I can use with: DllCall("user32.dll", "int", "SendMessage", "hwnd", WinGetHandle("[CLASS:Winamp v1.x]"), "int", $WM_COMMAND, "int", 40045, "int", 0) ;PLAY func. in winamp Those are general messages (which you can get on au3 windows with GUIGetMsg() func.), but for WinFast PVR (my TV card application), it's always the same message, but different wparam, so I guess I need a hook window that can retrieve all 3, message, wparam and lparam from other windows. I would like to be able to find out which message stands for play/pause/stop etc.. for VLC player, maybe BSPlayer, Windows Media Player, or even Media Player Clasic, etc... Edited May 1, 2009 by sandin Some cool glass and image menu | WinLIRC remote controler | Happy Holidays to all... | Bounce the sun, a game in which you must save the sun from falling by bouncing it back into the sky | Hook Leadtek WinFast TV Card Remote Control Msges | GDI+ sliding toolbar | MIDI Keyboard (early alpha stage, with lots of bugs to fix) | Alt+Tab replacement | CPU Benchmark with pretty GUI | Ini Editor - Edit/Create your ini files with great ease | Window Manager (take total control of your windows) Pretty GUI! | Pop-Up window from a button | Box slider for toolbar | Display sound volume on desktop | Switch hotkeys with mouse scroll
sandin Posted May 2, 2009 Author Posted May 2, 2009 sry to bring this topc up, but I found something useful.this is something I need:something like that "Microsoft Spy++" which can log WM_COMMAND messages.however I don't have Visual studio C++, therefore I don't have that tool on my PC. Some cool glass and image menu | WinLIRC remote controler | Happy Holidays to all... | Bounce the sun, a game in which you must save the sun from falling by bouncing it back into the sky | Hook Leadtek WinFast TV Card Remote Control Msges | GDI+ sliding toolbar | MIDI Keyboard (early alpha stage, with lots of bugs to fix) | Alt+Tab replacement | CPU Benchmark with pretty GUI | Ini Editor - Edit/Create your ini files with great ease | Window Manager (take total control of your windows) Pretty GUI! | Pop-Up window from a button | Box slider for toolbar | Display sound volume on desktop | Switch hotkeys with mouse scroll
rover Posted May 2, 2009 Posted May 2, 2009 (edited) sry to bring this topc up, but I found something useful.this is something I need:something like that "Microsoft Spy++" which can log WM_COMMAND messages.however I don't have Visual studio C++, therefore I don't have that tool on my PC.Winspector - hooks messageshttp://www.windows-spy.com/WinSpy++http://www.catch22.net/software/winspyEdit: removed quoted images Edited May 2, 2009 by rover I see fascists...
WideBoyDixon Posted May 5, 2009 Posted May 5, 2009 OK. I think I've found a suitable workaround. First of all you need to download this package: http://allapi.mentalis.org/vbexamples/vbex...xample=DSSUBCLSUnzip dssubcls.dll in to the same folder as your script. You can then use it to "subclass" any other window. My example in Notepad:expandcollapse popup#include <WindowsConstants.au3> #include <GuiListbox.au3> Global $hList _Main() Exit Func _Main() Local $hGUI = GUICreate("Subclass", 400, 400) Local $cList = GUICtrlCreateList("", 8, 8, 384, 384, BitOR($WS_BORDER, $WS_VSCROLL)) GUISetState() $hList = GUICtrlGetHandle($cList) Local $hDSSUBCLS = DllOpen("dssubcls.dll") Run("Notepad.exe") WinWait("[CLASS:Notepad]") Local $hNotepad = WinGetHandle("[CLASS:Notepad]") Local $hCallback = DllCallbackRegister("_MyCallback", "long", "long;long;long") Local $aRet = DllCall($hDSSUBCLS, "long", "SubClass", "hwnd", $hNotepad, "ptr", DllCallbackGetPtr($hCallback), "long", 0, "long", 0, "long", 0, "long", 1) $aRet = DllCall($hDSSUBCLS, "long", "UseSendMessage", "long", 1) While GUIGetMsg() <> -3 Sleep(100) WEnd DllClose($hDSSUBCLS) GUIDelete() EndFunc ;==>_Main Func _MyCallback($uiMsg, $wParam, $lParam) Switch $uiMsg Case $WM_COMMAND If $lParam = 0 Then _GUICtrlListBox_AddString($hList, "WM_COMMAND(" & $wParam & "," & $lParam & ")") EndIf EndSwitch Return 0 EndFunc ;==>_MyCallbackSelecting a menu item from Notepad puts a message in to the list box. Should work for other windows and applications too although I'm not sure what will happen under Vista/Windows7 and whether you're allowed to do this.Hope this helps.WBD [center]Wide by name, Wide by nature and Wide by girth[u]Scripts[/u]{Hot Folders} {Screen Calipers} {Screen Crosshairs} {Cross-Process Subclassing} {GDI+ Clock} {ASCII Art Signatures}{Another GDI+ Clock} {Desktop Goldfish} {Game of Life} {3D Pie Chart} {Stock Tracker}[u]UDFs[/u]{_FileReplaceText} {_ArrayCompare} {_ToBase}~ My Scripts On Google Code ~[/center]
sandin Posted May 5, 2009 Author Posted May 5, 2009 man, that was amazing, I really love what you did there. the hooked application works a little slower, but being able to get it's command messages is really amazing. you should consider posting this into examples, I'm sure it'll get attention of many. Some cool glass and image menu | WinLIRC remote controler | Happy Holidays to all... | Bounce the sun, a game in which you must save the sun from falling by bouncing it back into the sky | Hook Leadtek WinFast TV Card Remote Control Msges | GDI+ sliding toolbar | MIDI Keyboard (early alpha stage, with lots of bugs to fix) | Alt+Tab replacement | CPU Benchmark with pretty GUI | Ini Editor - Edit/Create your ini files with great ease | Window Manager (take total control of your windows) Pretty GUI! | Pop-Up window from a button | Box slider for toolbar | Display sound volume on desktop | Switch hotkeys with mouse scroll
wolf9228 Posted May 5, 2009 Posted May 5, 2009 expandcollapse popup#include <WinAPI.au3> #include <WindowsConstants.au3> #include <StructureConstants.au3> HotKeySet("{ESC}","close") Opt("OnExitFunc", "endscript") Global $typedefstruct = "hwnd HWND;int message;int wParam;int lParam;int time;ptr pt" $hWnd = GUICreate("") $nCtrlID = GUICtrlCreateButton("",2,2,100,100) GUISetState() $iPID = Run("winmine.exe") WinWait("Minesweeper") WinActivate("Minesweeper") $ThreadID = _WinAPI_GetWindowThreadProcessId(_WinAPI_GetForegroundWindow(), $iPID) ; @error ------ _WinAPI_SetWindowsHookEx $hStub_KeyProc = DllCallbackRegister("GetMsgProc", "long", "int;wparam;lparam") $hmod = _WinAPI_GetModuleHandle(0) $hHook = _WinAPI_SetWindowsHookEx($WH_GETMESSAGE , DllCallbackGetPtr($hStub_KeyProc), $hmod,_WinAPI_GetCurrentThreadId()) TrayTip("", "I should be able to hook msges now", 10) dim $M , $W , $L , $T , $X , $Y,$H While 1 Sleep(10) TrayTip("","HWND ==>" & $H & @CRLF & "message ==>" & $M & @CRLF & "wParam ==>" & $W & @CRLF & "lParam ==>" & $L & @CRLF _ & "time ==>" & $T & @CRLF , 10) WEnd Func GetMsgProc($nCode,$wParam,$lParam) $PMSG = DllStructCreate($typedefstruct, $lParam) $H = DllStructGetData($PMSG,"HWND") $M = DllStructGetData($PMSG,"message") $W = DllStructGetData($PMSG,"wParam") $L = DllStructGetData($PMSG,"lParam") $T = DllStructGetData($PMSG,"time") Return _WinAPI_CallNextHookEx($hHook, $nCode, $wParam, $lParam) EndFunc Func close() Exit EndFunc Func endscript() _WinAPI_UnhookWindowsHookEx($hHook ) DllCallbackFree($hStub_KeyProc) EndFunc صرح السماء كان هنا
WideBoyDixon Posted May 5, 2009 Posted May 5, 2009 That's great if you want to hook windows in the current thread. Not much use for peeking at messages in other processes though WBD [center]Wide by name, Wide by nature and Wide by girth[u]Scripts[/u]{Hot Folders} {Screen Calipers} {Screen Crosshairs} {Cross-Process Subclassing} {GDI+ Clock} {ASCII Art Signatures}{Another GDI+ Clock} {Desktop Goldfish} {Game of Life} {3D Pie Chart} {Stock Tracker}[u]UDFs[/u]{_FileReplaceText} {_ArrayCompare} {_ToBase}~ My Scripts On Google Code ~[/center]
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now