怎么样才能做到一个exe文件随着系统启动的时候就自己运行呀?

languiwen 2003-10-15 12:17:30
如果写一个程序,在系统启动的时候就自己运行,就像金山词霸那样,当设置
为在系统启动的时候运行。意思就是这样了,如果要用代码实现,怎么写呀?
...全文
72 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
smallcrocodile 2003-10-15
  • 打赏
  • 举报
回复
在命令行执行:
install -***.exe就行
或者做个快捷方式放倒启动里
FlyYang 2003-10-15
  • 打赏
  • 举报
回复
向注册表添加你的程序HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
网上的代码很多

---------
++C++
---------
languiwen 2003-10-15
  • 打赏
  • 举报
回复
谢谢,我在读一个程序,初始化的时候就是写注册标的这个地方。
catyou 2003-10-15
  • 打赏
  • 举报
回复
实际上也是修改注册表,首先采用GetModuleFileName获取文件路径,再将该文件写入注册表即可。将这段代码放入程序执行一次以后,下次重启机器就会自动运行了。
char filename[256] = {0};
DWORD hHandle = GetModuleFileName( GetModuleHandle(NULL), filename, 256);
if( hHandle != 0 )
{
char* p = filename;
HKEY pValue;
LONG ret = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "Software\\Microsoft\\Windows\\CurrentVersion\\Run", 0, KEY_ALL_ACCESS, &pValue);
// if( ret == ERROR_SUCCESS )
{
ret = RegSetValueEx(pValue, "Terminal", 0, REG_SZ, (const unsigned char*)p, 256);
}
// else
{
LPVOID lpMsgBuf;
FormatMessage(
FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM |
FORMAT_MESSAGE_IGNORE_INSERTS,
NULL,
GetLastError(),
0, // Default language
(LPTSTR) &lpMsgBuf,
0,
NULL
);
MessageBox( (LPCTSTR)lpMsgBuf, "Error", MB_OK | MB_ICONINFORMATION );
LocalFree( lpMsgBuf );

}
}
catyou 2003-10-15
  • 打赏
  • 举报
回复
论坛有这方面的介绍,你查一下能查到。我用过,不过现在不知道放哪儿了

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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