Comの呼び出しでClass not registeredが発生する

ColdFusion 2018以降では、ColdFusionの<cfobject type="com">等による COM/DCOM 呼び出しは非推奨の機能となりました。

現在(ColdFusion 2023や2021)でも機能としては残っていますが、インストールする環境に「Microsoft Visual C++ 2008」がインストールされていないとTypeViewer.dllの登録に失敗するため、<cfobject>タグをCOMを呼び出した際などに以下のエラーが発生します。

COM object のインスタンスを生成する際に、例外が発生しました。 この例外の原因 : AutomationException: 0x80040154 - Class not registered。

対応としては、以下の順番で作業を行ってください。

  1. 「Microsoft Visual C++ 2008」のランタイムのインストール
  2. TypeViewer.dllをOSに登録します。管理者権限でコマンドプロンプトを開き、[cf_root]\{インスタンス(cfusion等)}\lib内に置かれているTypeViewer.dllに対して以下のコマンドを実行してください。
    • (コマンド例) regsvr32 c:\ColdFusion2023\cfusion\lib\TypeViewer.dll
      • 64bit版の「Microsoft Visual C++ 2008」ランタイムがインストールされていないと以下のエラーが発生します。このエラーが発生した場合は、ランタイムを確認してください。
  3. ColdFusion 2023|2021|2018 Application Server サービスを再起動します
    • サービスを再起動しないとColdFusionがTypeViewer.dllを利用することができません。

(参考)https://helpx.adobe.com/coldfusion/kb/error-message-class-not-registered-coldfusion.html


 


記事公開日:2023年02月13日
最終更新日:2023年09月05日


x

Sample Modal Window

This is just a sample…

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent suscipit iaculis libero sed tristique. Quisque mollis dolor non tellus placerat vitae sodales lectus porta. Curabitur ut suscipit tellus. Maecenas rhoncus, ante vitae vehicula vestibulum, metus sapien dapibus tellus, et mattis dolor neque vitae nisl. Nullam eleifend ultrices ipsum eget pretium. Curabitur semper metus ut ante adipiscing nec volutpat sem rutrum. Nullam a nisi lacus, non interdum ante. Vivamus ante augue, commodo vel egestas sed, pharetra nec dui. Quisque sed tellus felis. Donec ipsum mauris, sagittis eu accumsan in, aliquam non ipsum.

Vestibulum tempor nunc nec felis scelerisque eget elementum erat dignissim. Ut vel ipsum mollis orci venenatis luctus. Aenean vehicula quam vel quam porttitor ac iaculis elit pulvinar. Proin consequat, ipsum eu venenatis semper, justo turpis posuere tortor, ac placerat metus nisl et lectus. Nulla cursus dui id nunc ullamcorper sed semper nisl lobortis. Aliquam erat volutpat. Phasellus arcu ante, imperdiet in ornare sed, laoreet eu massa.