こんばんは。
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が見つからないらしく、コンパイルできません。
完全にお手上げ状態なので、どなたか助言していただけないでしょうか・・・・。
よろしくお願いします。
dshow.hはDirectShowのヘッダーです。
DirectShowはDirectXのSDKには含まれてません(昔は含まれていましたが)。
現在はPlatform SDKというコンポーネントに含まれていますので、
これをDLしてインストールすればdshow.hが使えるはずです。
googleでPlatform SDKで検索すれば出てきます。
的確な返信ありがとうございました。
早速Platform SDKをインストールして、パスも設定したのですが、
今度はstreams.hが見つからないといわれてしまいました。
少し調べてみると、Directxfilesというのに含まれているようですが、
これは現在のDirectx SDKに相当するものなのでしょうか?
既にインストール済みなのですが何か設定に不備でもあるのかも解りません。
また躓いてしまいました・・・・もう少しお付き合いしていただけると幸いです。
よろしくお願いします。
>今度は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も検索したらきっと出てくると思うのですが。。。
返信ありがとうございます。
うまく伝えられなくてごめんなさい。
先に伝えておく必要があったと思うですが、ソースは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が見つけられないので、それも加えてみます。
なんども返信ありがとうございます。
もう少しよろしくお願いします。
>もう一度整理させていただくと、
> ・ソース: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も手に入れる
事ができるでしょう。
返信遅くなって申し訳ありません。
実はちょっと課題が忙しくて手が回っていません(^_^;)
とりあえず、
http://wwwarailab.sys.es.osakau.ac.jp/~takubo/howto_directshow.html
を発見したので、明日にでも試してみようと思います。
モーヲタさん色々とありがとうございました。
勝手な話ですが、もしお付き合いいただけるようでしたら、もう少しよろしくお願いいた
します。