亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? winlockdll.c

?? 鍵盤鎖
?? C
字號(hào):
/***********************************************************************
 * WinLockDLL - Library containing functions to Lock Desktop, Taskbar, *
 *              and disable Ctrl+Alt+Del and task switching keys.      *
 *                                                                     *
 * (c) A. Miguel Feij鉶, 1/12/2004                                     *
 ***********************************************************************/

#define     WIN32_LEAN_AND_MEAN
#define     _WIN32_WINNT 0x0400

#include    <windows.h>
#include    <stdlib.h>
#include    "winlockdll.h"
#include    "inject.h"

#define     PROGRAM_MANAGER "Program Manager"	// Program manager window name
#define     TASKBAR         "Shell_TrayWnd"		// Taskbar class name
#define     ID_STARTBUTTON  0x130				// Start button ID
#define     ID_TRAY         0x12F				// System tray ID
#define     ID_CLOCK        0x12F				// System clock ID

HHOOK		hHook;          // Mouse hook
HINSTANCE	hInst;		    // Instance handle

/*************************
 * Mouse Hook procedure. *
 * (Win 9x)              *
 *************************/
LRESULT CALLBACK MouseHookProc(int nCode, WORD wParam, DWORD lParam) 
{
	if(nCode >= 0)
	{
        if (wParam == WM_LBUTTONDBLCLK)
        {
            if (((MOUSEHOOKSTRUCT *)lParam)->hwnd == GetDesktopWindow())
            {
                return 1;
            }
        }
	}

    return CallNextHookEx(hHook, nCode, wParam, lParam); 
} 


/***********************************
 * Low Level Mouse Hook procedure. *
 * (Win NT4SP3+)                   *
 ***********************************/
LRESULT CALLBACK LowLevelMouseHookProc(int nCode, WORD wParam, DWORD lParam) 
{
	PMSLLHOOKSTRUCT p = (PMSLLHOOKSTRUCT)lParam;
	HWND hWnd = WindowFromPoint(p->pt);

	if(nCode >= 0)
	{
        if ((wParam == WM_LBUTTONDOWN || wParam == WM_RBUTTONDOWN) && hWnd == GetDesktopWindow())
        {
			return 1;
        }
	}

    return CallNextHookEx(hHook, nCode, wParam, lParam); 
} 


/*************************
 * Hide/Show Desktop.    *
 * TRUE=Show, FALSE=Hide * 
 * (Win9x/NT/2K/XP)      *
 *************************/
int DLL_EXP_IMP WINAPI Desktop_Show_Hide(BOOL bShowHide)
{
	OSVERSIONINFO	osvi;
	BOOL			bIsWindowsNT4SP3orLater;
	int				iServicePack;
	char           *p;

	// Determine the current windows version
	osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
	GetVersionEx(&osvi);
	for (p = osvi.szCSDVersion; *p  && !isdigit(*p); *p++);
	iServicePack = atoi(p); 
	bIsWindowsNT4SP3orLater = (osvi.dwPlatformId == VER_PLATFORM_WIN32_NT) && 
		                      (((osvi.dwMajorVersion == 4) && (iServicePack >= 3)) || 
						      (osvi.dwMajorVersion > 4));

    if (!bShowHide)
    {
        if (!hHook)
		{
            hHook  = SetWindowsHookEx(bIsWindowsNT4SP3orLater ? WH_MOUSE_LL : WH_MOUSE, 
									  bIsWindowsNT4SP3orLater ? (HOOKPROC)LowLevelMouseHookProc : (HOOKPROC)MouseHookProc, 
                                      hInst, 
                                      0);
			if (!hHook)
				return 0;
		}
    }
    else
    {
        UnhookWindowsHookEx(hHook);
        hHook = NULL;
    }

    return SetWindowPos(FindWindow(NULL, PROGRAM_MANAGER),
                        NULL,
                        0, 0, 0, 0,
                        bShowHide ? SWP_SHOWWINDOW : SWP_HIDEWINDOW | SWP_NOSIZE | SWP_NOMOVE | SWP_NOZORDER);
}


