• 締切済み

fatal error LNK1104: ファイル 'msvcirtd.lib' を開くことができません。

プログラミングも初心者で、このように質問することも初めてですが、よろしくお願いします。 directshowのプログラミングを勉強しようと考え以下のサイトhttp://vision.kuee.kyoto-u.ac.jp/~hiroaki/firewire/directshow.html#choasa_com を参考に、最初のサンプルプログラムをコンパイルしたところ、いくつかエラーがでてきました。 #include <iostream.h>を#include <iostream>に、 return 0 を削除したりして、対処しましたが、 「fatal error LNK1104: ファイル 'msvcirtd.lib' を開くことができません。」 というエラーが解決できません。解決方法を教えていただけないでしょうか。 Visual C++ 2005 ExpressEditionでプログラムを作りました。よろしくお願いします。

みんなの回答

回答No.2

 こんにちは。補足頂きました。  メニューバーの  「ツール」→「オプション」でオプションダイアログを表示  オプションダイアログ内で  +プロジェクト及びソリューション   VC++ディレクトリ  「ディレクトリを表示するプロジェクト」に「ライブラリファイル」を指定  ディレクトリの一覧に、  C:\Program Files\Microsoft Platform SDK\Lib  を追加  で出来ませんか。

回答No.1

 こんばんは。  #include<dshow.h>の下辺りに、  #pragma comment(lib, "msvcirtd.lib")  と書いて見ては如何でしょうか。  此れで無理であれば、msvcirtd.libをパソコン内から検索して見て下さい。もし無ければPlatform SDKがインストールされていないのかもしれません。

hanakogane
質問者

お礼

ご回答ありがとうございます。 新しく追加しましたが、エラーが出てしまいました。 パソコン内を検索したところ C:\Program Files\Microsoft Platform SDK\Lib にファイルが見つかりました。 これはプログラムがこのファイルを読み込んでいない、 パスが通っていないということなのでしょうか? もしよろしければ、設定方法などを教いただけたらと思います。 よろしくお願いします。

