一. 关闭自身软件

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

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. Nginx系列6之-rewirte功能使用案例总结

    使用案例1 网站架构如下: 公司部分服务器目前通过二级目录来调度到不同的服务器,如下所示: 按照上述需求,我们此时就配置了两个location,如下所示: [root@localhost nginx] ...

  2. Unity3D编辑器之不实例化Prefab获取删除更新组件

    原文链接:http://www.xuanyusong.com/archives/3727

  3. JQ 使用toggle实现DIV的隐藏和显示

    $('.submenuA').toggle( function () { $(this).next('div').show(); }, function () { $(this).next('div' ...

  4. 使用jquery操作session

    摘要: 今天分享的是使用jquery来处理session.我们将使用sessionStorage对象,它类似与localStorage对象,只是sessionStorage是用来储存session数据 ...

  5. 下拉刷新 上拉更多 支持ListView GridView WebView【转载】

    转载自:http://www.stay4it.com/?p=245 老贴重发,源代码放附件了,需要的下载把. 终于有新货了.昨天改了下,在ListView和GridView加了个返回到顶部的按钮,li ...

  6. Eclipse------导入项目后出现Java compiler level does not match the version of the installed Java project facet

    报错信息:Java compiler level does not match the version of the installed Java project facet 解决方法: 1.点击工具 ...

  7. linux 端口占用情况

    1,查看8010端口是否被占用 [root@cloud ~]# netstat -an|grep 8010 tcp 0 0 0.0.0.0:8010 0.0.0.0:* LISTEN 2,查看8010 ...

  8. 执行RF设置顶级测试套件的名称

    场景1:通过pybot进行单个output文件情况下设置 -N --name name 设置顶级测试套件的名称.名称中的下划线将转换为空格. 默认名称为执行的数据源的名称. 场景2:通过rebot进行 ...

  9. Git和GitHub入门基础

    -----------------------------------------//cd F:/learngit // 创建仓库git init  // 在当前目录下创建空的git仓库------- ...

  10. codeblocks编码设置

    注意编码统一,即文件编码和编译时的编码统一即可. codeblock13.12下: 文件编码: setting -> editor ->general setting -> othe ...