zoukankan      html  css  js  c++  java
  • VC/MFC程序开启关闭和打开自己或其他软件,更改窗口类

    一. 关闭自身软件

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

    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);  //开启软件 

  • 相关阅读:
    linux 安装 svn
    人群计数:Single-Image Crowd Counting via Multi-Column Convolutional Neural Network
    Ubuntu查看CPU占用和使用情况
    看完这篇文章,我奶奶都懂了HTTPS原理
    EfficientNet算法笔记
    Soft NMS算法笔记
    DenseNet算法详解
    AI竞赛服务平台—— FlyAI
    Cornernet训练自己的数据
    深度学习物体检测:CornerNet
  • 原文地址:https://www.cnblogs.com/LJWJL/p/5354249.html
Copyright © 2011-2022 走看看