[解決済み] COMExceptionエラー80040154を修復する方法は?
質問
動作中のC#プロジェクトを64ビットのWindows 7マシンから32ビットのXPマシンに移動すると、次のようなエラーが発生しました。
Retrieving the COM class factory for component with CLSID {681EF637-F129-4AE9-94BB-618937E3F6B6} failed due to the following error: 80040154.
681EF637-F129-4AE9-94BB-618937E3F6B6
がレジストリにないので正しくインストールされていませんが、これは以前64bitのWindows7マシンで問題になっていたのと同じIDです。
64ビットWindows 7マシンでのこのエラーの解決策が見つかりました。 こちら (プラットフォームターゲットをx86に変更)しかし、32ビットのXPマシンでは、この問題は解決されません。
に関連するDLLを見つけるにはどうすればよいですか?
681EF637-F129-4AE9-94BB-618937E3F6B6
あるいは、この例外を修復するにはどうしたらよいでしょうか?
解決方法は?
DLLを見つけるには、64ビットマシンでレジストリを開いてください。以下のキーを探します。
HKEY_CLASSES_ROOT\CLSID\{681EF637-F129-4AE9-94BB-618937E3F6B6}\InprocServer32
. このキーには、デフォルト値としてDLLのファイル名が設定されています。
64ビットマシンでプロジェクトをx86用に再コンパイルして問題を解決した場合、レジストリの通常の場所ではなく、32ビット部分を探す必要があります。これは
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\CLSID\{681EF637-F129-4AE9-94BB-618937E3F6B6}\InprocServer32
.
DLLが32ビット用にビルドされている場合は、32ビットマシンで直接使用することができます。64ビット用にビルドされている場合は、ベンダーに連絡して32ビット版を入手する必要があります。
DLLを入手したら、c: \windowssystem32regsvr32.exe を実行して、DLLを登録してください。
関連
-
[解決済み】「The breakpoint will not currently be hit」を改善するには?このドキュメントにはシンボルが読み込まれていません。" という警告はどうすれば改善されますか?
-
[解決済み】プラットフォームが同じでも「不正なフォーマットでプログラムを読み込もうとしました。
-
[解決済み] CLSID {XXXX} を持つコンポーネントの COM クラスファクトリの取得は、次のエラーにより失敗しました: 80040154。
-
[解決済み] WPFで角丸ボタンを作成する/作るには?
-
[解決済み] LINQ: フィルタリング基準で SingleOrDefault と FirstOrDefault() を使用する場合
-
[解決済み] パッケージのダウングレード警告を検出(dotnet core, vs 2017)
-
[解決済み] enumを列挙するには
-
[解決済み] .NET Coreと.NET Standard Class Libraryのプロジェクトタイプの違いは何ですか?
-
[解決済み] .Any() vs .Count() > 0のどちらのメソッドがより良いパフォーマンスを発揮しますか?
-
[解決済み】ネストされたディレクトリを安全に作成するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] EF Coreのadd-migrationのビルドに失敗しました。
-
[解決済み] フレームワークとアーキテクチャの違いは何ですか?[クローズド]
-
[解決済み] asp.netでWebサービスのタイムアウト時間を長くする方法は?
-
[解決済み] ネットワークの位置からアセンブリをロードすることはできません
-
[解決済み] 権限 '*' を持つ SSL/TLS の安全なチャネルを確立できませんでした。
-
[解決済み] CryptographicException「キーセットが存在しない」、ただしWCF経由に限る
-
[解決済み] System.Timers.Timer vs System.Threading.Timer
-
[解決済み] LINQクエリでToList()とToArray()のどちらを呼び出すのが良いですか?
-
[解決済み] Microsoft.ACE.OLEDB.12.0' プロバイダがローカルマシンに登録されていません。
-
[解決済み] Visual Studioのコンパイルエラー "mismatch between processor architecture "を修正するにはどうしたらいいですか?