2011-07-14 9 views
1

32ビットアプリケーションで開発されたDllを使用しています。 64ビットオペレーティングシステムでいくつかのDLLを使用しようとすると、次のエラーが発生します。次のエラーにより、CLSID {46521B1F-0A5B-4871-A4C2-FD5C9276F4C6}のコンポーネントのCOMクラスファクトリを取得できませんでした:80040154

"CLSID {46521B1F-0A5B-4871-A4C2-FD5C9276F4C6}のコンポーネントのCOMクラスファクトリを取得すると、次のエラー:80040154が原因で失敗しました。

Windowsフォームで同じDllを使用すると問題なく動作します。しかし私がIISに配置すると、私は上記のエラーが発生しています。

私は

.....「そのDLLのにEveryoneのアクセス許可を提供」、「します。regsvr32を使用してSYSWOW64でのDLLの登録」、「有効32ビット・アプリケーション」、「X86に変更プラットフォーム」のようなすべてのpossibilitesを試してみました誰にでも提案することができます、それは私に多くの助けになります。おかげさまで

答えて

1

80040154は「クラスが登録されていません」 64ビットIISが32ビットCOM Dllを呼び出すことができません。 IISがネイティブの64ビットレジストリを探していて、32ビットのレジストリビューにDllを登録しているため、メッセージが表示されます。これは32ビットのDLLだからです。

64ビットWindows上で32ビットWebアプリケーションを実行するようにIISを構成してみてください。 For example.

関連する問題