1,设置时钟检查该键值是否被修改(没必要这么做)2,启动计算机的时候检查,在run里面加一个*.vbs脚本或者*.js脚本即可,I LOVE YOU病毒就是这么做的。
解决方案 »
- list control的列能不能拆分列下有多列的
- 大量内存分配的问题
- 用MFC写编码转换程序,好心人帮我下啊!
- 棘手问题:怎样将View区域抓取为jpg图像?谢谢
- VB转学VC请前辈指点!!!
- 请问哪些网站有VC++6.0或VC++7.0软件的下载
- 我要存一个数组的内容到一个文件里,当每次程序启动的时候又把这些数据读到这个数组里,且顺序不变
- Unhandle exception in 文件名.exe(Mfc42d.dll):0xC0000005:Access Violation
- MFC, Linux下C++, 汇编指令哪一块在跟硬件打交道用的多啊?
- >>>>>>>> WPS: 公布源代码? <<<<<<<<<
- 如何在CTreeView中加入自己派生的CTreeCtrl子类?
- 我在写com时遇到了一个奇怪的问题,大家来帮着看一下。
FindFristChangeNotifiction()/FindNextChangeNitifiction()
监视某些文件的变化情况。
是不是那个程序用它监视了user.dat和system.dat文件?
我想,是不是那个程序监视了user.dat和system.dat文件的变化,如果改动了就把原键值再写入一遍。
比如已经写好了SubclassProc()
LRESULT CALLBACK SubclassProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
就可以用:
WNDPROC g_wpOrigProc = NULL; //定义为全局变量
以下在某个函数中:
g_wpOrigProc = SubclassWindow(g_hWnd, SubclassProc);//这是一个宏:实际上扩展后是g_wpOrigProc = SetClassLong(g_hWnd, GCL_WNDPROC, SubclassProc);SubClassProc这样实现,一般子类化的目的是改进窗口类的性能而不是重新实现它,所以末尾调用了保存下来的的窗口原消息处理函数。
LRESULT CALLBACK SubclassProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)
{
... //重载你要附加处理的消息
}
return CallWindowProc(g_wpOrigProc, hWnd, uMsg, wParam, lParam);
}与子类化相似的一个概念是超类化,其实和子类化很相似。不同的是,如果要改变很多窗口的行为,字类化要一个一个SubclassWindow,不方便。而超类化就是重新注册一个新窗口类。让它的类参数保持和原窗口类相同,但是用自定义的SubclassProc代替原来的WindowProc,(要取得原来的类参数,必须使用原窗口类隐藏的创建一个窗口)。这样用这个新窗口类创建的窗口就会都拥有扩展后的原窗口功能。
我想,是不是那个程序监视了user.dat和system.dat文件的变化,如果改动了就把原键值再写入一遍。