VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2004/05/01(Sat) 15:40
投稿者アルエ
Eメール
URL
タイトルVBでDirectDrawを使用した場合のマルチディスプレイの対応について質問

はじめまして、こんにちは。
現在Viual Basic6.0でDirectX7のDirectDrawを使用して描画関係のプログラムを作っているんですが、少し悩んでいることがあります。
ビデオカードの設定を利用してマルチデスクトップ(2ディスプレイ)上で動作する描画プログラムというのを目指して開発しているんですが、
プライマリ領域では正常に動作するのですが、セカンダリ領域だとDirectDrawの機能が上手く働かなくなってしまいます。
具体的にはDirectDrawのBlt関数でBMPの表示を行っているのですが、描画部分が少しでもセカンダリ領域に入ると描画の処理が行われなくなってしまいます(実行ファイル自体は動作します)

例としてAとB2つのディスプレイがあったとしてAをプライマリ、Bをセカンダリとして実行するとAのディスプレイ上では正しく動作してBのディスプレイ上では正しく動作しません。
設定を逆にしてBをプライマリ、AをセカンダリにするとやはりBでは上手く動作しますが、Aでは動作しなくなります。
自分の検証した範囲だとこれぐらいが限界で頭を痛めています。
Visual BasicにDirectXを組み込む際は描画領域に何か制約があるものなんでしょうか?
もし何か知ってる方がいらっしゃいましたらご教授よろしくお願いします。


・開発環境
-OS:Windows2000
-開発ソフト:VisualBasic6.0
(描画部分にDirectX7のDirectDrawを使用)
-グラフィックカード
nVIDIA GeforceFX5700
(nViewモード:DualView)
ディスプレイ1(アナログモニター)解像度:1024×768
ディスプレイ2(デジタルモニター)解像度:1600×1200


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -