c++程序隐藏DOS窗口和开机自启的方法

隐藏DOS窗口

在main函数外添加下面这行代码

1 #pragma comment( linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")

该行函数的参数请自行google

 

 

开机自启

在main()函数中添加下面代码

 1 char system[MAX_PATH];   //系统目录路径
 2     char path[MAX_PATH];     //开机运行文件的完整路径
 3     HMODULE GetModh=GetModuleHandle(NULL);    //检索指定的模块
 4 
 5     GetModuleFileName(GetModh,path,sizeof(path));   //得到当前执行文件的全路径
 6     GetSystemDirectory(system,sizeof(system));      //得到系统所在目录路径
 7 
 8     strcat(system,"\\你程序的名称.exe");
 9     CopyFile(path,system,FALSE);
10 
11     //写入注册表
12     HKEY hKey;
13     RegOpenKeyEx(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\Run",0,KEY_SET_VALUE,&hKey);
14     RegSetValueEx(hKey, "你程序的名称.exe",0,REG_SZ,(const unsigned char*)system,sizeof(system));
15     RegCloseKey(hKey);

 

posted @ 2013-12-07 18:43  尽子轨  阅读(1225)  评论(0编辑  收藏  举报