C/C++写注册表自启动
#include<windows.h>
#include
#include<stdio.h>
using namespace std;
int main(void) {
HKEY root;//注册表
char exepath[MAX_PATH] = { 0 };自己的exe的路径
GetModuleFileName(NULL,exepath,MAX_PATH
);//参数说明:1如果该参数为NULL,该函数返回该应用程序全路径 2指定一个字符串,保存路径名。3//字符串的最大字符数。
char rootpath[MAX_PATH] = "Software\\Microsoft\\Windows\\CurrentVersion\\Run";//参数说明:打开一个注册表项 所有注册表相关的接口 Reg Open Key
RegOpenKey(HKEY_CURRENT_USER,rootpath,&root);
// 参数说明:1.要打开注册表项目 2.要打开子键的名字的地址 3.要打开句柄的地址,root就是开机自启的注册表的句柄ID
//设置注册表项的数据
RegSetValueEx(root,"system",0,REG_SZ,(unsigned char*)rootpath,MAX_PATH);
//参数说明:1.一个已打开的注册表项。2.新建注册表数据的 名称 3.保留项强制指定为0; 4.数据的类型 REG_SZ为以'\0'结尾的字符串 5.指向一个 字符串 自启的程序的路径 6.lpData指向的数据大小
return 0;
}