概述
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XX 作 者:文化人
XX 联系方式:(或进群:471144274)
XX 版权声明:原创文章,欢迎评论和转载~转载时能告诉我一声就最好了
XX 要说的话:作者水平有限,难免有不足之处,恳请指正!
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
写在前面:有时可能会遇到执行.exe文件的需求,或者通过执行.exe+参数实现更多功能,那么如何启动.exe文件呢?
这里做一个简单的演示:
浏览:打开.exe的文件,包含路径
运行:执行.exe文件
参考代码如下:
CString FilePathName;
void CCsocProppageOptBTMi1107e::OnBnClickedButtonBrowse()
{
CFileDialog dlg(TRUE);///TRUE为OPEN对话框,FALSE为SAVE AS对话框
if(dlg.DoModal()==IDOK)
{
FilePathName=dlg.GetFolderPath();
}
this->SetDlgItemText(IDC_EDIT_FWPATH,FilePathName);
}
void CCsocProppageOptBTMi1107e::OnBnClickedButtonExec()
{
BOOL bRet;
PROCESS_INFORMATION pinfo = {0};
STARTUPINFO si = { 0 };
si.cb = sizeof(STARTUPINFO);
if (strlen(FilePathName))
{
char szExePath[MAX_PATH] = {0};
char szfwPath[MAX_PATH] = {0};
strcpy(szExePath, FilePathName);
OutputDebugString(szExePath);
strcat(szExePath, "\sscom5.13.1.exe");
OutputDebugString(szExePath);
//strcpy(szfwPath, FilePathName);
//strcat(szfwPath, "\dump\i1107e.ptn all");
if (TRUE)
{
//char szParameter[MAX_PATH] = {0};
//strcpy(szParameter, " -usb ");
//strcat(szParameter, g_spi_port);
//strcat(szParameter, """);
char szCmdLine[MAX_PATH] = {0};
//1. erase
if(1){
strcpy(szCmdLine, szExePath);
//strcat(szCmdLine, " erase");
//strcat(szCmdLine, szParameter);
BOOL bRet = CreateProcess(NULL,szCmdLine,0,0,0,0,0,0,&si,&pinfo);
if (bRet)
{
WaitForSingleObject(pinfo.hProcess, INFINITE);
CloseHandle(pinfo.hProcess);
CloseHandle(pinfo.hThread );
}
}
}
}
}
最后
以上就是冷酷大门为你收集整理的MFC学习笔记 — C++如何执行.exe文件的全部内容,希望文章能够帮你解决MFC学习笔记 — C++如何执行.exe文件所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复