本文所述实例主要介绍如何在VC++下让程序开机自动运行的方法。一般而言添加到开机启动项,这是很多程序都有的做法,具体实现思路是利用win.in文件实现相关程序的开机自动启动。主要是通过WritePrivateProfileString函数来实现。下面来看这一功能的实现方法。
主要功能代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
HCURSOR CAutoRunDlg::OnQueryDragIcon() { return ( HCURSOR ) m_hIcon; } void CAutoRunDlg::OnBrowse() { //只浏览exe文件 CFileDialog fileDlg(TRUE,_T( "EXE" ),_T( "*.exe" ),OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,(_T( "Executable Files (*.exe) |*.exe ||" ))); //显示打开文件的对话框 //当操作者选择OK时,程序取得选择文件的全路径名(包括文件的路径及文件名称),并将相应的数值传输给相关的控件变量。 if (fileDlg.DoModal()==IDOK) { m_strFileName=fileDlg.GetPathName(); //m_strFileName是保存了需要被自动执行程序的完整路径 //向将变量中的数值传输给控件显示出来。 UpdateData(FALSE); } } void CAutoRunDlg::OnApply() { //更新数据 UpdateData(TRUE); //写入ini文件 LPCTSTR filename; filename=m_strFileName; WritePrivateProfileString(_T( "windows" ),_T( "load" ),filename,_T( "c:windows\\win.ini" )); } |
开机启动是一个很实用的功能,对此感兴趣的读者可以自己测试一下。