vc6中 EnumDisplayDevices 判断扩展屏幕,以及取得扩展屏幕的示例代码。

#define        SM_CMONITORS        80

//    int screen_count = ::GetSystemMetrics( SM_CMONITORS );

BOOL EnumDisplayDevices(

LPCTSTR lpDevice,                // device name

DWORD iDevNum,                   // display device

PDISPLAY_DEVICE lpDisplayDevice, // device information

DWORD dwFlags                    // reserved

);

typedef BOOL ( __stdcall * pEnumDiaplayDevices )(  LPCTSTR lpDevice,                // device name

DWORD iDevNum,                   // display device

PDISPLAY_DEVICE lpDisplayDevice, // device information

DWORD dwFlags                    // reserved

);

int

GetScreenRect( int ScreenNo, RECT *rect )

{

pEnumDiaplayDevices xenum;

BOOL flag;

DISPLAY_DEVICE dd;

ZeroMemory( &dd, sizeof( dd ) );

dd.cb = sizeof( dd );

HMODULE hhh = LoadLibrary( _T( "user32.dll" ) );

if( hhh )

{

xenum = ( pEnumDiaplayDevices )GetProcAddress( hhh, "EnumDisplayDevicesW" );

}

if( !xenum )

{

FreeLibrary( hhh );

return 1;

}

//flag = EnumDisplayDevices( NULL, ScreenNo, &dd, 0 );

flag = xenum( NULL, ScreenNo, &dd, 0 );

if( !flag )

{

FreeLibrary( hhh );

return 1;

}

DEVMODE dm;

ZeroMemory( &dm, sizeof( dm ) );

dm.dmSize = sizeof( dm );

flag = EnumDisplaySettings( dd.DeviceName, ENUM_CURRENT_SETTINGS, &dm );

rect->left = dm.dmPosition.x;

rect->top = dm.dmPosition.y;

rect->right = dm.dmPelsWidth;

rect->bottom = dm.dmPelsHeight;

FreeLibrary( hhh );

return 0;

}

//*************************

// 简单测试代码

//*************************

RECT rec;

int result = GetScreenRect( 1, &rec );

if( rec.left == rec.right )

{

// 没找到第二显示器,随便判断一下,不严格

时间: 2024-10-14 11:25:18

vc6中 EnumDisplayDevices 判断扩展屏幕,以及取得扩展屏幕的示例代码。的相关文章

(转)详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数

原文:https://www.jb51.net/article/138363.htm hasattr()函数 hasattr()函数用于判断是否包含对应的属性 语法: hasattr(object,name) 参数: object--对象 name--字符串,属性名 返回值: 如果对象有该属性返回True,否则返回False 示例: class People: country='China' def __init__(self,name): self.name=name def people_i

Selenium WebDriver 中鼠标和键盘事件分析及扩展(转)

本文将总结 Selenium WebDriver 中的一些鼠标和键盘事件的使用,以及组合键的使用,并且将介绍 WebDriver 中没有实现的键盘事件(Keys 枚举中没有列举的按键)的扩展.举例说明扩展 Alt+PrtSc 组合键来截取当前活动窗口并将剪切板图像保存到文件. 概念 在使用 Selenium WebDriver 做自动化测试的时候,会经常模拟鼠标和键盘的一些行为.比如使用鼠标单击.双击.右击.拖拽等动作:或者键盘输入.快捷键使用.组合键使用等模拟键盘的操作.在 WebDerive

《编程之美》3.6判断链表是否相交之扩展:链表找环方法证明

先看看原题:<编程之美>3.6编程判断两个链表是否相交,原题假设两个链表不带环. 为了防止剧透使得没看过原题目的读者丧失思考的乐趣,我把最好的解法隐藏起来.由于这个问题本身的解答并不是本文的重点,扩展问题也采用这种形式呈现. 注:位于(*)符号之间的文字出自于:http://blog.csdn.net/v_july_v/article/details/6447013,作者v_JULY_v. 用指针p1.p2分别指向两个链表头,不断后移:最后到达各自表尾时,若p1==p2,那么两个链表必相交 用

在VC6中使用ogre进行游戏开发

微软公司开发的visual c++6.0堪称史上最易用.最成熟的开发工具.vc6以其小巧.轻便赢得了程序员的喜爱,以至于在VS大行其道的时代,很多程序员仍然使用vc6作为开发工具,vc6的欢迎性可见一斑.可惜vc6有一个缺点,那就是不能开发ogre应用程序.网上的教程,链接已经过时.个人也是查找了好多资料,搞了整整一上午才终于配置得差不多,但仍然失败了好几个,不过已经不影响大局了.ogre是一个极其复杂的工程,它借助了许多的第三方库,比如说boost.stlport.所以编译ogre也是一个相当

C#开发中Windows域认证登录2016(扩展吉日嘎拉GPM系统V4.2)

2013年搞公司的OA时,为了统一用户登录,将Windows AD的用户和OA的账号对接,OA用户名的规则就是使用Windows AD的用户名,格式举例:Troy.Cui,原理就是先进行域服务器的认证,认证完毕使用自定义的函数根据用户名读取出OA的用户信息,然后读取出用户名和密码信息,最后使用获取到的用户名和密码进行正常的登录.当时的文章:<C#开发中Windows域认证登录2(扩展吉日嘎拉GPM系统)>,本周打算OA中开发在线培训的功能,也想借此机会升级一下底层的应用DotNet.Busin

[转载]VC6中的文件后缀

VC文件扩展名 .APS:存放二进制资源的中间文件,VC把当前资源文件转换成二进制格式,并存放在APS文件中,以加快资源装载速度. .BMP:位图资源文件. .BSC:浏览信息文件,由浏览信息维护工具(BSCMAKE)从原始浏览信息文件(.SBR)中生成,BSC文件可以用来在源代码编辑窗口中进行快速定位. .C:用C语言编写的源代码文件. .CLW:ClassWizard生成的用来存放类信息的文件. .CNT:用来定义帮助文件中“Contents”的结构. .CPP或.CXX:用C++语言编写的

makefile中条件判断与函数

1. 条件判断 1.1 语法 条件表达式的语法为: <conditional-directive> <text-if-true> endif 以及: <conditional-directive> <text-if-true> else <text-if-false> endif 其中<conditional-directive>表示条件关键字,如"ifeq".这个关键字有四个. (1)第一个是我们前面所见过的&q

oracle中如何判断一个字符串是否含有汉字

oracle中如何判断一个字符串是否含有汉字 一.1 BLOG文档结构图 一.2 前言部分 一.2.1 导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ①全角字符的判断,或者是含有汉字的字符串的判断 本文如有错误或不完善的地方请大家多多指正,ITPUB留言或QQ皆可,您的批评指正是我写作的最大动力. 一.2.2 实验环境介绍 11.2.0.3  RHEL6.5 一.2.3 本文简介 看到网友问,怎么查询表中某个字段数据是不是包含了

Java中如何判断一个double类型的数据为0?

Java中如何判断一个double类型的数据为0 其实这个问题很简单,只是很多时候考虑复杂了,直接用==判断即可.下面给出测试例子: /**  * 如何判断一个double类型的数据为0  *  * @author leizhimin 2014/8/27 10:31  */ public class Test4 {     public static void main(String[] args) {         double x = 0.00000000000000000;