一. 关闭自身软件

直接在需要关闭的位置输入

HANDLE hself = GetCurrentProcess();
TerminateProcess(hself, 0);

二.关闭其他软件

流程:

1. 获取目标程序的  窗口HWND hWnd

  HWND hWnd = ::FindWindowA(_T("SoftWareClassName"),NULL); //获取需要软件的窗口

2. int ret = ::SendMessageA(hWnd ,WM_CLOSE,0,0); //关闭软件

关于FindWindow()有两个参数  第一个是窗口类名,第二个是窗口名  。使用的时候只需要使用其中一个就够了,另外一个参数写NULL

对于开关自己写的软件可以自定义窗口类名  步骤如下:

1.在窗口的 rc文件中增加

  CLASS "SoftWareClassName"

2.在窗口创建前增加下面几行代码 注册窗口类

/////////////////////////////////////////////////////////
WNDCLASS wc;

// Get the info for this class.
// #32770 is the default class name for dialogs boxes.
::GetClassInfo(AfxGetInstanceHandle(), _T("#32770"), &wc);

// Change the name of the class.
wc.lpszClassName = _T("SoftWareClassName"); //这里请再次注意,一定要保证和rc资源文件里保存的类名相同!

// Register this class so that MFC can use it.
bool ret=AfxRegisterClass(&wc);

/////////////////////////////////////////////////////////

对于开关别人写的软件可以通过软件获取名称  步骤如下:

下载微软软件spy++获取当前打开的软件窗口名称和类名,如下图 福晰阅读器为窗口名,classFoxitReader为窗口类名。

软件下载地址 :http://pan.baidu.com/s/1kV8frCV

 三. 打开其他软件

在需要打开软件的位置输入

WinExec(D:\\Foxit Reader.exe,SW_SHOWMAXIMIZED);  //开启软件

VC/MFC程序开启关闭和打开自己或其他软件,更改窗口类的更多相关文章

  1. VC++ MFC程序设置以管理员权限运行

    1.引入资源文件 (.manifest文件),文件中的 name 值为程序全称.exe:文件内容如下: <?xml version="1.0" encoding=" ...

  2. win10如何一键开启关闭windows Defender(亲测有效)

    win10如何一键开启关闭windows Defender(亲测有效) 一.总结 一句话总结:各种找资料如何开启关闭都没用,直接下载软件简单方便 软件 因为我关windows defender是用的一 ...

  3. [转]《深入浅出MFC》– MFC程序的生死因果

    1.首先MFC程序需要哪些函数库? Windows C Runtime函数库 LIBC.LIB       C Runtime函数库的静态链接版本 MSVCRT.LIB     C Runtime函数 ...

  4. MFC注册窗口类以及FindWindow按窗口类名查询(避免用#32770获取窗口句柄)

    呵呵,最近在研究SendMessage函数,其中需要用到m_hWnd,之后延伸着又尝试获得窗口的句柄,于是遇到了FindWindow函数,原型如下: HWND FindWindow ( LPCSTR ...

  5. VC++ MFC SDI/MDI Ribbon程序的停靠窗格被关闭后如何再次显示

    VC++ 创建基于MFC的SDI应用程序,Visual Studio风格的主界面如下图所示,在该主界面上的视图菜单下包含有队对各个可停靠窗格显示或隐藏的控制菜单项.而基于Ribbon风格的应用程序,所 ...

  6. VS2012与VS2015同时安装用VS2012创建MFC程序时弹出编译错误”fatal error C1083: 无法打开包括文件:“mprapidef.h”: No such file or directory”的解决办法

    在WIndows 7操作系统上同时安装VS2012与VS2015并用VS2012创建MFC程序时弹出编译错误”fatal error C1083: 无法打开包括文件:“mprapidef.h”: No ...

  7. 如何在VS2010的VC++ 基于对话框的MFC程序中添加菜单

    方法1:亲测 成功  转载自https://social.msdn.microsoft.com/Forums/vstudio/zh-CN/48338f6b-e5d9-4c0c-8b17-05ca3ef ...

  8. notepad++ 开启/关闭 记住最后打开的文件

    开启记住最后打开的文件 1) 6.3以前版本如下设置: 设置-->首选项-->其他 把左下角的 "记住最后打开文件" 勾选. 2) 6.3以后版本如下设置: 设置--& ...

  9. 如何让MFC程序关闭按钮失效,也无法右击任务栏关闭窗口来关闭?

    如何让MFC程序关闭按钮失效,也无法右击任务栏关闭窗口来关闭,即右键任务栏的关闭窗口失效呢?很简单,有一个小窍门就是:响应IDCANCEL消息,具体实现如下: 首先定义消息映射:ON_BN_CLICK ...

随机推荐

  1. 解决错误:“废弃 document 元素之后的内容”——HTML5新特性,局部样式表

    最近正在学习angularjs,不过本文和angularjs没多大关系.在学习使用route和ng-view使用模版之后,发现view装载之后,firefox都会报个错误“废弃 document 元素 ...

  2. SharePoint 2013 显示“以其他用户身份登录”菜单项

    最近在SharePoint 2013的网站上发现,没有看到有切换不同用户登录的入口,在SharePoint 2010中是存在这样的菜单项能够很方便的进行用户切换的,不知道为什么,SharePoint ...

  3. git恢复删除的分支及内容

    git 删除分支git branch -D 分支名 git查看分支 git branch -a git 删除远程分支 git push origin :分支名 这里注意:git分支提交并且push了, ...

  4. linux echo命令提示权限不够的解决办法

    该文章转载于此:http://blog.csdn.net/u010780613/article/details/51491237 问题描述:      在使用Ubuntu系统的时候,遇到这样的一个问题 ...

  5. ApkTool反编译和重新打包

    有时会需要反编译APK,各人有各人的原因,你都懂的…… 准备工作: 下载APKTool,通过下面这个连接进行下载,https://code.google.com/p/android-apktool/d ...

  6. struts2危险漏洞解决方法

    原创,bgy编写.2013-07-24 前文: 随着苹果开发者网站的沦陷,已经曝光一周的Apache Struts2漏洞再次成为热门话题,今天有消息称由于该漏洞被利用,淘宝的数据库已经被盗,尽管淘宝官 ...

  7. springmvc+freemarker生成静态html文件

    参考资料: http://mylfd.iteye.com/blog/1896501 http://www.cnblogs.com/xxt19970908/p/5553045.html 个人实践: 1. ...

  8. Docker安装指南

    Ubuntu 14.04 16.04 (使用apt-get进行安装) # step 1: 安装必要的一些系统工具 sudo apt-get -y update sudo apt-get -y inst ...

  9. dos命令收集

    应用程序和进程相关 tasklist  /svc     查看计算机当前正在运行程序 taskkill /f /im "eclipse.exe"   关闭指定的应用程序 taskk ...

  10. Dubbo -- 系统学习 笔记 -- 依赖

    Dubbo -- 系统学习 笔记 -- 目录 依赖 必需依赖 缺省依赖 可选依赖 依赖 必需依赖 JDK1.5+ 理论上Dubbo可以只依赖JDK,不依赖于任何三方库运行,只需配置使用JDK相关实现策 ...