/***************************
 * Hide/Show Start Button. *
 * TRUE=Show, FALSE=Hide   * 
 * (Win9x/NT/2K/XP)        *
 ***************************/
int DLL_EXP_IMP WINAPI StartButton_Show_Hide(BOOL bShowHide)
{
    HWND    hWnd;

    hWnd = GetDlgItem(FindWindow(TASKBAR, NULL), ID_STARTBUTTON);
    if (hWnd == NULL)
        return 0;

    ShowWindow(hWnd, bShowHide ? SW_SHOW : SW_HIDE);
    UpdateWindow(hWnd);

    return 1;
}


/*************************
 * Hide/Show Taskbar.    *
 * TRUE=Show, FALSE=Hide * 
 * (Win9x/NT/2K/XP)      *
 *************************/
int DLL_EXP_IMP WINAPI Taskbar_Show_Hide(BOOL bShowHide)
{
    HWND    hWnd;

    hWnd = FindWindow(TASKBAR, NULL);
    if (hWnd == NULL)
        return 0;

    ShowWindow(hWnd, bShowHide ? SW_SHOW : SW_HIDE);
    UpdateWindow(hWnd);

    return 1;
}


/***************************
 * Hide/Show System Clock. *
 * TRUE=Show, FALSE=Hide   * 
 * (Win9x/NT/2K/XP)        *
 ***************************/
int DLL_EXP_IMP WINAPI Clock_Show_Hide(BOOL bShowHide)
{
    HWND    hWnd;

    hWnd = GetDlgItem(FindWindow(TASKBAR, NULL), ID_TRAY);
	hWnd = GetDlgItem(hWnd, ID_CLOCK);
    if (hWnd == NULL)
        return 0;

    ShowWindow(hWnd, bShowHide ? SW_SHOW : SW_HIDE);
    UpdateWindow(hWnd);

    return 1;
}


/************************************************************
 * Enable/Disable special keys.                             *
 * (Ctrl+Alt+Del, Alt+Tab, Alt+Esc, Ctrl+Esc, Win key, ...) *
 * TRUE=Enable, FALSE=Disable                               * 
 * (Win 9x)                                                 *
 ************************************************************/
int DLL_EXP_IMP  WINAPI Keys_Enable_Disable(BOOL bEnableDisable)
{
    BOOL    bOldState;

    return SystemParametersInfo(SPI_SETSCREENSAVERRUNNING, bEnableDisable ? FALSE : TRUE, &bOldState, 0);
}


/************************************
 * Enable/Disable Alt+Tab, Alt+Esc. *
 * TRUE=Enable, FALSE=Disable       * 
 * ( Win ?)                         *
 ************************************/
int DLL_EXP_IMP WINAPI AltTab1_Enable_Disable(BOOL bEnableDisable)
{
    BOOL    bOldState;

    return SystemParametersInfo(SPI_SETFASTTASKSWITCH, bEnableDisable ? FALSE : TRUE, &bOldState, 0);
}


/************************************
 * Enable/Disable Alt+Tab, Alt+Esc. *
 * TRUE=Enable, FALSE=Disable       * 
 * (Win 2K)                         *
 ************************************/
int DLL_EXP_IMP WINAPI AltTab2_Enable_Disable(HWND hWnd, BOOL bEnableDisable)
{
    #define m_nHotKeyID 100

    if (!bEnableDisable)
	{
		if (!RegisterHotKey(hWnd, m_nHotKeyID+0, MOD_ALT, VK_TAB))		// Alt+Tab
			return 0;
        if (!RegisterHotKey(hWnd, m_nHotKeyID+1, MOD_ALT, VK_ESCAPE))	// Alt+Esc
			return 0;
    }
	else
	{
        if (!UnregisterHotKey(hWnd, m_nHotKeyID+0))
			return 0;
        if (!UnregisterHotKey(hWnd, m_nHotKeyID+1))
			return 0;
	}
	return 1;
}


