一些恶搞程序的原理

来源:百度知道 编辑:UC知道 时间:2024/05/16 19:34:05
今天朋友发了个EXE文件给我 打开是一个全屏的程序 必须输入一些“我是猪”之类的文字才能退出,程序打开后不能用ALT+TAB转换另一程序,按WIN键只弹出开始菜单,没有任务栏,CTRL+ALT+DEL也不能弹出任务管理器,ALT+F4也关不了程序
最后只能在开始了注销或者重启才行,我想知道这类软件到底是什么原理,是如何做到这样的
一楼的答案还可以 但是我希望再详细点点
例如截取任务管理器是怎样写的代码?

如果是VC编写的话,运行的时候在程序中判断
IF("我是猪" ==STRING)
{
//程序具体操作部分;
}
至于快捷键不能达到预期目的,应该是用HOOK的方法将所有键值截取,然后在重新处理。
HOOK钩子程序示例,我自己也不懂哈。
.编写一个屏屏蔽所有进程和所有线程的钩子程序。耸闭飧龉匙颖匦氚沧霸贒LL中,然后被某个程序调用才行。
1.新建一个DLL工程名为Hook
2.增加Hook.cpp
3.代码如下:
#include <windows.h>包含头文件

HHOOK g_hMouse=NULL;
HHOOK g_hKeyboard=NULL;

#pragma data_seg("MySec")新建了一个节,用于将下 面的这个变量设为全局共享。
HWND g_hWnd=NULL;这个变量是全局共享的。
#pragma data_seg()

//#pragma comment(linker,"/section:MySec,RWS")
/*HINSTANCE g_hInst;

BOOL WINAPI DllMain(
HINSTANCE hinstDLL, // handle to the DLL module
DWORD fdwReason, // reason for calling function
LPVOID lpvReserved // reserved
)
{
g_hInst=hinstDLL;
}*/

LRESULT CALLBACK MouseProc(
int nCode, // hook code
WPARAM wParam, // message identifier
LPARAM lParam // mou