Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/****************************************************************************
PROGRAM: SECEDIT.C
PURPOSE: Displays the usrs current token and eventually allows the user to edit parts of it.
****************************************************************************/
#include "hookdll.h"
/****************************************************************************
FUNCTION: KeyboardHookProc
PURPOSE: Handles keyboard input
RETURNS: 1 if message should be discarded, 0 for normal processing
****************************************************************************/
LRESULT APIENTRY KeyboardHookProc( INT nCode, WPARAM wParam, LPARAM lParam ) { HWND hwndNotify; HWND hwndEdit;
if (nCode < 0) { return(CallNextHookEx(NULL, nCode, wParam, lParam)); }
// Is F11 being pressed ?
if ((wParam == VK_F11) && ((lParam & (1<<31)) == 0)) {
// Yes, notify our parent app
hwndNotify = FindWindow(NULL, "Security Context Editor");
hwndEdit = GetActiveWindow();
if (hwndNotify != NULL) { PostMessage(hwndNotify, WM_SECEDITNOTIFY, (WPARAM)hwndEdit, 0);
return(1); // Stop anyone else getting this key press
} else { DbgPrint("SECEDIT: Keyboard hook could not find app window\n"); } }
return(CallNextHookEx(NULL, nCode, wParam, lParam)); }
|