SDK中那個函數可以得知VGA卡是否支援Overlay? |
尚未結案
|
Chenbc
一般會員 發表:31 回覆:33 積分:12 註冊:2004-01-06 發送簡訊給我 |
|
kurorowu
一般會員 發表:0 回覆:6 積分:1 註冊:2004-03-27 發送簡訊給我 |
請試試:
#include <ddraw.h> bool DetectOverlayCapability(void) { LPDIRECTDRAW lpDirectDraw; DDCAPS ddcaps; HRESULT hr; ZeroMemory(&ddcaps, sizeof(ddcaps)); ddcaps.dwSize = sizeof(ddcaps); hr = DirectDrawCreate(NULL, &lpDirectDraw, NULL); if (FAILED(hr)) return false; hr = lpDirectDraw->GetCaps(&ddcaps, NULL); if (FAILED(hr)) return false; if (!(ddcaps.dwCaps & DDCAPS_OVERLAY)) return false; return true; }發表人 - kurorowu 於 2004/05/13 04:39:11 發表人 - taishyang 於 2004/05/13 14:14:14 |
Chenbc
一般會員 發表:31 回覆:33 積分:12 註冊:2004-01-06 發送簡訊給我 |
|
kurorowu
一般會員 發表:0 回覆:6 積分:1 註冊:2004-03-27 發送簡訊給我 |
引言: 請教Kurorowu, 我試了一下LPDIRECTDRAW 是在那個.h檔內define. Windows SDK似乎也找不到.像這種情形是怎麼來找才好, 免下次又碰到.(我是把LPDIRECTDRAW 反白後按F1及在help內paste出來找的.) 請指教... 發表人 - chenbc 於 2004/05/13 16:14:41從 http://msdn.microsoft.com/library/ 使用搜尋(Search)功能尋找 LPDIRECTDRAW. 點選清單的第一項 "IDirectDraw7 (Direct Draw 7 Archive)". 在網頁最下方有一行文字說明: Header: Declared in ddraw.h. 如果您問的是怎麼找到"如何得知VGA卡是否支援Overlay"的方法: 1. 由於硬體是否支援 Overlay, 是由 driver 負責回報的. 所以, 要想辦法得知 driver 是否支援 Overlay. 2. 以 "Overlay" 為關鍵字搜尋 DirectX 9 SDK 的說明文件, 可以找到 "DDCAPS Structure" 的其中一個 flag "DDCAPS_OVERLAY" 的說明為 "Display hardware can overlay." 3. 到 DirectX SDK 的範例程式中, 搜尋 DDCAPS 的用法就可以了(ex: Samples\C \DirectShow\VMR\TxtPlayer\AllocPresenter.cpp). |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |