解決策
ここで紹介する方法は、.NET で使用する言語に依存しません。VB.NET、C#、J#、C++ など、いずれの場合でも共通です。各言語で開発する際、Visual Studio .NET で「プロジェクトタイプ」で「クラスライブラリ」を選択します。クラスライブラリは、LabVIEW を含むほかのアプリケーションで .NET クラスを使用するためにプロジェクトです。
クラスライブラリを作成し、LabVIEW に追加する手順は以下のとおりです。
- 新規のクラスライブラリを作成します。
- LabVIEW から呼び出しで必要なクラスがあれば、プロジェクトに追加します。
- プロジェクトをビルドします。
- プロジェクトフォルダの中の「Bin」フォルダを開きます。
- <プロジェクト名>.dll というファイルを、LabVIEW の VI があるフォルダにコピーします。
- LabVIEW のメニューから [ツール] >> [上級] >> [.NET アセンブリリファレンス] を選択します。
- 「.NET アセンブリリファレンス」ダイアログの右側にある「追加」ボタンを押します。
- VI があるフォルダにコピーした、.DLL を選択します。
ブロックダイアグラムから、クラスライブラリを参照する手順は以下のとおりです。
- 関数パレットを開きます。
- 全関数 >> 通信 >> .NET を選択します。
- このパレットにある関数を使用して、.NET クラスを使用します。
注意: .NET 関数は、各言語で使用するのと同じように使います。通常「コンストラクタノード」でクラスをインスタンス化し、「.NET プロパティノード」でプロパティにアクセスし、「.NET インボークノード」でメソッドを呼び出します。
LabVIEW で .NET クラスを使用する、一般的な手順は以下のとおりです。
- コンストラクタノードをブロックダイアグラムに配置します。
- 「.NET Constructor を選択」ダイアログで「参照」ボタンを押します。
- 「開くアセンブリを選択」ダイアログで、使用する .DLL を選択します。
- オブジェクトを選択し、オブジェクトをインスタンス化するコンストラクタを選択し、「OK」ボタンを押します。
- これでインボークノードやプロパティノードに渡す、リファレンスができます。
注意: .NET クラスによっては、コンストラクタノードなしで、インボークノード呼び出しだけで使用できるものがあります。