青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

奇奇的空間

奇奇的空間
posts - 5, comments - 13, trackbacks - 0, articles - 23

多屏編程之如何獲取顯卡信息判斷是否為多屏

Posted on 2006-11-27 16:18 奇奇 閱讀(2195) 評論(1)  編輯 收藏 引用 所屬分類: VC++

在stdafx.h
中加入:
#undef WINVER
#define WINVER 0x0500

*************************************************************

#ifndef SM_CMONITORS

typedef HANDLE HMONITOR;

#endif
#ifndef DISPLAY_DEVICE_PRIMARY_DEVICE

typedef struct _DISPLAY_DEVICE {
DWORD cb;
TCHAR DeviceName[32];
TCHAR DeviceString[128];
DWORD StateFlags;
} DISPLAY_DEVICE, *PDISPLAY_DEVICE, *LPDISPLAY_DEVICE;
#define DISPLAY_DEVICE_ATTACHED_TO_DESKTOP 0x00000001
#define DISPLAY_DEVICE_MULTI_DRIVER 0x00000002
#define DISPLAY_DEVICE_PRIMARY_DEVICE 0x00000004
#define DISPLAY_DEVICE_VGA 0x00000010

#endif

typedef BOOL (WINAPI* pEnumDisplayDevices)(PVOID,DWORD,PVOID,DWORD);
typedef BOOL (WINAPI* pEnumDisplaySettings)(PVOID,DWORD,PVOID);

pEnumDisplayDevices pStartEnumDisplayDevices;
pEnumDisplaySettings pStartEnumDisplaySettings;


*********************************************************************


int iCount;

pStartEnumDisplayDevices = (pEnumDisplayDevices)GetProcAddress(LoadLibrary("USER32"), "EnumDisplayDevicesA");
pStartEnumDisplaySettings = (pEnumDisplaySettings)GetProcAddress(LoadLibrary("USER32"), "EnumDisplaySettingsA");


if (pStartEnumDisplayDevices && pStartEnumDisplaySettings)
{
DISPLAY_DEVICE dd;
DEVMODE dv;

ZeroMemory(&dv, sizeof(dv));
ZeroMemory(&dd, sizeof(dd));

dv.dmSize = sizeof(dv);
dd.cb = sizeof(dd);

for (iCount=0; (*pStartEnumDisplayDevices)(NULL, iCount, &dd, 0); iCount++)
{
(*pStartEnumDisplaySettings)(dd.DeviceName,ENUM_CURRENT_SETTINGS,&dv);
if((dd.StateFlags & DISPLAY_DEVICE_ATTACHED_TO_DESKTOP)
&&(dd.StateFlags & DISPLAY_DEVICE_PRIMARY_DEVICE))
{
CString strDispName,strScreen,strColor,strFreq;

strDispName.Format(_T("Device Name: %s "),dd.DeviceString);
SetDlgItemText(IDC_STATIC_DISP_NAME,strDispName);

strScreen.Format(_T("%d×%d "),dv.dmPelsWidth,dv.dmPelsHeight);
SetDlgItemText(IDC_STATIC_FREQ,strScreen);

strColor.Format(_T("%d Bit"),dv.dmBitsPerPel);
SetDlgItemText(IDC_STATIC_COLOR,strColor);

strFreq.Format(_T("%d Hz"),dv.dmDisplayFrequency);
SetDlgItemText(IDC_STATIC_REFRESH_FREQ,strFreq);
}
}
}

Feedback

# re: 多屏編程之如何獲取顯卡信息判斷是否為多屏  回復  更多評論   

