- ベストアンサー
DirectX対応プログラム
VC6.0を使用してDirectXに対応したUSBカメラのプログラムを 作成しています。サンプルソースなどをダウンロードして ビルドを実行すると、 「error LNK2001: 外部シンボル "_IID_ISampleGrabber" は未解決です」 「fatal error LNK1120: 外部参照 1 が未解決です。」 のようなエラーメッセージが出てしまうのですが、どのように回避 すればよいでしょうか? いろいろ検索するとリンクパスの設定はあっているのか?など でましたがうまくいきません。初心者のため漠然としていますが、 同じ症状が出て解決した方がいらしましたら回答よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
サンプルソースは誰でもダウンロードできるのでしょうか 可能ならダウンロード先を教えてもらったほうが早いかもしれません
その他の回答 (2)
- php504
- ベストアンサー率42% (926/2160)
間違えました #pragma comment (lib,"strmiids.lib") です
お礼
回答ありがとうございます。質問のエラーはでなくなったのですが、 今度は違うエラーがでてしまうようになりました。 下のお礼欄に書きましたのでもしお分かりになるようであれば助けてください。
- php504
- ベストアンサー率42% (926/2160)
プログラムの頭に #pragma link "strmiids.lib" を記述してみたらどうでしょう またはプロジェクトの設定-リンクの「オブジェクト/ライブラリ モジュール」にstrmiids.libを追加でもいいです
お礼
早速の回答ありがとうございました。 あれからまたいろいろ調べたところ、Windows SDKのBaseClasses の中身をコンパイルしてできる"strmbasd.lib"をリンクさせれば いいというようなことが書いてあったので試してみたら今回の エラーはでなくなったのですが、今度は MSVCRTD.LIB(dllsupp.obj) : error LNK2005: __fltused はすでに StdAfx.obj で定義されています MSVCRTD.LIB(dllsupp.obj) : warning LNK4006: __fltused は StdAfx.obj で定義されています; 2 つ目以降の定義は無視されます と出てしまいました。もしお分かりになるようでしたら教えてください。
お礼
サンプルはここから取得しました。 http://www.geocities.co.jp/SiliconValley/7406/tips/dshow/DShowVBHelper150A.lzh
補足
質問者です。おかげさまで自己解決できました。 DIRECTX SDKのバージョンの問題でした。 古いバージョンを入れたらすんなり動きました。 漠然とした質問に対してお付き合いいただき本当にありがとう ございました。