c++ 让措施开机自动启动的要领
当我们在window下编写本身的措施时,也可以让本身编写的措施在电脑开机时自动运行,这首要是修改windows里的注册表信息,全部开机自动启动的措施的一些信息都放在注册表中的某一文件夹下。我们只需在特定的文件夹下写入我们的措施信息即可。 关于注册表 我们可以在键盘上同时按下 win+r 键,在运行串口中输regedit 回车即可看到注册表(可以领略为一个大树,记录着体系中的信息),我们点击左边文件夹,点击次序为:SoftwareMicrosoftWindowsCurrentVersionRun,在这个文件夹中存放的即是随机启动的 措施的信息。举个例子:当我们行使某个电脑优化软件举办电脑优化时,他会检测到必要开机优化的项目,即有些软件不须要开机就启动,修改的就是这个文件中的一些信息。 起首我们表明下所用到的函数的寄义: RegOpenKeyEx() 函数成果描写:打开一个指定的注册表键 LONG RegOpenKeyEx(
ulOptions 二: 留意:假如想得到某个正在运行的EXE可能DLL的全路径可以这样写代码 三: RegSetValueEx():想要配置的注册表项下不是默认值,即著名称值的数据和范例时,可以挪用RegSetValueEx函数,该函数将在注册表项下配置指定值的数据和范例。 以下代码时实现让本措施开机自启的要领. void CSetAutoRunDlg::OnBnClickedButton1() { // TODO: 在此添加控件关照处理赏罚措施代码 HKEY hKey; //可以领略为操纵注册表的句柄 //找到体系的启动项 ,长指针范例是const char * 范例 LPCTSTR lpRun = "SoftwareMicrosoftWindowsCurrentVersionRun"; //打开启动项Key long lRet = RegOpenKeyEx(HKEY_LOCAL_MACHINE,lpRun,KEY_WRITE,&hKey); if(lRet == ERROR_SUCCESS) //打开乐成 { char pFileName[MAX_PATH] = {0}; //界说数组存放路径 //获得措施自身的全路径 DWORD dwRet = GetModuleFileName(NULL,MAX_PATH); //添加一个子Key,并配置值 // 下面的"test"是应用措施名字(不加后缀.exe) lRet = RegSetValueEx(hKey,"SetAutoRun",REG_SZ,(BYTE *)pFileName,dwRet); //封锁注册表 RegCloseKey(hKey); if(lRet != ERROR_SUCCESS) { MessageBox("体系参数错误,不能完成开机启动配置"); } else { MessageBox("打开开机启动乐成"); } // isrun = 1; } } 点击运行后,呈现"启动乐成"对话框,重启电脑后,软件开机启动(当运行措施时,有的杀毒软件也许会发出注册表修改的告诫,那正是我们的措施在修改注册表) (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |