• 締切済み

IEコンポーネント使用でリンクエラー

Windows XP SP2 + VC++6.0 + IE6 SP2 で IEコンポーネントを使用するプログラムを作成しています。 MFC は使用していません。 このプロジェクトをビルドするとリンクエラーが発生します。 *****.obj : error LNK2001: 外部シンボル "_IID_IHTMLFormElement2" は未解決です *****.obj : error LNK2001: 外部シンボル "_IID_IHTMLInputElement" は未解決です 「mshtml.libをリンクすべし」と言っているサイトがあったのですが mshtml.lib なるファイルが私の環境にはありません。 どこかで入手できるものなのでしょうか。探しましたがわかりませんでした。 また、「mshtml.tlbをインポートすべし」というサイトもあったのですが インポートしても同じリンクエラーが発生します。 ちなみに使用している各ファイルの日付は以下の通りです。 MsHTML.h 2005/04/14 mshtml.tlb 2004/08/05 どうかアドバイスをお願いいたします。

みんなの回答

  • chie65535
  • ベストアンサー率43% (8536/19406)
回答No.3

>VC++6.0を再インストールしましたが 質問者さんが「Visual Studioとは、VC++の事だ」と誤解している可能性があるので追記。 Visual Studioとは ・Web デベロッパーツール(Windows SDKのようなもの。MsHtml.libは、これに入っている) ・Visual Basic ・Visual C# ・Visual C++(通称、VC++) の4つの製品を1つにした製品です。 これらを「バラ売り」しているうちの1つが、質問者さんがお持ちの ・Visual C++(通称、VC++) です。 これで「なぜ、自分のところにMsHtml.libが無いのか?」が理解できた筈ですが、どうでしょうか?

dahlia63
質問者

お礼

chie65535さん、お返事ありがとうございます。 > これで「なぜ、自分のところにMsHtml.libが無いのか?」が理解できた筈ですが、どうでしょうか? ビルドはできたのですが VC++ 6.0 + Windows Platform SDK の環境にも Visual Studio 2008の環境にもmshtml.lib はないのです。 それはまたおいおい調査していきたいと思います。

全文を見る
すると、全ての回答が全文表示されます。
  • chie65535
  • ベストアンサー率43% (8536/19406)
回答No.2

質問者さんは「Windows SDKかVisual Studioをインストールしないとインストールされない」って書いてるのが読めないか、読んでも意味が判らないようなので、IEコンポーネントを使用するのは諦めて下さい。 どうやら、私の回答は質問者さんには難解過ぎたようで、これ以上、私が何を回答したって判っては貰えないでしょう。 >VC++6.0を再インストールしましたが、やはりmshtml.libはありません。 VC++6.0には、元々、mshtml.libは含まれていません。いくら再インストールしても無駄です。 「mshtml.libは、Windows SDKかVisual Studioをインストールしないとインストールされない」と言う文章を100回声に出して読んで下さい。 そして、100回声に出して読んだ後、自分が次に何をすべきか判らない場合は、IEコンポーネントを使用するのは諦めて下さい。

dahlia63
質問者

お礼

chie65535さん、お返事ありがとうございます。 お礼が遅くなりまして申し訳ありません。 Windows Platform SDKをインストールしたところ ビルドできるようになりました。 また、Visual Studio 2008の環境でもビルドできることを確認しました。 ※次のお礼欄に続きます。

全文を見る
すると、全ての回答が全文表示されます。
  • chie65535
  • ベストアンサー率43% (8536/19406)
回答No.1

>MsHTML.h 2005/04/14 ライブラリ内の関数や、ライブラリを使用する上で必要な定数などが定義されたインクルードファイル。 >mshtml.tlb 2004/08/05 Visual Basicで作られたアプリケーションが参照する、タイプライブラリファイル。中身はComponent Object Model情報。 <mshtml.lib Windows SDKかVisual Studioをインストールしないとインストールされない、COMにアクセスする為のライブラリファイル。 なので MsHTML.h 2005/04/14 mshtml.tlb 2004/08/05 mshtml.lib の3つが揃っていないと、VC++からMSHTMLライブラリを使う事は出来ません。

dahlia63
質問者

お礼

