注釈: この記事は、Tutorial: Creating Wrapper VIs for C/C++ DLL functions using the Import Shared Library Wizard を翻訳したものです。内容に相違がある場合、英語の資料が正文となっております。
このチュートリアルでは共有ライブラリをインポートウィザードを使用して、C/C++のDLLを呼び出す作業を効率化する手順を紹介します。このウィザードは、インポートするDLLのために構成されたライブラリ関数呼び出しノードを含むラッパーVIを自動的に作成します。
共有ライブラリをインポートウィザードについての詳細は下記の資料に記載されています。
LabVIEWヘルプ: 共有ライブラリファイルから関数をインポートする
添付されているサンプルDLL、PassingDataSampleDLL.dll、には、整数、配列や文字列からポインタや構造体(クラスタ)まで、様々なタイプの引数や戻り値の型が使用された複数の関数が含まれています。
<Tutorial>\WrapperVIs
に変更し、VIがuser.lib
に追加されることを防ぎます。
この記事では、共有ライブラリをインポートウィザードを使用してC/C++のDLLのためのラッパーVIを自動的に作成する方法を紹介しました。
これらのVIの入力と出力や、Configure VIs and Controlsでの呼び出しオプションは、手動で各VIに含まれるライブラリ関数呼び出しノードの構成して変更できます。これは、配列、ポインタや構造体を戻す関数で有用です。
共有ライブラリをインポートウィザードは、構造体や、関数のヘッダでポインタとしてリファレンスされている配列を戻す関数などの一部の関数には適応していません。これらのケースに対応する方法は、下記の記事を参照してください。
様々なデータタイプを含む C/C++ の DLL を LabVIEW から呼び出す
PassingDataSampleDLL.dll
PassingDataSampleDLL.h
WrapperVIs.zip