関連するQ&A

  • ビデオキャプチャ(VC++超初心者です)

    こんにちわ。 私は最近BorlandからVC++に変えたものです。 そこで、ビデオキャプチャを行うプログラムが載ったサイトのサンプルコードを実行させてみました。  http://vision.kuee.kyoto-u.ac.jp/~hiroaki/firewire/directshow.html このサイトの「DirectShowでビデオキャプチャ」のサンプルコードです。 VC++の手順が違うのか、ライブラリがないのか・・・ エラーは以下のようにでますが、解決しません。 ********************************************************** リンク中... VCap.obj : error LNK2001: 外部シンボル "_CLSID_CaptureGraphBuilder2" は未解決です VCap.obj : error LNK2001: 外部シンボル "_IID_ICaptureGraphBuilder2" は未解決です Debug/VCap.exe : fatal error LNK1120: 外部参照 2 が未解決です。 link.exe の実行エラー VCap.exe - エラー 3、警告 0 ********************************************************** どうしてでしょうか? ご教授お願いします。

  • LNK1120 エラーについて

    このエラーが出たら一体何が問題なんですか? このエラーが出た以降、Visual C++ 2008がずっと使えなくなってしまいました…。ちなみ、この時にビルドで出力されたのは SVCRTD.lib(crtexew.obj) : error LNK2019: 未解決の外部シンボル _WinMain@16 が関数 ___tmainCRTStartup で参照されました。 ■■■\Debug\tr3.exe : fatal error LNK1120: 外部参照 1 が未解決です。 …でした。 あと、入力したものは普通に #include <stdio.h> void main(){ printf ("Hello World"); } です

  • DirectX9.0でlibファイルやincludeファイルが欠落?

    http://www.geekpage.jp/programming/directshow/ このサイトにあるDirectShowによる動画やMP3再生のサンプルを 実行しようとしたところ、 DirectShowを使ってプログラムを書くには、dshow.hというヘッダファイルをincludeしなくてはなりません。 ///////////////////////////////////////////////////////////// #include <dshow.h> 次に、リンカの設定を行わなくてはなりません。 DirectShowを使ったプログラムをコンパイルするには、VisualStudioの「構成プロパティ > リンカ > 入力 > 追加する依存関係」に「strmiids.lib」という項目を追加して下さい ////////////////////////////////////////////////////////////// という説明があったので指示通りにstrmiids.libを追加したら strmiids.libが見つからないと出てきました。 気になってC:\Programfiles内のLibフォルダからそのファイルを 探してみると、strmiids.libというファイルが入っていないと言うこと が判明しました。Includeフォルダからもdshow.hというファイルは 無いと分かりました。 DirectXを入れなおせば解決するかなと思い、 DirectX9.0 2007年6月バージョンから最新版の2007年8月バージョン に入れなおしたのですが、やはり症状は同じでした。 ひょっとしてDirectShowは最新のDirectXではサポートされなくなったのでしょうか・・? もしそうならそれに変わる技術があるということでしょうか・・。

  • C++ の LNK2001エラー

    「sample.obj : error LNK2001: 外部シンボル ""void * __cdecl SetupDiGetClassDevsW(struct _GUID *,wchar_t const *,struct HWND__ *,unsigned long)" (?SetupDiGetClassDevsW@@$$FYAPAXPAU_GUID@@PB_WPAUHWND__@@K@Z)" は未解決です。」というエラーメッセージが出ます。  ソース中に extern "C" { #include "hidsdi.h" #include <setupapi.h> } #pragma comment(lib, "setupapi.lib") #pragma comment(lib, "hid.lib")  の記述をしています。  Visual C++ 2005 Express Edition で [プロジェクト] -> [プロパティ] -> [構成プロパティ] -> [リンカ] -> [追加のライブラリ] のところにディレクトリ設定も行っています。  どのようにしたら解決できるのでしょうか。

  • 外部シンボル未解決 LNK2001

    外部シンボル未解決 LNK2001 今windowsXP32bitからwindowsXP64bitPCでのデバッグを行おうとしています。 開発環境VC++2005です。 しかし、32bitPCでは、エラーなどなかったのですが64bitPCだと次のようなエラーが発生しました。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DP8SP_TCPIP" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DirectPlay8Address" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "IID_IDirectPlay8Address" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DirectPlay8Client" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "IID_IDirectPlay8Client" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultCapture" は未解決です。 5>MainteDlg.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultCapture" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultPlayback" は未解決です。 5>MainteDlg.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultPlayback" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DirectPlayVoiceClient" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "IID_IDirectPlayVoiceClient" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "PIN_CATEGORY_PREVIEW" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "IID_IBasicVideo" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "CLSID_VideoInputDeviceCategory" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "CLSID_SystemDeviceEnum" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "IID_ICreateDevEnum" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "IID_IMediaControl" は未解決です。 とエラーがでています。 一応構成マネージャーの設定は、64x設定しています 何か設定などたりないのでしょうか? よろしくお願いします。

  • DirextXエラー:ファイル'dxerr9.lib'を開くことができません。

    ------------------------------------ fatal error LINK1104: DirextXエラー:ファイル'dxerr9.lib'を開くことができません。 ------------------------------------ Visual Studio.NETで、 上のようなエラーが出て実行できません。 インクルードファイルに D:/Program Files/DX9SDK(April 2005)/Include プロジェクトのプロパティ→リンカ→入力→追加の依存ファイルに dsound.lib dinput8.lib dxerr9.lib d3dx9.lib d3d9.lib d3dxof.lib dxguid.lib 以上2つを設定してあります。 本(DirectX ゲームグラフィックスプログラミング ver2.0)の通りに設定したはずなのですが、なぜかエラーが出ます。 どこが問題なのかまったく分からないので、なにか問題がありそうなところがあったら教えてください。 以下、ビルド環境です。 VAIO VGN-S2 Pentium M (1.60GHz) 256MB MOBILITY RADEON 9200 WinXP Home version 2002 SP2 Visual Studio .NET 2003 よろしくお願いします。

  • 外部シンボル未解決 LNK2001

    外部シンボル未解決 LNK2001 外部シンボル未解決 LNK2001 今windowsXP32bitからwindowsXP64bitPCでのデバッグを行おうとしています。 開発環境VC++2005です。 しかし、32bitPCでは、エラーなどなかったのですが64bitPCだと次のようなエラーが発生しました。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DP8SP_TCPIP" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DirectPlay8Address" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "IID_IDirectPlay8Address" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DirectPlay8Client" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "IID_IDirectPlay8Client" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultCapture" は未解決です。 5>MainteDlg.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultCapture" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultPlayback" は未解決です。 5>MainteDlg.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultPlayback" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DirectPlayVoiceClient" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "IID_IDirectPlayVoiceClient" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "PIN_CATEGORY_PREVIEW" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "IID_IBasicVideo" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "CLSID_VideoInputDeviceCategory" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "CLSID_SystemDeviceEnum" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "IID_ICreateDevEnum" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "IID_IMediaControl" は未解決です。 とエラーがでています。 一応構成マネージャーの設定は、64x設定しています 何か設定などたりないのでしょうか? よろしくお願いします。

  • 外部シンボル未解決 LNK2001

    外部シンボル未解決 LNK2001 今windowsXP32bitからwindowsXP64bitPCでのデバッグを行おうとしています。 開発環境VC++2005です。 しかし、32bitPCでは、エラーなどなかったのですが64bitPCだと次のようなエラーが発生しました。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DP8SP_TCPIP" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DirectPlay8Address" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "IID_IDirectPlay8Address" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DirectPlay8Client" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "IID_IDirectPlay8Client" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultCapture" は未解決です。 5>MainteDlg.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultCapture" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultPlayback" は未解決です。 5>MainteDlg.obj : error LNK2001: 外部シンボル "DSDEVID_DefaultPlayback" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "CLSID_DirectPlayVoiceClient" は未解決です。 5>DirectPlay.obj : error LNK2001: 外部シンボル "IID_IDirectPlayVoiceClient" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "PIN_CATEGORY_PREVIEW" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "IID_IBasicVideo" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "CLSID_VideoInputDeviceCategory" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "CLSID_SystemDeviceEnum" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "IID_ICreateDevEnum" は未解決です。 5>DirectShow.obj : error LNK2001: 外部シンボル "IID_IMediaControl" は未解決です。 とエラーがでています。 一応構成マネージャーの設定は、64x設定しています 何か設定などたりないのでしょうか? よろしくお願いします。

  • C++でのエラー LNK2001

    C++でプログラミング中ビルドしたところ以下のようなエラーが出ました。解決方法がわかりません。どのようにしたら解決できるのでしょうか? ---------------------------------------------------------------- コンパイル中... sample01.cpp リンク中... sample01.obj : error LNK2001: 外部シンボル "__imp__dispose_library" は未解決です sample01.obj : error LNK2001: 外部シンボル "__imp__get_copyright_information" は未解決です sample01.obj : error LNK2001: 外部シンボル "__imp__get_version_information" は未解決です sample01.obj : error LNK2001: 外部シンボル "__imp__initialize_library" は未解決です sample01.obj : error LNK2001: 外部シンボル "__imp__close_reader_writer" は未解決です sample01.obj : error LNK2001: 外部シンボル "__imp__get_last_error_types" は未解決です Debug/Sample01.exe : fatal error LNK1120: 外部参照 6 が未解決です。 link.exe の実行エラー

  • DirectXのdmusici.libについて

    宜しくお願い致します。 ここ2ヶ月ほど、XPSP2及びVC++6.0の環境下で、win32APIを使って簡単なミニゲームを細々と作成してきましたが、たまたまDirectXについて記載してある本を入手した関係で、環境をVC2008Express+DirectXに変更しました。 それ以前にプログラミング経験は無い為、レベルは初心です。 質問: 1)dmusici.libは存在するのか? 2)存在するとしたら入手先はどこか? 3)存在しない場合、エラーを無くすにはどうしたら良いか? とりあえず上記設定で、DirectXのフォルダに入っているサンプルプログラムを動かそうと思ったのですが、 LINK : fatal error LNK1104: ファイル 'dmusici.lib' を開くことができません。 と言われてしまいました。 サンプルプログラムは、 #include <Windows.h> #include <mmsystem.h> #include <d3dx9.h> #pragma warning( disable : 4996 ) #include <strsafe.h> #pragma warning( default : 4996 ) … と記載しています。 色々調べたところ、dmusici.h というインクルードファイルは存在し、dxguid.lib をリンクして使用するらしいのですが、dmusici.lib については、サイトが全て英語だったこともあり、理解出来ませんでした。 以上宜しくお願い致します。

専門家に質問してみよう