chie65535さん、お返事ありがとうございます。 そのmshtml.libが開発環境内に見つからないのです。 (考えにくいですが)mshtml.libだけを削除してしまったのかと思い VC++6.0を再インストールしましたが、やはりmshtml.libはありません。 そして同じリンクエラーが発生します。 chie65535さんの環境には3つのファイルが揃っているということですよね。 ※SPについて書くのを忘れておりました。SP6を適用しています。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • DXライブラリ3D導入方法

    Visual C++ 2008使用 DXライブラリ3D導入時に下記のビルドエラーが発生します。 --------------------------------------------------------------- リンクしています... DxLibAd.lib(mL_Sound.obj) : error LNK2001: 外部シンボル "_CLSID_DirectMusicPerformance" は未解決です。 DxLibAd.lib(mL_Sound.obj) : error LNK2001: 外部シンボル "_IID_IDirectMusicPerformance8" は未解決です。 DxLibAd.lib(mL_Sound.obj) : error LNK2001: 外部シンボル "_CLSID_DirectMusicLoader" は未解決です。 DxLibAd.lib(mL_Sound.obj) : error LNK2001: 外部シンボル "_IID_IDirectMusicLoader8" は未解決です。 DxLibAd.lib(mL_Sound.obj) : error LNK2001: 外部シンボル "_CLSID_DirectMusicSegment" は未解決です。 DxLibAd.lib(mL_Sound.obj) : error LNK2001: 外部シンボル "_IID_IDirectMusicSegment8" は未解決です。 DxLibAd.lib(mL_Sound.obj) : error LNK2001: 外部シンボル "_GUID_StandardMIDIFile" は未解決です。 LIBCMTD.lib(wincrt0.obj) : error LNK2019: 未解決の外部シンボル _WinMain@16 が関数 ___tmainCRTStartup で参照されました。 C:\Documents and Settings\ABC\デスクトップ\test\Debug\test.exe : fatal error LNK1120: 外部参照 8 が未解決です。 ---------------------------------------------------------------- 下記URLに同様の問題に関する質問が投稿されていたのですがVS2005のようですので解決できませんでした。 またリンクが正しくない、といった内容の記述を見かけたのですがリンクの方法がわかりません。 解答お願いします。 参考にさせていただいたサイト http://fatalita.sakura.ne.jp/3DLib/Install/LIB/index.html http://fatalita.sakura.ne.jp/CGI/3DLib2/read.cgi?no=11

  • DLL呼び出しAPのリンクエラーについて

    DLL作成初心者です。 当方で簡単なDLLを作成しました。 試しに、下記の呼び出しAP(EXE)を作成しようと したのですが、リンクエラーになります。 どうしてでしょうか? 呼び出しAP #include <windows.h> int main(){ static HINSTANCE hDLL; hDLL = LoadLibrary(TEXT("DLL_TEST.DLL")); if (hDLL) FreeLibrary(hDLL); return 0; } リンクエラーは下記 IBCD.lib(wincrt0.obj) : error LNK2001: 外部シンボル "_WinMain@16" は未解決です Debug/TEST.exe : fatal error LNK1120: 外部参照 1 が未解決です また上記"_WinMain@16"のライブラリーをリンクさせると SCRNSAVE.LIB(scrnsave.obj) : error LNK2005: _main はすでに test.obj で定義されています SCRNSAVE.LIB(scrnsave.obj) : error LNK2001: 外部シンボル "_ScreenSaverProc@16" は未解決です SCRNSAVE.LIB(scrnsave.obj) : error LNK2001: 外部シンボル "_ScreenSaverConfigureDialog@16" は未解決です SCRNSAVE.LIB(scrnsave.obj) : error LNK2001: 外部シンボル "_RegisterDialogClasses@4" は未解決です Debug/TEST.exe : fatal error 等のエラーになります。 解決策を教えてください。

  • 外部シンボル未解決 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設定しています 何か設定などたりないのでしょうか? よろしくお願いします。

  • 外部シンボル未解決 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設定しています 何か設定などたりないのでしょうか? よろしくお願いします。

  • VC6.0でエラー

    環境:winNT4.0,vc6.0 コンソールアプリケーション作成でデバックモードではエラー、警告は、出ないのですが リリースモードで下記のようなエラーがでます。 エラーを消すにはどうしたらよいのでしょうか? 宜しくお願いします。 --------------------構成: muktc - Win32 Release-------------------- リンク中... muktc.obj : error LNK2001: 外部シンボル "_WSACleanup@0" は未解決です muktc.obj : error LNK2001: 外部シンボル "_WSAStartup@8" は未解決です muktc.obj : error LNK2001: 外部シンボル "_WSAGetLastError@0" は未解決です muktc.obj : error LNK2001: 外部シンボル "_gethostname@8" は未解決です muktc.obj : error LNK2001: 外部シンボル "_NetRemoteTOD@8" は未解決です Release/muktc.exe : fatal error LNK1120: 外部参照 5 が未解決です。 link.exe の実行エラー muktc.exe - エラー 6、警告 0

  • VC++でエラー

    --------------------構成: 01 - Win32 Debug-------------------- コンパイル中... text.cpp リンク中... LIBCD.lib(wincrt0.obj) : error LNK2001: 外部シンボル "_WinMain@16" は未解決です Debug/01.exe : fatal error LNK1120: 外部参照 1 が未解決です。 link.exe の実行エラー 01.exe - エラー 2、警告 0 な、なんだ?? 何が起こったんだ?? 教えてください。

  • DirectX8でコンパイルエラー

    DirectX8実践プログラミングという本についてくるサンプルプログラムを コンパイルしようとしているのですが、 sprite.obj : error LNK2001: 外部シンボル "_D3DXCreateSprite@8" は未解決です sprite.obj : error LNK2001: 外部シンボル "_D3DXCreateTextureFromFileA@12" は未解決です sprite.obj : error LNK2001: 外部シンボル "_Direct3DCreate8@4" は未解決です .\Debug/spriteanimate.exe : fatal error LNK1120: 外部参照 3 が未解決です。 link.exe の実行エラー となってしまいます。DirectXを使っての勉強をはじめたばかりなのですが いきなりつまってしまいました。 おそらくライブラリが見つからないのかと思うのですが ライブラリのディレクトリ設定でC:\mssdk\libも追加されていました。 DirectX8SDKについてくるサンプルはコンパイル出来るのですが どういう理由が考えられるでしょうか?

  • 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 の実行エラー

  • ビルドする時のエラー。(初心者です)

    リンク中... LIBCD.lib(crt0.obj) : error LNK2001: 外部シンボル "_main" は未解決です Debug/MousMov.exe : fatal error LNK1120: 外部参照 1 が未解決です。 link.exe の実行エラー というエラーがでます。 何がいけなくて対処方法はどうすればいいのでしょう。 初めてビルドするときは、エラーは何も出ないのですがもう一回するとこのエラーがでます。どうすればいいんですか?よろしくお願いします。