プロジェクトの競合を解消する



LabVIEW 2018ヘルプ


発行年月: 2018年3月
製品番号: 371361R-0112
製品情報を参照

ダウンロード (Windowsのみ)


LabVIEW 2015ヘルプ
LabVIEW 2016ヘルプ
LabVIEW 2017ヘルプ
LabVIEW 2018ヘルプ
LabVIEW 2019ヘルプ

プロジェクトには、別の項目と競合する項目が含まれる場合があります。競合とは、LabVIEWプロジェクトに1つのターゲットで同じ修飾名を持つ複数の項目が存在する場合に発生する、潜在的なクロスリンクを指します。たとえば、あるVIが、プロジェクトの既存項目と同じ修飾名を持つ別のパスにあるVIをサブVIとして呼び出した場合、クロスリンクにより競合が発生します。競合項目を検索する.

競合項目を検索する

クロスリンクが存在するかどうかは、項目の完全パスで確認できます。また、プロジェクトルートを右クリックして、ショートカットメニューから表示→完全パスを選択し、パス列を表示して、プロジェクト項目のファイルパスを確認することもできます。プロジェクト内の同じ修飾名を持つ項目は、1つ以外のすべてを変更または削除します。

以下に示すとおり、発生している競合に関する情報を表示するには、競合を解決ボタンをクリックしてプロジェクトの競合を解決ダイアログボックスを開きます。

このダイアログボックスは、プロジェクトメニューからプロジェクト→競合を解決を選択するか、競合項目を右クリックしてショートカットメニューから競合を解決を選択して開くこともできます。

項目ページで競合項目の1つを右クリックして、検索→競合を選択すると、すべての競合項目を表示する競合を検索ダイアログボックスが開きます。競合項目が1つだけの場合は、プロジェクトエクスプローラウィンドウでその項目がハイライト表示されます。検索:競合プロパティを使用して、プロジェクト内の競合をプログラム的に検出することもできます。

メモ  プロジェクトエクスプローラでは、競合する項目に黄色い三角の警告マークが表示されます。

LabVIEWプロジェクトに既に存在する項目と競合するファイルをロードしようとすると、プロジェクト階層との競合ダイアログボックスが表示されます。階層内の項目はプロジェクトの項目または依存項目と同じ修飾名であるため、LabVIEWはファイルを開くことができません。他のプロジェクト項目と競合する依存項目は、それを参照する項目を削除すると同時に依存項目から削除されます。

VIのブロックダイアグラムを開き、新しいサブVIを追加した場合、LabVIEWはVI階層をスキャンします。階層のメンバーのいずれかの名前がプロジェクトに既に存在する項目と同じ修飾名であるが、パスが異なる場合、サブVIはロードされません。プロジェクトに追加して依存項目を更新ダイアログボックスが表示されます。階層を追加するか、ロードをキャンセルして別のサブVIを選択できます。

競合項目を削除する

発呼者VIの階層が、プロジェクトの他の項目の階層と競合する場合は、それらの発呼者VIをプロジェクトから削除して競合を解決することもできます。VIまたはタイプ定義を右クリックし、ショートカットメニューから検索→発呼者または検索→サブVIを選択して、発呼者または呼び出されるサブVIをプロジェクトエクスプローラウィンドウでハイライト表示することができます。プロジェクト内に複数の発呼者またはサブVIがある場合は、発呼者を検索ダイアログボックスまたはサブVIを検索ダイアログボックスが表示されます。プロジェクトルートまたはターゲットを右クリックし、ショートカットメニューから発呼者がない項目を検索を選択すると、発呼者がない項目を検索ダイアログボックスが開き、トップレベル項目がすべて検索されます。競合の原因となっているサブVIを参照する発呼者がない場合は、そのサブVIをプロジェクトから削除します。発呼者やサブVI、また発呼者がない項目は、検索:発呼者検索:サブVI検索:発呼者がない項目プロパティを使用してプログラム的に検索することもできます。

メモ  したがって、競合の原因となっているサブVIをプロジェクトから削除しても、他のVIがそのサブVIを参照している場合、問題は解決されません。この項目は、その項目を呼び出す発呼者をすべてプロジェクトから削除するまで、競合項目となります。プロジェクトからの発呼者がある項目を削除すると、その項目は依存項目へ移動します。

