1

私は .net 開発者で、.net アプリケーションで使用する MSHTML v9 用に .tbl と .dll をコンパイルしようとしています。

MSHTML v8 .dll をビルドするための次の手順を見つけました。

start menu -> Windows SDK 7.1 Command Prompt 

cd c:\temp
midl "C:\Program Files (x86)\Microsoft SDKs\Internet Explorer\v8\include\mshtml.idl"
tlbimp mshtml.tlb /out:Microsoft.mshtml.dll /namespace:mshtml /asmversion:8.0

上記はMSHTML v8ではうまく機能しますが、 MSHTML v9で同じことをしようとすると、実行しようとすると「エラー MIDL 2035: 定数式が必要です」というエラーが何百回も発生します。

midl "C:\Program Files (x86)\Microsoft SDKs\Internet Explorer\v9\include\mshtml.idl"

MSHTML v9 がビルドされない理由の手がかりはありますか? どういうわけか私の環境に違いないと思います.Windows 7 64x Ultimateを実行しており、VS2010 Ultimateがあり、Windows SDK 7.1がインストールされています。PATH 変数に次の関連パスがあります。

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE
C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin

どんな助けでも大歓迎です、ありがとう!:)

4

1 に答える 1

0
#include <mshtmdid.h>
#include <mshtmcid.h>
#include <olectl.h>

mshtml.idl の最初の数行。mshtmdid.h ヘッダー ファイルは定数を定義します。このファイルは Windows SDK の include フォルダーにも存在しますが、これは古いバージョンです。最初に Internet Explorer\v9\include ディレクトリを検索するように、INCLUDE 環境変数を修正する必要があります。SET INCLUDE を使用します。

于 2011-07-12T19:18:21.887 に答える