码迷,mamicode.com
首页 > 编程语言 > 详细

VC/MFC程序开启关闭其他软件,更改窗口类

时间:2016-04-05 12:15:22      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:

流程:

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

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

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

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

 

关于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

 

VC/MFC程序开启关闭其他软件,更改窗口类

标签:

原文地址:http://www.cnblogs.com/LJWJL/p/5354249.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!