Error 1172: LabVIEWで.NET例外が発生

更新しました Dec 10, 2025

使用製品

ソフトウェア

  • LabVIEW

問題

  • LabVIEWは.NET例外をどのように処理しますか?
  • LabVIEWで.NETアセンブリを呼び出そうとした際、次のエラーが発生しました。
  • .NETプロパティノードからプロパティにアクセスしようとすると、以下のエラー1172が表示されます。どのように解決できますか?

 

エラーコード1172が不明位置で発生

考えられる理由:

LabVIEW:

外部アセンブリで.NET例外が発生しました。このエラーを解決する方法については、以下の例外(太字)をコピーしてMicrosoft Developer Network (MSDN)ウェブサイト等で検索してください。

 

 

解決策

.NETオブジェクトのプロパティやメソッドを呼び出す際に発生した例外は、LabVIEWのエラー1172に変換されます。このエラーは、LabVIEWが呼び出されたAPIから.NET例外を受け取ったことを意味します。エラーの根本的な原因は.NET例外メッセージに関連しており、1172はあらゆる.NET例外に対する汎用的なエラーコードです。

 

この記事では、以下の手順を詳しく説明します:

  1. .NET例外メッセージを取得する方法
  2. .NET例外エラーのトラブルシューティング方法
 

.NET例外メッセージを取得する方法

 

  • LabVIEW 8.0以降

LabVIEW 8.0以降ではエラーメッセージに追加情報が含まれるようになり、Error ClusterのSource文字列に.NET例外メッセージプロパティが配置されます。


この例外メッセージは、手動のエラー処理を実装した場合のみアクセスできます。エラーハンドリング内でError ClusterのSource要素のバンドルを解除することで、追加のエラー情報を確認できます。
詳細についてはLabVIEWでのエラーを処理するを参照してください。

 

  • LabVIEW 7.x

LabVIEW 7.xでは、追加の.NET例外情報を取得することはできません。次のセクションに進み、エラーのトラブルシューティングを行ってください。

 

.NET例外エラーのトラブルシューティング

 

  1. .NETアセンブリが正しいディレクトリに保存されていることを確認します。
    • スタンドアロンVI(プロジェクト外)の場合、アセンブリはLabVIEW.exeが含まれているディレクトリに保存する必要があります。通常はC:\Program Files (x86)\National Instruments\LabVIEW 20xxxxはバージョン番号)です。
    • プロジェクト内のVIの場合、アセンブリをプロジェクトディレクトリ、または、そのプロジェクトのサブディレクトリに保存します。
    • ビルドしたアプリケーション(.exe)の場合、アプリケーションビルダは呼び出されているアセンブリをdataサブディレクトリに自動的に保存します。これをアプリケーションと一緒に配布する必要があります。
    • 共有アセンブリ(ネットワークドライブ上を含む)は、グローバルアセンブリキャッシュ(GAC)にインストールする必要があります。詳細はMicrosoftの方法: アセンブリをグローバル アセンブリ キャッシュにインストールする記事を参照してください。
  2. LabVIEW 7.xの場合、.NETアセンブリはLabVIEWのリファレンスとして追加します。
    Tools >> Advanced >> NET Assembly Referencesを選択し、Addボタンをクリックしてアセンブリの場所を指定します。
  3. ビルドしたアプリケーションを配布する場合、ターゲットPCに対応する.NET Frameworkがインストールされていることを確認してください。
    方法: インストールされている .NET Framework のバージョンを確認するというMicrosoft記事を参照してバージョンを確認してください。必要な.NET Frameworkがインストールされていない場合は、.NET Framework のダウンロードページからインストールできます。
  4. プローブツールを使用して、.NETコンストラクタノードVIで作成された.NETオブジェクトリファレンスが有効であることを確認します。
  5. サードパーティDLLを使用している場合、そのDLLが問題の原因である可能性があります。その際にLabVIEWでは汎用的なエラーコードとして示されます。
    • 別の言語で.NET DLLを呼び出して、その該当の関数が呼び出せるか確認してください。
    • 別のアクセススコープを持つ別の.NETアセンブリで呼び出すことも検討してください。
    • 別の言語でもエラー発生した場合、アセンブリの開発者に連絡して追加のトラブルシューティングを依頼してください。
  6. 使っている.NET機能がLabVIEWでサポートされていることを確認します。