VIをメモリに配置し、IDispatchポインタをVIに返します。

構文

object.GetVIReference(viPath, [password], [resvForCall], [options])

パラメータ

名前タイプ説明
viPath文字列メモリ内に配置されたVIへの完全パス。
password文字列VIがパスワード保護されている場合、編集を行うにはパスワードを入力する必要があります。
resvForCallブール

TRUEの場合、VIは予約と呼ばれる実行状態に設定されます。予約されたVIは、親VIの実行中にサブVIとして呼び出される可能性があるため編集できません。リファレンス時にVIを予約に設定すると、VIの呼び出しの速度が向上します。ただし、この状態では編集モードのプロパティとメソッドはサポートされません。VIの実行予約状態を解除するには、このリファレンスを閉じて、次のように設定して新規リファレンスを開きます。 resvForCallFALSEに設定します。

再入可能VIを使用している場合、LabVIEWがVIを効率的に呼び出すことができるように、このパラメータをTRUEに設定してください。

options符号なし長整数

VIリファレンスの処理方法を指定するビットセットです。 options 以下の値を組み合わせて使用できます。デフォルト値は0x10です。

0x01修正を記録します。VIタイトルにアスタリスク (*) が表示され、VIサーバを使用して行われた変更を示します。修正を記録するためには、VIが編集モードである必要があります。
0x02編集のためにテンプレートを開きます。このオプションは元の.vitファイルを開きます。このオプションを選択しない場合、LabVIEWはテンプレートVIの新規インスタンスを開きます。インスタンスに行われた編集は元の.vitファイルに適用されません。テンプレートファイル以外ではこのオプションの影響はありません。
0x04 以下の条件がすべて満たされている場合、このVIリファレンスを閉じる際に変更を保存するかどうかを確認するメッセージを表示します。
  • リファレンスVIまたはそのサブVIに未保存の変更が含まれている。
  • 同じVIに対する他のリファレンスが開いていない。
  • リファレンスVIをメモリから解放できる。たとえば、他にVIを呼び出すVIがない、VIのフロントパネルが閉じている、VIが開いているプロジェクトライブラリのメンバーでないなどの場合、VIはメモリから解放できます。
0x08再入実行を準備します。ターゲットVIが編集できないように確保して、ターゲットVIが再入可能の場合、このVIリファレンス用に専用のパラレルデータースペースを割り当てます。ターゲットVIが再入可能でない場合、このメソッドはエラーを返します。VIリファレンスを解放すると、LabVIEWは再入可能なターゲットVIをの予約を解除し、パラレルデータスペースの割り当てを取り消します。このオプションを実行メソッドと使用して、複数の再入実行VIのインスタンスを同時に実行します。再入実行VIにターゲットし、このオプションを使用しない場合、このメソッドはVIリファレンス用にパラレルデータスペースを割り当てずにVIにリファレンスを返します。このオプションを使用しない場合、再入可能VI用のこのメソッドへの複数の呼び出しは同じデータスペースのある同じVIへのリファレンスを返し、このメソッドはVIのクローンを作成しません。
0x10リファレンスVIの見つからないサブVIを検索するようユーザにプロンプトを表示します。
0x20

リファレンスVIの見つからないサブVIを検索するためのロードダイアログボックスを表示しません。

メモ このオプションは、LabVIEWが見つからないVIを検索するようにプロンプトを表示するかどうかに影響しません。

Return Value

VirtualInstrument*