競合項目の名前を変更する

プロジェクト内の他の項目と同じ修飾名の競合項目を削除せずに維持するには、項目の名前を変更するか、プロジェクトライブラリに追加します。

項目の名前を変更すると、その項目を参照する発呼者VIがロードされ、項目名が新しい名前に変更され、項目と発呼者VIの両方が保存されます。発呼者は、新しい名前を参照します。発呼者VIを保存しないと、発呼者はまだ項目を参照するため、オリジナルの項目が依存項目の下に表示されます。

プロジェクトライブラリに含まれているVIの名前は、LabVIEWによってプロジェクトライブラリ名が付加されるため、クロスリンクとなる恐れがありません。修飾名は、ファイル名と所有するプロジェクトライブラリのファイル名が組み合わされたものです。修飾名は、パスまたはファイル名を変更しなくても変更されます。

メモリにあるLabVIEWプロジェクトライブラリが別のプロジェクト項目と競合する場合は、ロードする前に競合するライブラリの名前を少なくとも1つ変更する必要があります。ライブラリを右クリックし、ショートカットメニューからアンロードを選択します。ライブラリがLabVIEWからアンロードされたら、正しいパスからライブラリとVIを再ロードできます。別のプロジェクト項目と競合するライブラリがメモリにロードされていない場合は、そのライブラリを右クリックしてショートカットメニューからロードを選択できます。ライブラリがLabVIEWにロードされたら、ライブラリやその内容を編集して正しいパスからVIをロードできます。

競合項目をリダイレクトする

同じ修飾名を持つ項目が複数あり、ディスクにその名前を持つ項目が1つしかない場合、その項目を右クリックして、ショートカットメニューからプロジェクトによって検出された項目に置換を選択します。間違った場所から項目を呼び出そうとしているVIが、ディスク上の正しい項目の場所を参照するように更新されます。

1つまたは複数のVIが誤ったパスでサブVIを参照している場合、それらのすべての発呼者VIを正しいパスにあるサブVIを参照するように修正することができます。ディスクの正しい場所にあるサブVIを選択するには、プロジェクトエクスプローラウィンドウで競合の原因となっているVIを右クリックして、ショートカットメニューから置換を選択します。表示されるファイルダイアログボックスで、正しいファイルの場所を選択します。誤った場所を参照しているすべての項目が、修正後の正しい場所を参照するように自動的に更新されます。競合項目を参照している各VIをロードすることもできます。ロードの競合を解決ダイアログボックスが表示されます。ロードする発呼者VIを選択します。

メモ  項目がプロジェクトライブラリまたはプロジェクトライブラリのメンバーである場合は、プロジェクトによって検出された項目に置換または置換は無効になります。

見つからない項目を検索する

1つ以上のVIがLabVIEWで検索できない項目を不正に参照している可能性がある場合、プロジェクトルートと右クリックし、ショートカットメニューから見つからない項目を検索を選択します。見つからない項目を検索ダイアログボックスが表示されます。このダイアログボックスでは、LabVIEWで検索できないディスク上の項目を参照しているプロジェクトにあるすべての項目をリストします。項目がプロジェクトになく、プロジェクトの別の項目がその見つからない項目に依存している場合、項目は依存項目の下に表示されます。

不正に宣言されている項目を検索する

LabVIEW内でのライブラリとライブラリが宣言する項目の間の競合を特定して解決することができます。項目がライブラリからの宣言に対応するかどうかを確認するには、プロジェクトルートを右クリックしてショートカットメニューからライブラリに不正に宣言されている項目を検索を選択して不正に宣言されている項目をプロジェクト項目を検索ダイアログボックスに表示します。このダイアログボックスで、特定の項目を選択してライブラリから削除したり、ライブラリに追加することができます。

ヒント  この機能は、フォルダまたはライブラリを右クリックしてショートカットメニューからライブラリに不正に宣言されている項目を選択して実行することもできます。


この記事は役に立ちましたか。

役に立たなかった