VI-Referenz öffnen - Funktion
- Aktualisiert2025-07-30
- 10 Minute(n) Lesezeit
Gibt eine Referenz auf ein VI, ein benutzerdefiniertes Element oder eine globale Variable aus, die durch einen Pfad zu der Datei auf dem Datenträger, einen Namens-String oder eine vorhandene Referenz angegeben ist.

Ein-/Ausgänge
Typbezeichner-VI (Referenz, nur für Typ)
—
Typbezeichner-VI (Referenz, nur für Typ) legt das Anschlussfeld des VIs und den Datentyp der VI-Referenz fest. Der tatsächliche Wert an diesem Eingang wird ignoriert. Per Voreinstellung wird eine allgemeine VI-Referenz ausgegeben. Wenn Sie den Ausgang VI-Referenz dieser Funktion mit dem Knoten "Aufruf über Referenz" oder "Asynchronen Aufruf starten" verbinden, muss an diesen Eingang eine strikt typisierte VI-Referenz angelegt werden. Wenn Sie eine Referenz auf ein strikt typisiertes VI mit diesem Eingang verbinden, muss das Anschlussfeld des betreffenden VIs mit dem Anschlussfeld des unter VI-Pfad angegebenen VIs übereinstimmen.
Anwendungsreferenz (lokal)
—
Anwendungsreferenz ist eine Referenz auf eine Anwendungsinstanz von LabVIEW. Per Voreinstellung arbeitet LabVIEW mit der Anwendungsinstanz des aufrufenden VIs. Mit der Funktion Anwendungsreferenz öffnen werden Referenzen auf andere Anwendungsinstanzen ausgegeben. Wenn Sie mit dem Eingang Anwendungsreferenz eine Referenz auf eine andere Anwendungsinstanz verbinden, wird am Ausgang VI-Pfad der Speicherort der Anwendungsinstanz angegeben.
VI-Pfad
—
vi path akzeptiert einen Pfad zu dem VI, auf das Sie verweisen möchten, eine Zeichenkette mit dem Namen des VIs, auf das Sie verweisen möchten, oder einen VI-Verweis auf das VI, auf das Sie verweisen möchten. Bei Pfadangaben wird im Arbeitsspeicher nach einem VI gesucht, das vorher von diesem Pfad geladen wurde. Wenn Sie das VI anhand seines Namens angeben, muss dieser mit dem vollständigen Namen des VIs im Speicher auf dem ausgewählten Rechner übereinstimmen. Wenn kein VI im Speicher gefunden wird, versucht LabVIEW, das VI von der Festplatte zu laden. Ein Fehler tritt auf, wenn LabVIEW die Datei nicht finden kann. Der VI-Pfad kann auch relativ zum aufrufenden VI angegeben sein oder relativ zum Programmverzeichnis, wenn das aufrufende VI nicht gespeichert ist. Hinweis
Wenn der Eingang Anwendungsreferenz auf eine Anwendung im Netzwerk verweist, wird der Pfad auf dem Netzwerkrechner auf das Dateisystem dieses Rechners bezogen. Der Pfad ist in der systemüblichen Schreibweise anzugeben. Wenn der Pfad für ein anderes System gilt, wird die Schreibweise automatisch angepasst. Um beispielsweise von einer Windows-basierten Anwendung auf ein VI unter Linux unter My HD/LabVIEW Vis/foo.vi zu verweisen, verwenden Sie den Pfad My HD:\LabVIEW Vis\foo.vi. Um ein VI auf einem Windows-Computer unter C:\labview\foo.vi aus einer Linux-Anwendung zu referenzieren, geben Sie den Pfad C/labview/foo.viein. Wenn Sie einen Pfad verkabeln oder sowohl VI- als auch Anwendungsreferenzen verkabeln, wartet LabVIEW, bis die Benutzeroberfläche inaktiv ist, um das VI von der Festplatte zu laden. Wenn Sie einen Namensstring oder eine VI-Referenz ohne Anwendungsreferenz verdrahten, muss LabVIEW nicht warten, bis die Benutzeroberfläche im Leerlauf ist, da es kein VI von der Festplatte lädt. Es wird lediglich der Speicher nach einem VI mit dem angegebenen Namen durchsucht. Hinweis LabVIEW unterstützt nicht die Möglichkeit, einen Verweis auf ein Klon-VI über einen Namen mit der Funktion VI-Verweis öffnen zu öffnen. Wenn Sie diese Funktion zum Öffnen einer Referenz auf eine VI-Kopie nutzen, kann LabVIEW abstürzen.
Optionen
—
Optionen legt die Eigenschaften des über VI-Referenz angegebenen VIs fest (u. a. ob das VI asynchron aufgerufen wird). Die Standardeinstellung lautet 0x0. Die Optionen werden durch Kombination folgender Options-Flags ausgewählt.
Fehler (Eingang, kein Fehler)
—
Fehler (Eingang) beschreibt Fehlerbedingungen, die vor der Ausführung des Knotens auftreten. An Fehler (Eingang) werden Standardfehlerdaten übergeben.
Passwort ("")
—
Passwort ist das Passwort des VIs, für das eine Referenz erstellt werden soll. Zum Bearbeiten eines passwortgeschützten VIs ist mit diesem Eingang das Passwort des VIs zu verbinden. Wenn Sie das richtige Passwort mit der Funktion verbinden, gibt diese eine authentifizierte Referenz auf das VI aus. Bei Angabe eines falschen Passworts gibt die Funktion einen Fehler und eine ungültige VI-Referenz aus. Bei nicht passwortgeschützten VIs wird dieser Eingang ignoriert. Wenn Sie das Passwort eine passwortgeschützten VIs nicht angeben, gibt die Funktion "VI-Referenz öffnen" zwar eine gültige Referenz aus, aber das VI kann damit nicht bearbeitet werden.Hinweis Sie können auch eine VI-Server-Referenz verwenden, um einen authentifizierten Verweis auf ein VI zu erhalten.
VI-Referenz
—
VI-Referenz ist die dem angeforderten VI zugewiesene Referenz. Wenn die Funktion nicht ordnungsgemäß ausgeführt wird, lautet VI-Referenz Keine Referenz.
Fehler (Ausgang)
—
Fehler (Ausgang) enthält Angaben zum Fehler. Dieser Ausgang ist ein Standardausgang zur Fehlerausgabe. |
Die Funktion "VI-Referenz öffnen" bereitet eine VI-Referenz für dynamische Aufrufe durch die Knoten Aufruf über Referenz, Asynchronen Aufruf starten und Asynchronen Aufruf abwarten vor. Mit Hilfe der Eingänge Typbezeichner-VI (Referenz, nur für Typ) und Optionen können Sie eine Referenz für die dynamische Ausführung des entsprechenden VIs vorbereiten.
Erstellen von Referenzen für dynamische VI-Aufrufe
Wenn das angegebene VI dynamisch mit dem Knoten "Aufruf über Referenz" oder "Asynchronen Aufruf starten" aufgerufen werden soll, sind folgende Parameter zu berücksichtigen:
- Typbezeichner-VI (Referenz, nur für Typ)—Verbinden Sie diesen Eingang mit der Referenz auf ein strikt typisiertes VI.
- Optionen—Gibt an, ob die Options-Flags 0x08, 0x40, 0x80 oder 0x100 auf die Aufrufmethode des angegebenen VIs anwendbar sind.
Kriterien für das Erstellen strikt typisierter Referenzen
Wenn Sie mit dem Eingang Typbezeichner-VI (Referenz, nur für Typ) eine strikt typisierte VI-Referenz verbinden, muss das am VI-Pfad angegebene VI folgende Kriterien erfüllen:
- Das VI darf nicht fehlerhaft sein.
- Das VI darf nicht als Haupt-VI aktiv sein; es sei denn, es handelt sich um ein ablaufinvariantes VI.
- Das Anschlussfeld des VIs muss mit dem Anschlussfeld von Typbezeichner-VI (Referenz, nur für Typ) übereinstimmen.
Erstellen von Referenzen auf ablaufinvariante VIs
Beim Öffnen einer Referenz auf ein ablaufinvariantes VI ist Folgendes zu beachten:- Dynamische Aufrufe von ablaufinvarianten VIs werden nacheinander ausgeführt, sofern Sie nicht unter Optionen die Option 0x40 angegeben haben.
- Wenn Sie mit der Options-Flag 0x40 angegeben haben, dass Instanzen eines ablaufinvarianten VIs parallel ausgeführt werden sollen, bezieht sich VI-Referenz auf das Ziel-VI und nicht auf eine Kopie davon. Allerdings kann sowohl der Knoten "Aufruf über Referenz" als auch der Knoten "Asynchronen Aufruf starten" ein Exemplar des Ziel-VIs aufrufen. Wenn Sie jedoch eine VI-Server-Eigenschaft oder -Methode auf die VI-Referenz anwenden, hat die Eigenschaft oder Methode keinen Einfluss auf die VI-Instanzen, die von den Knoten aufgerufen werden.
- Die Funktion Gleich? gibt immer TRUE aus, wenn Sie zwei Referenzen auf dasselbe ablaufinvariante VI vergleichen. Um zu ermitteln, ob sich die Referenzen auf dieselbe Instanz des ablaufinvarianten VIs beziehen, wandeln Sie die Referenzen mit Hilfe der Funktion "Typumwandlung" in vorzeichenbehaftete 32-Bit-Integer um. Vergleichen Sie die Integer anschließend mit der Funktion "Gleich?".
Abbrechen geöffneter Referenzen
Alle geöffneten VI-Referenzen können entweder vom VI-Frontpanel aus oder mithilfe der Methode VI abbrechen aufgehoben werden. Für die asynchrone Ausführung vorgesehene VI-Referenzen unterliegen jedoch – abhängig von den Optionen bei ihrer Erstellung – bestimmten Regeln:
- 0x80—Eine VI-Referenz zum Aufrufen eines VIs ohne Abfragen der Ausgangswerte wird nur aufgehoben, wenn Sie diese manuell vom Frontpanel aus abbrechen oder die Methode VI abbrechen auf sie anwenden. Anderenfalls läuft das VI vollständig durch, selbst wenn Sie die Referenz schließen oder das Aufrufer-VI abbrechen.
- 0x100—VIs zum Aufrufen eines VIs und Erfassen der Ausgangswerte werden unter folgenden Umständen abgebrochen:
- Beim Abbruch des VIs, das die Referenz zum Aufrufen eines VIs und Abfragen seiner Ausgangswerte erzeugt hat. In diesem Fall werden alle ausgeführten Instanzen des VIs abgebrochen.
- Beim manuellen Abbrechen einer bestimmten Instanz des VIs. In diesem Fall gibt einer der Knoten des Typs "Asynchronen Aufruf abwarten" einen Fehler aus und zeigt dadurch den Abbruch des Aufrufer-VIs an. Alle anderen Knoten des Typs "Asynchronen Aufruf abwarten" sind davon nicht betroffen und warten weiter.
- Beim Aufrufen der Methode VI abbrechen für die VI-Referenz zum Aufrufen eines VIs und Abfragen seiner Ausgangswerte. In diesem Fall werden alle aktuell ausgeführten Instanzen des VIs abgebrochen. Entsprechend viele Knoten des Typs "Asynchronen Aufruf abwarten" geben Fehler aus.
Schließen geöffneter Referenzen
Von dieser Funktion abgefragte Referenzen sollten nach der Verwendung geschlossen werden. Dazu ist die Funktion Referenz schließen zu verwenden. Durch Schließen einer Referenz mittels einer Funktion kann LabVIEW die Ressourcen wieder frei geben, die von der Referenz belegt werden und dadurch die Speichernutzung und Ausführungsgeschwindigkeit optimieren. Anderenfalls kann LabVIEW die Referenz erst nach Ausführungsende des VIs schließen, das die Referenz erstellt hat.
Erstellen einer VI-Referenz in einer eigenständigen Anwendung
Zum dynamischen Öffnen eines VIs sowohl auf Ihrem Entwicklungsrechner als auch innerhalb einer eigenständigen Anwendung müssen Sie für VI-Pfad einen relativen Pfad angeben.
Weitere Informationen
- Wenn Sie die Eigenschaften Ausführung:Nach Öffnen ausführen, Ausführung:Frontpanel nach Laden anzeigen oder Ausführung:Frontpanel bei Aufruf anzeigen festlegen oder im Ziel-VI die entsprechenden Optionen aus dem Dialogfeld Eigenschaften für VI auswählen, ignoriert LabVIEW diese Einstellungen.
- Um eine neue Facade-VI-Referenz zu öffnen, verdrahten Sie eine FacadeVI-Klasse mit dem Typbezeichner VI Refnum (nur für Typ).
Beispiele
Die folgenden Beispieldateien sind in LabVIEW enthalten.
- labview\examples\Application Control\VI Server\Asynchronous Call By Reference\Asynchronous Call and Collect (Using Option 0x40).vi
- labview\examples\Application Control\VI Server\Asynchronous Call By Reference\Asynchronous Call and Forget.vi
- labview\examples\Application Control\VI Server\Asynchronous Call By Reference\Asynchronous Call and Collect.vi
Typbezeichner-VI (Referenz, nur für Typ)
—
Anwendungsreferenz (lokal)
—
VI-Pfad
—
Optionen
—
Fehler (Eingang, kein Fehler)
—
Passwort ("")
—
VI-Referenz
—
Fehler (Ausgang)
—