/**************************************
 * Low Level Keyboard Hook procedure. *
 * (Win NT4SP3+)                      *
 **************************************/

HHOOK hKeyboardHook;  // Old low level keyboard hook 

LRESULT CALLBACK LowLevelKeyboardProc(int nCode, WPARAM wParam, LPARAM lParam) 
{
    PKBDLLHOOKSTRUCT p;

    if (nCode == HC_ACTION) 
    {
        p = (PKBDLLHOOKSTRUCT) lParam;

        if (
            // WIN key (for Start Menu)
            ((p->vkCode == VK_LWIN) || (p->vkCode == VK_RWIN)) ||       
            // ALT+TAB
            (p->vkCode == VK_TAB && p->flags & LLKHF_ALTDOWN) ||       
            // ALT+ESC
            (p->vkCode == VK_ESCAPE && p->flags & LLKHF_ALTDOWN) ||    
            // CTRL+ESC
            ((p->vkCode == VK_ESCAPE) && ((GetAsyncKeyState(VK_CONTROL) & 0x8000) != 0)) ||
            // CTRL+SHIFT+ESC
            ((p->vkCode == VK_ESCAPE) && ((GetAsyncKeyState(VK_CONTROL) & 0x8000) != 0) && ((GetAsyncKeyState(VK_SHIFT) & 0x8000) != 0)) ||
			// CTRL+ALT+DEL (Unfortunately doesn't work !)
            ((p->vkCode == VK_DELETE) && ( (p->flags & LLKHF_ALTDOWN) != 0 ) && ( (GetAsyncKeyState(VK_CONTROL) & 0x8000) != 0))
            )
            return 1;
   }
                    
   return CallNextHookEx(hKeyboardHook, nCode, wParam, lParam);
}


/*****************************************************
 * Enable/Disable task switching keys.               *
 * (Alt+Tab, Alt+Esc, Ctrl+Esc, Win, Ctrl+Shift+Esc) *
 * TRUE=Enable, FALSE=Disable                        *
 * (Win NT4SP3+, Win2K).                             *
 *****************************************************/
int DLL_EXP_IMP WINAPI TaskSwitching_Enable_Disable(BOOL bEnableDisable)
{
    if (!bEnableDisable)
    {
        if (!hKeyboardHook)
		{
            // Install the low-level keyboard hook
            hKeyboardHook  = SetWindowsHookEx(WH_KEYBOARD_LL, 
                                              LowLevelKeyboardProc, 
                                              hInst, 
                                              0);
			if (!hKeyboardHook)
				return 0;
		}
    }
    else
    {
        UnhookWindowsHookEx(hKeyboardHook);
        hKeyboardHook = NULL;
    }

    return 1;
}


/****************************************
 * Disable Task Manager (CTRL+ALT+DEL). *
 * TRUE=Enable, FALSE=Disable           *
 * (Win NT/2K/XP)                       *
 ****************************************/
int DLL_EXP_IMP WINAPI TaskManager_Enable_Disable(BOOL bEnableDisable)
{
    #define KEY_DISABLETASKMGR  "Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System"
    #define VAL_DISABLETASKMGR  "DisableTaskMgr"

    HKEY    hKey;
    DWORD   val;
	LONG	r;

    if (RegOpenKey(HKEY_CURRENT_USER, KEY_DISABLETASKMGR, &hKey) != ERROR_SUCCESS)
        if (RegCreateKey(HKEY_CURRENT_USER, KEY_DISABLETASKMGR, &hKey) != ERROR_SUCCESS)
			return 0;

    if (bEnableDisable) // Enable
    {
        r = RegDeleteValue(hKey, VAL_DISABLETASKMGR);
    }
    else                // Disable
    {
        val = 1;
        r = RegSetValueEx(hKey, VAL_DISABLETASKMGR, 0, REG_DWORD, (BYTE *)&val, sizeof(val));
    }

    RegCloseKey(hKey);

    return (r == ERROR_SUCCESS ? 1 : 0);
}