2010-04-20 23:17 by wert
void GetDisplayName()
{
HKEY keyServ = NULL;
HKEY keyEnum = NULL;
HKEY key = NULL;
HKEY key2 = NULL;
DWORD error = 0;
LPCTSTR api = NULL;
DWORD type, count, size, i, iServ;
std::list <string> save;

setlocale (LC_ALL, ".ACP");

error = RegOpenKeyEx(HKEY_LOCAL_MACHINE,TEXT("SYSTEM\\CurrentControlSet\\Services"), 0, KEY_READ,&keyServ);
error = RegOpenKeyEx(HKEY_LOCAL_MACHINE,TEXT("SYSTEM\\CurrentControlSet\\Enum"),0,KEY_READ,&keyEnum);

i = 0;
for( iServ=0; ; ++iServ )
{
TCHAR name [0x200];
size = 0x200;
error = RegEnumKeyEx(keyServ, iServ,name,&size,NULL, NULL, NULL, NULL);
if(error == ERROR_NO_MORE_ITEMS)
break;
error = RegOpenKeyEx(keyServ, name, 0, KEY_READ, &key);

size = 0x200;
error = RegQueryValueEx(key, TEXT("Group"), 0, &type, (LPBYTE)name, &size);

if(error == ERROR_FILE_NOT_FOUND)
{ //鍵不存在
RegCloseKey (key);
continue;
};

if (_tcscmp (TEXT ("Video"), name) != 0)
{ // 不是顯卡的內核驅動
RegCloseKey (key);
continue;
};

error = RegOpenKeyEx (key, TEXT ("Enum"),
0, KEY_READ, &key2);

RegCloseKey (key);
key = key2;

size = sizeof (count);
error = RegQueryValueEx (key, TEXT ("Count"),
0, &type, (LPBYTE)&count, &size);



for ( i=0; i < count; ++i )
{
TCHAR sz [0x200];
TCHAR name [0x40];

wsprintf (name, TEXT ("%d"), i);
size = sizeof (sz);
error = RegQueryValueEx (key, name,
0, &type, (LPBYTE)sz, &size);

error = RegOpenKeyEx (keyEnum, sz,
0, KEY_READ, &key2);

size = sizeof (sz);
error = RegQueryValueEx (key2, TEXT ("FriendlyName"),
0, &type, (LPBYTE)sz, &size);

if(error == ERROR_FILE_NOT_FOUND)
{
size = sizeof (sz);
error = RegQueryValueEx (key2, TEXT ("DeviceDesc"),
0, &type, (LPBYTE)sz, &size);
}
save.push_back (sz);
RegCloseKey (key2);
key2 = NULL;
}
RegCloseKey (key);
key = NULL;
}

RegCloseKey (keyEnum);
RegCloseKey (keyServ);
}
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            欧美国产一区二区在线观看| 亚洲视频在线播放| 狠狠色丁香婷婷综合影院 | 欧美日韩免费一区二区三区| 一区二区三区欧美激情| 亚洲精品无人区| 国产日韩综合| 久久亚洲欧美国产精品乐播| 亚洲欧美综合v| 亚洲欧美综合国产精品一区| 99国产精品国产精品毛片| 欧美大尺度在线| 嫩草国产精品入口| 欧美成人在线免费视频| 亚洲福利视频免费观看| 欧美激情在线| 亚洲精选在线| 亚洲最新在线视频| 亚洲精品乱码久久久久久日本蜜臀| 久久成人免费电影| 另类亚洲自拍| 亚洲国产精品黑人久久久| 亚洲三级影院| 欧美亚洲一区三区| 欧美激情欧美狂野欧美精品| 亚洲午夜久久久久久久久电影网| 亚洲欧美中文字幕| 欧美v亚洲v综合ⅴ国产v| 欧美日韩激情小视频| 国产精品性做久久久久久| 伊人狠狠色j香婷婷综合| 一区二区三区毛片| 免费看亚洲片| 久久成人免费电影| 欧美日韩一区二区精品| 在线精品福利| 久久久精品性| 亚洲免费视频观看| 欧美日韩精品免费在线观看视频 | 亚洲综合丁香| 夜夜爽www精品| 久久久久99| 欧美一区二区久久久| 久久成人这里只有精品| 久久精品国亚洲| 亚洲动漫精品| 亚洲精品国久久99热| 99精品免费视频| 亚洲免费在线观看| 久久综合电影| 欧美少妇一区二区| 国产亚洲一级高清| 在线观看精品视频| 99视频精品全部免费在线| 亚洲欧美日韩精品久久| 亚洲黄网站在线观看| 欧美一区二区日韩| 欧美第十八页| 亚洲成人在线观看视频| 亚洲免费视频中文字幕| 亚洲国产成人精品久久| 久久国产精品亚洲77777| 欧美日韩一区二区三区在线视频| 亚洲第一区在线观看| 欧美99在线视频观看| 久久久精品国产99久久精品芒果| 国产精品一区免费视频| 亚洲欧美日韩在线观看a三区| 亚洲福利视频网| 欧美另类高清视频在线| 在线观看欧美黄色| 亚洲人成免费| 亚洲电影免费观看高清完整版| 一区二区免费在线播放| 中文av一区特黄| 海角社区69精品视频| 亚洲免费在线| 午夜精品国产更新| 国产欧美欧美| 美女爽到呻吟久久久久| 欧美制服丝袜第一页| 国产热re99久久6国产精品| 久久久美女艺术照精彩视频福利播放 | 欧美日韩成人| 亚洲中无吗在线| 久久国产精品黑丝| 久久都是精品| 欧美一区二视频在线免费观看| 午夜亚洲视频| 欧美一区二区三区久久精品| 欧美激情在线免费观看| 久久精品国产欧美激情| 国产精品日本欧美一区二区三区| 久久久亚洲国产美女国产盗摄| 国产在线播放一区二区三区| 欧美一区二区三区在线视频 | 99亚洲一区二区| 亚洲精品久久久一区二区三区| 久久在线免费观看| 欧美精品v日韩精品v国产精品| 亚洲成色777777女色窝| 久久福利影视| 久久人人九九| 永久免费视频成人| 久久亚洲一区二区| 亚洲国产欧美日韩| 亚洲无毛电影| 国产亚洲欧美另类中文| 午夜欧美精品久久久久久久| 亚洲欧美伊人| 亚洲精品1区2区| 欧美日本在线观看| 在线性视频日韩欧美| 一区二区三区欧美在线观看| 韩日在线一区| 免费观看日韩av| 亚洲少妇自拍| 先锋影音国产精品| 在线观看亚洲专区| 国产精品久久久91| 欧美伊人久久久久久午夜久久久久| 久久青草久久| 久久网站热最新地址| 亚洲国产精品久久| 国产精品一区二区黑丝| 午夜精品亚洲一区二区三区嫩草| 亚洲精品乱码久久久久久按摩观| 久久精品国产精品亚洲精品| 亚洲视频在线观看视频| 在线精品亚洲| 亚洲第一二三四五区| 欧美日韩一区在线观看| 老司机精品导航| 亚洲综合色自拍一区| 99国内精品久久久久久久软件| 久久av在线| 亚洲精品久久嫩草网站秘色 | 亚洲美女中出| 韩国视频理论视频久久| 国产精品激情av在线播放| 欧美日韩情趣电影| 国产精品外国| 黄色日韩网站视频| 狠狠色综合一区二区| 国内精品一区二区| 亚洲国产成人高清精品| 亚洲精品美女免费| 亚洲一区二区三区四区在线观看| 亚洲片在线观看| 久久五月天婷婷| 欧美a一区二区| 亚洲日韩视频| 中文无字幕一区二区三区| 欧美在线免费观看亚洲| 免费国产自线拍一欧美视频| 国产精品成人aaaaa网站| 国产亚洲成精品久久| 亚洲日本精品国产第一区| 亚洲性人人天天夜夜摸| 美国三级日本三级久久99| 夜夜嗨av一区二区三区免费区| 性欧美在线看片a免费观看| 国产精品美女一区二区在线观看| 伊人久久大香线蕉av超碰演员| 欧美成人一品| 久久久一区二区三区| 国产精品揄拍一区二区| 亚洲精品视频免费观看| 久久精品在线| 亚洲在线一区| 免费亚洲一区二区| 亚洲国产精品成人精品| 亚洲一区二区三区涩| 一区二区高清在线观看| 欧美日韩国产黄| 中文欧美字幕免费| 亚洲特级毛片| 欧美精品在线观看| 亚洲色图自拍| 亚洲欧美制服中文字幕| 欧美日韩一区自拍| 国产一级精品aaaaa看| 在线视频中文亚洲| 欧美一区二区在线免费观看| 韩国一区电影| 亚洲视频一二区| 亚洲精品一区二区三区婷婷月 | 欧美日韩免费网站| 久久九九全国免费精品观看| 久久黄色小说| 一区二区免费看| 亚洲激情校园春色| 国产精品久久久久9999吃药| 欧美影院成人| 国产精品美女久久久| 久久久久免费| 国产亚洲精品一区二区| 欧美国产精品人人做人人爱| 欧美日韩综合视频网址| 欧美大胆a视频|