当前位置:编程学习 > 网站相关 >>

sethc和“666”有关的恶作剧

出处:http://hi.baidu.com/tombkeeper

上午分析程序的时候偶然想出一个恶作剧,和大家分享一下。

首先要故作神秘状,对别人说:你们知道基督教文化中,“666”是魔鬼的数字吗?打开开始菜单的“运行”,输入“sethc 666”,点确定就能看见魔鬼!



然后对方就见鬼了。

这时你可以一本正经地告诉他(其实我估计多半是“她”):要除魔很简单,用一个纯净的数字“000”即可。(如果无效,可以手工将桌面主题重新设回原来的,譬如“Windows 经典”。)

sethc.exe是用来设定和启动辅助功能的工具,Windows很奇怪地用了以三位数字来传递功能调用的设计。辅助功能中有专门为视力障碍用户而设计 的高反差大字体的视觉模式,“666”并不是原始设计中的参数,但恰好能满足了启用该模式的条件,于是就有了上面的这个小把戏。

下面是HexRays逆出来的,逻辑很简单,就不罗嗦了:
  if ( strlen(lpCmdLine) == 3 )
{
v4 = 0;
do
{
v5 = lpCmdLine[v4];
if ( v5 < 0 || v5 > 9 )
return 0;
++v4;
}
while ( v4 < 3 );
v6 = *(lpCmdLine + 1) - 0;
v7 = *(lpCmdLine + 2) - 0;
if ( *lpCmdLine != 2 )
{
if ( *lpCmdLine == 0 )
ClearHighContrast(v7);
else
SetHighContrast(v6, v7);
goto LABEL_14;
}
补充:综合编程 , 安全编程 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,