mfc 中如何打开 关闭一个exe文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mfc 中如何打开 关闭一个exe文件相关的知识,希望对你有一定的参考价值。
rt
参考技术A 打开程序用WinExec("程序路径",SW_SHOW);
关闭自己用exit(0);
关闭别的程序,首先获得程序的PID,然后
int
TerminateProcessFromId(DWORD
dwId)
//关闭进程
BOOL
bRet=FALSE;
HANDLE
hProcess=::OpenProcess(PROCESS_ALL_ACCESS,FALSE,dwId);
if(hProcess!=NULL)
bRet=::TerminateProcess(hProcess,0);
::CloseHandle(hProcess);
if(bRet)
printf("%d
进程结束成功......\n\n\n\n",dwId);
else
printf("%d
进程结束失败......\n\n\n\n",dwId);
return
0;
打开我的项目 exe 后缺少 mfc120d.dll
【中文标题】打开我的项目 exe 后缺少 mfc120d.dll【英文标题】:mfc120d.dll is missing after opening my project exe 【发布时间】:2019-02-20 09:55:49 【问题描述】:我有一个 MFC vc++ 项目,并且我有使用 Visual Studio 2013 的该项目的 exe 文件。当我打开项目 exe 时,它在我的开发机器上运行良好。
但是当我在客户的机器上打开这个 exe 时,我会收到以下错误消息:
程序无法启动,因为您的计算机中缺少 mfc120d.dll。尝试重新安装程序以解决此问题
我注意到如果系统安装了 Visual Studio,我的项目 exe 文件正在运行。我还安装了“Visual C++ Redistributable Packages for Visual Studio 2013”,但即便如此我也遇到了同样的错误。请提出解决方案。
【问题讨论】:
仔细阅读错误信息。 mfc120.dll 没有丢失,但 mfc120d.dll 丢失了。您已在客户计算机上部署了 .exe 的调试版本。而是部署发布版本。相关:***.com/questions/22939558/… The program can't start because mfc120ud.dll is missing from your computer的可能重复 感谢您的建议。我安装了 32 位版本的 Visual C++ Redistribute,并在我的项目中删除了不需要的第三方调试 dll。现在它正在工作。 【参考方案1】:这是因为您部署了应用的调试版本。如果这是故意的(能够远程调试?),您可以从 VS2013 安装目录中找到并部署 mfc120d.dll。 否则只需构建发布配置就可以了。
【讨论】:
以上是关于mfc 中如何打开 关闭一个exe文件的主要内容,如果未能解决你的问题,请参考以下文章
MFC下如何关闭外部程序,例如关闭一个以notepad.exe D:\\text.txt打开的进程