VC++ 6.0 中,怎么实现启动一个已存在的EXE程序
我想实现的是在点击按钮后启动一个当前目录下的EXE程序,请问VC中有哪个函数有这个功能,谢谢....
我想实现的是在点击按 钮后启动一个当前目录下的EXE程序,请问VC中有哪个函数有这个功能,谢谢.
展开
3个回答
展开全部
给个函数,
name是你传给的exe名字,比如*.exe,返回的是绝对路径,就是你想要的
CString CQqDlg::GetModulePath(CString name)
{
char lpFilename[200];
DWORD nSize = 200;
// 得到应用程序的文件名
GetModuleFileName(NULL, lpFilename, nSize);
CString strFileName = (CString)lpFilename;
int pos = strFileName.ReverseFind('\\');
if(pos<0)
return "";
return strFileName.Left(pos+1)+name;
}
有了文件路径,调用就行了
ShellExecute(NULL,"Open",GetModulePath(name),NULL,NULL,SW_SHOWNORMAL);
name是你传给的exe名字,比如*.exe,返回的是绝对路径,就是你想要的
CString CQqDlg::GetModulePath(CString name)
{
char lpFilename[200];
DWORD nSize = 200;
// 得到应用程序的文件名
GetModuleFileName(NULL, lpFilename, nSize);
CString strFileName = (CString)lpFilename;
int pos = strFileName.ReverseFind('\\');
if(pos<0)
return "";
return strFileName.Left(pos+1)+name;
}
有了文件路径,调用就行了
ShellExecute(NULL,"Open",GetModulePath(name),NULL,NULL,SW_SHOWNORMAL);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
ShellExecute()。
下面是个例子,启动记事本:
ShellExecute(NULL,"Open","C:/Windows/Notepad.exe",NULL,NULL,SW_SHOWNORMAL);
下面是个例子,启动记事本:
ShellExecute(NULL,"Open","C:/Windows/Notepad.exe",NULL,NULL,SW_SHOWNORMAL);
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
CreateProcess
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询