用C++写的控制台小程序,如何开机自动启动?

Silence_Smile 2010-07-27 10:43:10
如题,Console程序如何开机自启动,我知道要写注册表,写注册表的时候要把自己这个exe的路径写进去么?
如果exe的位置变了的话还能自启动吗?请给出自启动这块的完整代码,谢谢!
...全文
450 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
longsir2008 2011-04-06
  • 打赏
  • 举报
回复
恩 看看 怎么写的
harderman 2010-07-27
  • 打赏
  • 举报
回复
在你写代码的时候就应该把注册注册表之类的代码写在程序里,这样就可以实现了
Silence_Smile 2010-07-27
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 ayw215 的回复:]

C/C++ code
//写入注册表,开机自启动
HKEY hKey;
//找到系统的启动项
LPCTSTR lpRun = "Software\\Microsoft\\Windows\\CurrentVersion\\Run";
//打开启动项Key
long lRet = RegOpenKeyEx(HKEY_LOCAL_MACHINE, lpRun, 0, KEY_WRITE, &……
[/Quote]
多谢,我试试
ayw215 2010-07-27
  • 打赏
  • 举报
回复
//写入注册表,开机自启动
HKEY hKey;
//找到系统的启动项
LPCTSTR lpRun = "Software\\Microsoft\\Windows\\CurrentVersion\\Run";
//打开启动项Key
long lRet = RegOpenKeyEx(HKEY_LOCAL_MACHINE, lpRun, 0, KEY_WRITE, &hKey);
if(lRet == ERROR_SUCCESS)
{
char pFileName[MAX_PATH] = {0};
//得到程序自身的全路径
DWORD dwRet = GetModuleFileName(NULL, pFileName, MAX_PATH);
//添加一个子Key,并设置值 // 下面的"getip"是应用程序名字(不加后缀.exe)
lRet = RegSetValueEx(hKey, "getip", 0, REG_SZ, (BYTE *)pFileName, dwRet);

//关闭注册表
RegCloseKey(hKey);
if(lRet != ERROR_SUCCESS)
{
AfxMessageBox("系统参数错误,不能随系统启动");
}
}
Silence_Smile 2010-07-27
  • 打赏
  • 举报
回复
高手赶紧来啊,我是搞Java的,C++不是很熟
mousetec 2010-07-27
  • 打赏
  • 举报
回复
学习。。。。。。。。。。
Silence_Smile 2010-07-27
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 ayw215 的回复:]

最简单的方法:
把exe拖到 “开始”-》“启动”里面去
[/Quote]
恩,这我知道,现在就想用写注册表的方式来实现
ayw215 2010-07-27
  • 打赏
  • 举报
回复
最简单的方法:
把exe拖到 “开始”-》“启动”里面去

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