Wenn man mal von der Legalität des ganzen Vorhabens absieht:
glaube nicht daß es
gar nicht geht, denn:
wenn man mal in ein VI das SubVI "aktueller Pfad des VIs" aus der Palette "Dateikonstanten" einfügt und sich mal den Pfad ausgeben läßt, kommt da bei der Applikation was anderes raus, als beim VI in der Entwicklungsumgebung. Das ganze hat mir vor ein paar Jahren ziemlich Probleme bereitet, wenn ich mein VI als Applikation getestet habe und nichts mehr funktionierte, weil bestimmte Pfade nicht mehr gefunden wurden, weil LV auch was ganz anderes angegeben hat, als in der Entwicklungsumgebung.
Habe ich ein VI namens "test.vi" sieht der Pfad bei obiger Funktion beispielsweise folgendermaßen aus:
C:xyztest.vi
Generiere ich daraus dann eine Applikation liefert die gleiche Funktion
C:xyzapplikationsname.exetest.vi
Das sieht für mich so aus, als ob beim Application Builder (mal einfach gesprochen) mindestens das Haupt-VI (und je nach Appl.Builder-Einstellungen auch die SubVIs) in eine Datei gesteckt werden, und dann lediglich im Kopf oder sonstwo in der *.exe der Aufruf der Runtime-Engine.
Wenn man dann die Applikation startet, wird lediglich die Runtime-Engine gestartet und ihr dann der Einsprungpunkt zu den VIs in der exe übergeben, und die macht dann den Rest.
D.h. wenn man weiß, wo es in der exe mit den VIs losgeht, wäre es theoretisch möglich, sich den VI-code wieder rauszuholen. In wie weit der dann aufbereitet werden muß, damit man sich das ganze in der Entwicklungsumgebung ansehen oder sogar bearbeiten kann
... das weiß wahrscheinlich nur NI allein.
Schönes Wochenende
Andreas