您现在的位置: 爱51代码网 >> 范文 >> 文章正文
vc如何实现桌面工作区域设定

vc如何实现桌面工作区域设定

无意看到一个桌面工作区域设定工具,WorkAreaLimiter
请这个是如何实现的?还请了解的帮忙分析一下。
我在想,应该是通过钩子来实现,比如收到某个窗口的最大化的消息,则更改掉屏幕的起始点或者,结束点等等,但具体是怎么弄的不太清楚。

#include <iostream> #include <conio.h> #include <Windows.h>   using namespace std;   int main(int, char **, char **) {     RECT rtWorkArea;     SystemParametersInfo(SPI_GETWORKAREA, 0, &rtWorkArea, 0);     RECT rtWorkAreaTmp;     rtWorkAreaTmp.left = rtWorkArea.left + 20;     rtWorkAreaTmp.top = rtWorkArea.top + 20;     rtWorkAreaTmp.right = rtWorkArea.right - 20;     rtWorkAreaTmp.bottom = rtWorkArea.bottom - 20;     SystemParametersInfo(SPI_SETWORKAREA, 0, &rtWorkAreaTmp, 0);     cout << "Open notepad.exe and maximize the window, then press any key...";     getch();     SystemParametersInfo(SPI_SETWORKAREA, 0, &rtWorkArea, 0);       return 0; }

不用HOOK,使用SystemParametersInfo,uiAction传SPI_GETWORKAREA或SPI_SETWORKAREA。

  • 上一篇文章:

  • 下一篇文章: 没有了
  • 最新文章 热点文章 相关文章
    undefined reference timer_crea
    linux文件/usr/lib破坏了,还原后
    linux上运行system函数时,print
    Failed to open eth0
    android手机无法与eclipse或电脑
    C/C++洗牌算法源代码
    servlet技术实现用户名唯一的验证
    E-business suite system servic
    ZOJ 3700 Ever Dream 文章中单词
    TortoiseGit和msysGit安装及使用
    undefined reference timer_crea
    Failed to open eth0
    ZOJ 3700 Ever Dream 文章中单词
    TortoiseGit和msysGit安装及使用
    sharepoint 2010 获取用户信息Us
    mysql主从同步延迟方案解决的学习
    生日旅行总结
    中小板生日快乐随感
    送生日快乐桑葚乳酪小蛋糕
    写给女儿的生日快乐
    没有相关文章
     



    设为首页 | 加入收藏 | 网站地图 | 友情链接 |