DirectX SDKのインストール後の設定について

[戻る]
aki 2007/01/18(木) 19:07:13
こんばんは。
DirectX SDK を必要とするソフトをコンパイルしたく、SDKをDL後、インストールを
したのですが、未だにコンパイルできません。

こちらの環境はVisual Stuido 2005で、ソフトはC++で書かれています。
色々と検索してVC++ディレクトリのパスを追加する必要があることを知りました。
そして、
 ○実行可能ファイル 
  C:\Program Files\Microsoft DirectX SDK (December 2006)\Utilities\Bin\x86
 ○インクルードファイル
  C:\Program Files\Microsoft DirectX SDK (December 2006)\Include
 ○ライブラリ ディレクトリ
  C:\Program Files\Microsoft DirectX SDK (December 2006)\Lib\x86
を設定しました。
さらに、C:\Program Files\Microsoft Visual Studio 8
\VC\VCProjectDefaults\corewin_express.vsproject
の
 AdditionalDependencies="kernel32.lib"
を
 AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib 
 comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
へ変更し、
 C:\Program Files\Microsoft Visual Studio 8
\VC\VCWizards\AppWiz\Generic\Application\html\1041\AppSettings.htm
の
    WIN_APP.disabled = true;
    WIN_APP_LABEL.disabled = true; 
    DLL_APP.disabled = true; 
    DLL_APP_LABEL.disabled = true;
をコメントアウトしました。

しかしながら、未だにdshow.hが見つからないらしく、コンパイルできません。

完全にお手上げ状態なので、どなたか助言していただけないでしょうか・・・・。
よろしくお願いします。

モーヲタ 2007/01/18(木) 21:04:05
dshow.hはDirectShowのヘッダーです。
DirectShowはDirectXのSDKには含まれてません(昔は含まれていましたが)。
現在はPlatform SDKというコンポーネントに含まれていますので、
これをDLしてインストールすればdshow.hが使えるはずです。
googleでPlatform SDKで検索すれば出てきます。

aki 2007/01/19(金) 13:20:48
的確な返信ありがとうございました。

早速Platform SDKをインストールして、パスも設定したのですが、
今度はstreams.hが見つからないといわれてしまいました。
少し調べてみると、Directxfilesというのに含まれているようですが、
これは現在のDirectx SDKに相当するものなのでしょうか?
既にインストール済みなのですが何か設定に不備でもあるのかも解りません。

また躓いてしまいました・・・・もう少しお付き合いしていただけると幸いです。
よろしくお願いします。

モーヲタ 2007/01/19(金) 22:07:51
>今度はstreams.hが見つからないといわれてしまいました。
ではIncludeしてみては?こんな感じ?
#ifdef _DEBUG
#define DEBUG
#endif
#include <streams.h>

っというか、dshow.hをインクルードしていれば
#include <streams.h>
はしなくても良かったような・・・・
の前に何がしたいのですか?何がしたいかによって
必要なヘッダーやライブラリも変わってくるかもしれません。

ちなみに#include <streams.h>と同時に
strmbase.lib(Release版)と
strmbasd.lib(Debug版)
をリンクしておかないとコンパイラ・・・いやリンカに怒られます。

>現在のDirectx SDKに相当するものなのでしょうか?
言っている意味がよく分かりません。
「streams.hが現在のDirectx SDKに相当するもの」と解釈しましたが
意味が分かりません。

>既にインストール済みなのですが何か設定に不備でもあるのかも解りません。
ネットでは調べられないのですか?googleでPlatform SDKを
検索したくらいですからstreams.hも検索したらきっと出てくると思うのですが。。。

aki 2007/01/20(土) 16:30:07
返信ありがとうございます。

うまく伝えられなくてごめんなさい。
先に伝えておく必要があったと思うですが、ソースはVS6.0で書かれているビデオ会議ソ
フトです。
それを2005環境でコンパイルというか、ビルドしたいのですが、先のようなエラーで
うまく、進まないでいるんです・・・・。

>>現在のDirectx SDKに相当するものなのでしょうか?
>言っている意味がよく分かりません。
>「streams.hが現在のDirectx SDKに相当するもの」と解釈しましたが
>意味が分かりません。
 説明不足でごめんなさい。
 googleでstreams.hを検索した結果、それがdirectxfilesに含まれていることを知りま
した。
 しかしながら、調べてみるとdirectxfilesは既に配布されておらず、DirectxSDKのみ
 配布されていたので、DirectxSDKに統合されたと考え、上記のような書き込みに至りま
した。
 
もう一度整理させていただくと、

 ・ソース:VS6.0+DrectxSDK8.1環境でC++で書かれたビデオ会議ソフト
 ・今の環境:VS2005+DirectX SDK(December 2006)+Platform SDK for Win Server 
2003 SP1
 ・パス等の設定:1の書き込みの通り
 ・現状:"include ファイルを開けません。streams.h" と怒られます。


後で返信にあったようにインクルードを書き換えてみることと、
今のソースにはstrmbase.libが見つけられないので、それも加えてみます。

なんども返信ありがとうございます。
もう少しよろしくお願いします。

モーヲタ 2007/01/20(土) 23:13:52
>もう一度整理させていただくと、
> ・ソース:VS6.0+DrectxSDK8.1環境でC++で書かれたビデオ会議ソフト
> ・今の環境:VS2005+DirectX SDK(December 2006)+Platform SDK for Win 
>Server 
>2003 SP1
> ・パス等の設定:1の書き込みの通り
> ・現状:"include ファイルを開けません。streams.h" と怒られます。
>後で返信にあったようにインクルードを書き換えてみることと、
>今のソースにはstrmbase.libが見つけられないので、それも加えてみます。

・・・え〜、私の2007/01/19(金) 22:07:51の書き込みに
【「streams.h」で検索すれば出てくると思うのですが・・・】
とレスしたんですが検索しました?
上記のような質問がまだあると言うことは検索されてませんね?

googleで「streams.h」で検索したら検索結果の一番最初のページでいきなり
見つけられましたよ!!!!!!!!!!!!!!!!!!!!
それもstreams.hもstrmbase.libも!!!!!!!!!!!!!
ちゃんと調べてください。

あとはそのページを見ればstreams.hもstrmbase.libも手に入れる
事ができるでしょう。

aki 2007/01/24(水) 22:24:53
返信遅くなって申し訳ありません。

実はちょっと課題が忙しくて手が回っていません(^_^;)
とりあえず、 
http://wwwarailab.sys.es.osakau.ac.jp/~takubo/howto_directshow.html 
を発見したので、明日にでも試してみようと思います。

モーヲタさん色々とありがとうございました。
勝手な話ですが、もしお付き合いいただけるようでしたら、もう少しよろしくお願いいた
します。

古いスレッドには追加発言できません。