/*****************************************************************
 * Enable/Disable Ctrl+Alt+Del and Ctrl+Shift+Esc key sequences. *
 * TRUE=Enable, FALSE=Disable                                    *
 * (Win 2K).                                                     *
 *****************************************************************/
int DLL_EXP_IMP WINAPI CtrlAltDel_Enable_Disable(BOOL bEnableDisable)
{
	static BOOL bInjected = FALSE;

    if (!bEnableDisable)
    {
		if (!bInjected)
		{
			bInjected = Inject();
			return bInjected;
		}
    }
    else
    {
		if (bInjected)
		{
			bInjected = !Eject();
			return !bInjected;
		}
    }

    return 0;
}


/******************************
 * Create and start a thread. *
 ******************************/
BOOL StartThread(LPTHREAD_START_ROUTINE ThreadFunc, THREAD_DATA *td)
{
	ULONG	tid;
	HANDLE	hThread;

	// Create and start thread
	hThread = CreateThread(NULL,
						   0,
						   ThreadFunc,
						   td,
						   0,
						   &tid);

	if (!hThread)
		return FALSE;

	// Wait until thread terminates
	WaitForSingleObject(hThread, INFINITE);

	CloseHandle(hThread);

	return TRUE;

}


/************************************************
 * Create a new Desktop and run a Thread in it. *
 * (Win NT+).                                   *
 ************************************************/
int DLL_EXP_IMP WINAPI Thread_Desktop(LPTHREAD_START_ROUTINE ThreadFunc, THREAD_DATA *td)
{
	HDESK	hOriginalThread;
	HDESK	hOriginalInput;
	HDESK	hNewDesktop;

	// Save original ...
	hOriginalThread = GetThreadDesktop(GetCurrentThreadId());
	hOriginalInput = OpenInputDesktop(0, FALSE, DESKTOP_SWITCHDESKTOP);

	// Create a new Desktop and switch to it
	hNewDesktop = CreateDesktop(td->szDesktopName, NULL, NULL, 0, GENERIC_ALL, NULL);
	SetThreadDesktop(hNewDesktop);
	SwitchDesktop(hNewDesktop);

	// Execute thread in new desktop
	td->hDesk = hNewDesktop;
	StartThread(ThreadFunc, td);

	// Restore original ...
	SwitchDesktop(hOriginalInput);
	SetThreadDesktop(hOriginalThread);

	// Close the Desktop
	CloseDesktop(hNewDesktop);

	return 0;
}



/****************
 * Run process. *
 ****************/
BOOL StartProcess(char *szDesktopName, char *szPath)
{
    STARTUPINFO         si;
    PROCESS_INFORMATION pi;

    // Zero these structs
    ZeroMemory(&si, sizeof(si));
    si.cb = sizeof(si);
	si.lpTitle = szDesktopName;
	si.lpDesktop = szDesktopName;
    ZeroMemory(&pi, sizeof(pi));

    // Start the child process
    if (!CreateProcess(NULL,    // No module name (use command line). 
                       szPath,  // Command line. 
                       NULL,    // Process handle not inheritable. 
                       NULL,    // Thread handle not inheritable. 
                       FALSE,   // Set handle inheritance to FALSE. 
                       0,       // No creation flags. 
                       NULL,    // Use parent's environment block. 
                       NULL,    // Use parent's starting directory. 
                       &si,     // Pointer to STARTUPINFO structure.
                       &pi))    // Pointer to PROCESS_INFORMATION structure.
    {
        return FALSE;
    }

	// Wait until process exits
	WaitForSingleObject(pi.hProcess, INFINITE);

    // Close process and thread handles
    CloseHandle(pi.hProcess);
    CloseHandle(pi.hThread);

	return TRUE;
}


/*************************************************
 * Create a new Desktop and run a Process in it. *
 * (Win NT+).                                    *
 *************************************************/
int DLL_EXP_IMP WINAPI Process_Desktop(char *szDesktopName, char *szPath)
{
	HDESK	hOriginalThread;
	HDESK	hOriginalInput;
	HDESK	hNewDesktop;

	// Save original ...
	hOriginalThread = GetThreadDesktop(GetCurrentThreadId());
	hOriginalInput = OpenInputDesktop(0, FALSE, DESKTOP_SWITCHDESKTOP);

	// Create a new Desktop and switch to it
	hNewDesktop = CreateDesktop(szDesktopName, NULL, NULL, 0, GENERIC_ALL, NULL);
	SetThreadDesktop(hNewDesktop);
	SwitchDesktop(hNewDesktop);

	// Execute process in new desktop
	StartProcess(szDesktopName, szPath);

	// Restore original ...
	SwitchDesktop(hOriginalInput);
	SetThreadDesktop(hOriginalThread);

	// Close the Desktop
	CloseDesktop(hNewDesktop);

	return 0;
}


/************************
 * Library entry point. *
 ************************/
BOOL WINAPI DllMain(HINSTANCE hInstDll, DWORD fdwReason, LPVOID lpReserved)
{
    hInst = hInstDll;

	return TRUE;
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕欧美三区| 国产精品黄色在线观看| a级高清视频欧美日韩| 亚洲国产aⅴ成人精品无吗| 亚洲精品一区二区精华| 欧美日韩一区二区在线视频| 国产一区二区三区四区五区入口 | 99久久精品99国产精品 | 99久久精品免费看| 久久成人久久爱| 一区二区欧美视频| 国产欧美综合在线观看第十页| 欧美私人免费视频| www.欧美色图| 美国三级日本三级久久99 | 成人在线一区二区三区| 青青草国产成人av片免费| 亚洲色图第一区| 国产视频在线观看一区二区三区| 欧美一区二区三区系列电影| 欧美又粗又大又爽| av在线不卡网| 成人av免费在线观看| 国产一区二区三区久久久| 日本视频一区二区| 视频一区二区三区在线| 伊人色综合久久天天| 中文字幕中文字幕一区二区| 久久久久久综合| 欧美精品一区二区三区蜜桃 | 欧美一级在线视频| 欧美日韩国产高清一区二区| 91在线免费播放| 不卡av电影在线播放| 国产风韵犹存在线视精品| 经典三级视频一区| 久久狠狠亚洲综合| 蜜桃视频一区二区| 久久国内精品视频| 蜜桃在线一区二区三区| 久久精品免费观看| 黄色小说综合网站| 国产风韵犹存在线视精品| 国产精品99久| 粉嫩嫩av羞羞动漫久久久| 成人免费不卡视频| 99久久免费精品| 色哟哟精品一区| 91视频观看视频| 欧美自拍丝袜亚洲| 欧美日韩亚洲另类| 欧美肥大bbwbbw高潮| 91精品在线一区二区| 日韩一二三区视频| 久久综合久色欧美综合狠狠| 久久天堂av综合合色蜜桃网| 久久精子c满五个校花| 国产精品视频麻豆| 国产精品高清亚洲| 一二三四区精品视频| 亚洲二区视频在线| 精品一区二区三区久久久| 国产精品99久久久久久似苏梦涵| av高清不卡在线| 欧美吻胸吃奶大尺度电影| 欧美一区二区视频在线观看| 精品电影一区二区| 亚洲欧洲国产日韩| 亚洲成人在线网站| 国产中文字幕精品| 99国产精品99久久久久久| 在线观看日韩精品| 日韩欧美专区在线| 国产精品三级电影| 一区二区日韩av| 久久99国内精品| 99国产精品一区| 日韩一级二级三级| 最新日韩在线视频| 91国产成人在线| 欧美一区二区三区播放老司机| 26uuu国产一区二区三区| 日韩一区欧美小说| 日韩av在线发布| 成人美女视频在线观看| 欧美猛男男办公室激情| 久久奇米777| 亚洲午夜久久久久| 国产福利一区二区三区| 欧美综合视频在线观看| 国产亚洲一区二区三区| 亚洲大片一区二区三区| 国产成人综合亚洲91猫咪| 欧美色综合网站| 欧美激情一区二区在线| 日韩二区三区在线观看| 成a人片国产精品| 日韩欧美高清一区| 夜夜精品视频一区二区| 国产一区二区三区在线观看免费| 欧美日韩一区二区三区四区| 久久久亚洲综合| 日韩av高清在线观看| 91色婷婷久久久久合中文| 久久九九久久九九| 裸体歌舞表演一区二区| 欧美在线观看禁18| 国产精品久久久久精k8| 极品少妇xxxx精品少妇| 欧美日韩国产不卡| 亚洲免费av高清| 成人手机在线视频| 精品国产a毛片| 天堂成人国产精品一区| 日本韩国精品在线| √…a在线天堂一区| 黄页视频在线91| 日韩三级免费观看| 天天影视网天天综合色在线播放| 色哟哟国产精品免费观看| 中文字幕制服丝袜一区二区三区| 国产精品自在欧美一区| 日韩免费一区二区| 午夜在线电影亚洲一区| 色婷婷久久一区二区三区麻豆| 中文av字幕一区| 国产精品99久久久| 国产三级一区二区三区| 国产真实乱对白精彩久久| 欧美一级艳片视频免费观看| 免费看日韩a级影片| 欧美高清性hdvideosex| 香蕉成人啪国产精品视频综合网 | 欧美日韩日日骚| 亚洲午夜在线视频| 欧美久久婷婷综合色| 亚洲图片有声小说| 欧美日韩精品专区| 丝袜脚交一区二区| 欧美日韩你懂的| 青娱乐精品在线视频| 日韩欧美激情在线| 精品一区在线看| 337p日本欧洲亚洲大胆色噜噜| 国产主播一区二区三区| 欧美精彩视频一区二区三区| 国产成a人亚洲| 亚洲欧洲成人av每日更新| 91原创在线视频| 一区二区成人在线| 欧美久久久久久久久久| 日韩中文字幕不卡| 精品欧美黑人一区二区三区| 狠狠狠色丁香婷婷综合激情| 欧美激情一区二区三区全黄| 白白色亚洲国产精品| 一区二区免费视频| 在线成人免费视频| 国产一区在线观看视频| 欧美国产日韩一二三区| 91天堂素人约啪| 五月婷婷久久丁香| 久久久噜噜噜久久人人看| 成人av网站在线观看免费| 亚洲伊人色欲综合网| 日韩欧美在线123| 国产mv日韩mv欧美| 亚洲福利电影网| 欧美精品一区二| 日本乱码高清不卡字幕| 麻豆精品蜜桃视频网站| 国产精品女主播av| 欧美精品亚洲一区二区在线播放| 精品亚洲aⅴ乱码一区二区三区| 国产精品天干天干在线综合| 欧美性高清videossexo| 麻豆高清免费国产一区| 国产精品久久久久久亚洲伦| 欧洲亚洲精品在线| 韩国精品免费视频| 亚洲日本青草视频在线怡红院| 制服.丝袜.亚洲.中文.综合| 国产成人在线影院 | 不卡的av网站| 天堂va蜜桃一区二区三区| 日本一区二区动态图| 欧美日韩你懂得| 成人免费福利片| 美女一区二区视频| 亚洲精品国产精品乱码不99| 日韩精品一区二区三区视频在线观看 | 制服丝袜一区二区三区| 成人av网站在线| 久久成人综合网| 亚洲精品菠萝久久久久久久| 久久久亚洲高清| 这里只有精品视频在线观看| 成人美女视频在线看| 精品一区二区三区在线观看国产 | 久久只精品国产|