エラー 3005: LabVIEWのActiveXオートメーションオープンでエラーが発生する

更新しました Jan 18, 2023

使用製品

ソフトウェア

  • LabVIEW 8.2.1 Full
  • LabVIEW 8.2.1 Base
  • LabVIEW Base
  • LabVIEW Full
  • LabVIEW Professional

問題

LabVIEWでActiveXサーバと通信するためにオートメーションオープンVIを使用しており、オートメーションRefnumでActiveXクラスを選択しました。コードを実行すると、次のエラーが発生します。
 

エラーコード3005が名称未設定 1.vi内のオートメーションオープン: 指定オブジェクトは作成不可能です。で発生

このエラーコードは定義されていません。未定義のエラーはさまざまな理由により発生します。たとえば、コードの説明がされていないか、またはエラーコードでない数値をエラーコード入力に配線した可能性があります。

また、エラーがオペレーティングシステムまたはActiveXのように、他社オブジェクトに関連するエラーの場合、未定義のエラーコードが発生します。他社のエラーの場合、エラーコード(3005)またはその16進数表記法(0x00000BBD)をウェブで検索してエラーの詳細を取得できるかもしれません。

 

解決策

LabVIEW 8.2または8.2.1の場合:

これは、LabVIEW 8.2または8.2.1で作成または編集されたVIがLabVIEW 8.5で修正されたことによる既知の問題です。この問題を解決するには、LabVIEW 8.5以降でオートメーションオープンVIを含むコードを再作成する必要があります。LabVIEW 8.2ではコードを保存または編集できないか、エラーが解決しません。

LabVIEW 8.2のプロジェクトで保存されたファイルは、オートメーションオープンVIを使用しなくても問題は発生しません。そのため、LabVIEW 8.5では、オートメーションオープンVIを使用するVIのみを書き換える必要があります。

現在LabVIEW 8.2でプロジェクトを編集している場合は、他のすべてのファイルをLabVIEW 8.5にまとめて一括コンパイルすることができます。ただし、元に戻すことができないためすべてのファイルを新しいフォルダにコピーすることをお勧めします。次に、LabVIEW 8.5では、ツール>>詳細設定>>一括コンパイルに移動して先ほど作成した新しいフォルダを選択します。これにより、すべてのファイルが1つずつ開かれ、LabVIEW 8.5で再保存されます。そこから、LabVIEW 8.5でプロジェクト全体を実行できます。



 

LabVIEW 8.5以降の場合:

ActiveXオブジェクトが見つからない場合も、エラー3005が発生します。状況によっては、ActiveXオブジェクト名が変更されている可能性があります。この問題を解決するには、ActiveXオブジェクトを再挿入する必要があります。たとえば、Adobe Readerで発生する可能性があります。ActiveXコンテナ制御器または定数を右クリックしてActiveXオブジェクトを挿入...を選択します。

サーバ名、たとえばAdobe PDF Readerに移動して、OKをクリックします。


ブロックダイアグラムで、インボーグノードのメソッド名を再選択する必要があります。メソッド名を左クリックして、希望のメソッドを選択します。