Ładowanie VI do SubPanela nie działa po kompilacji

Tematyka związana z Aplication Builderem oraz tworzeniem wersji exe programów w LabVIEW. Problemy związane z instalatorem programów oraz ich zabezpieczaniem.
karolad
Posty: 3
Rejestracja: 27 lip 2010 10:29
Wersja środowiska: LabVIEW 2009

Ładowanie VI do SubPanela nie działa po kompilacji

Post autor: karolad » 02 lis 2010 22:55

By było ciekawiej jeszcze nie wszystkich VI. Problem po kompilacji ma tylko z ładowaniem do SubPanela VI w których zastosowano odczyt/zapis danych do pliku konfiguracyjnego przez odpowiednie bloki z bibliotek LabView.

W programie głównym odczyt wartości z pliku zrobiony mam tak:
konfiguracja.png
Obsługa konfiguracji
Wystarczy w dowolnym subVI dodać taki zapis/odczyt pliku konfiguracyjnego by przestał się ładować.
Wszystkie inne VI wtedy ładują się nadal bez problemu.

Próbowałem używać sztywnych, stałych ścieżek - nie pomaga - a więc to nie wina ścieżek dostępu.

Zachowuje się to tak, jakby funkcja dołączona do EXE nie mogła być wykorzystana głębiej, w ładowanym przez niego, niekompilowanym subvi
Oczywiście do póki nie skompiluje programu głównego, który ładuje subvi problem nie istnieje.
Jak sobie z tym poradzić?

Z góry dziękuję za pomoc i pozdrawiam!

Awatar użytkownika
Nowszy
NI Man
Posty: 501
Rejestracja: 30 maja 2008 08:33
Wersja środowiska: LabVIEW 2011
Lokalizacja: Katowice
Kontakt:

Ładowanie VI do SubPanela nie działa po kompilacji

Post autor: Nowszy » 02 lis 2010 23:41

dodaj kod a nie tylko obrazek to coś pomyślimy
Pozdrawiam, Nowszy

Awatar użytkownika
wino
Posty: 548
Rejestracja: 23 gru 2005 00:00
Wersja środowiska: Nie mam LabVIEW
Lokalizacja: Kraków

Re: Ładowanie VI do SubPanela nie działa po kompilacji

Post autor: wino » 03 lis 2010 06:43

Tak na oko to w Exe ścieżka się zmieni. Ten post mam nadzieje wszystko wyjaśni.

Zresztą jak zrobisz exe to wypadało by ten plik cfg wrzucić do katalogu config przy exe lub do katalogu data. Robisz to w taki sposób, że w Build Specification w zakładce gdzie podajesz Top Level VI, dodaj plik cfg do Always Included. Wtedy zostanie on automatycznie przeniesiony do folderu data, który jest tworzony razem z exe.

karolad
Posty: 3
Rejestracja: 27 lip 2010 10:29
Wersja środowiska: LabVIEW 2009

Re: Ładowanie VI do SubPanela nie działa po kompilacji

Post autor: karolad » 03 lis 2010 08:50

Kodu całego chyba nie ma sensu, ponieważ program główny i subvi już przybrał spore rozmiary. Problem nie jest w ścieżkach na mój gust, ponieważ config wczytuje się dobrze dla programu głównego skompilowanego jako exe. Tak samo działa dobrze ładowanie VI do subpanela, ponieważ część Vi ładuje się bez problemu.
Podałem sztywną ścierzkę do pliku konfiguracyjnego i problem nadal występuje. Zresztą - nawet gdyby plik usunąć, nie skutkuje to errorem, ale wczytaniem domyślnych wartości (wpisanych w kodzie programu).

Pozdrawiam,
Karol

Update:
Wszędzie w subvi które mają być ładowane używam Current VI's Path i oddzielam z niej samą nazwę VI. Na tej podstawie buduję resztę. Sprawdziłem zresztą wyświetlając ścieżkę na panelu - wszystko jest ok.

Update2: zrobiłem sobie prosty VI z ładowaniem do subpanela i ładuje nawet proste, testowe Vi z konfiguracją. Jutro, gdy będę miał wiecej czasu postaram się dokładać po kawałku funkcje aż znajdę tę, na której całość się wysypuje.
Ostatnio zmieniony 03 lis 2010 11:08 przez karolad, łącznie zmieniany 1 raz.

karolad
Posty: 3
Rejestracja: 27 lip 2010 10:29
Wersja środowiska: LabVIEW 2009

Re: Ładowanie VI do SubPanela nie działa po kompilacji

Post autor: karolad » 06 lis 2010 11:28

Okazuje się, że wystarczy dodać do VI który ma być ładowany do subpanela sam loop symulacyjny, i już się nie daje załadować przez skompilowany program główny.
Tak więc simulation loop jest przyczyną. Tylko jak sobie teraz z tym poradzić?

Kurde - ale ze mnie bystrzak ;) Przecież i tak trzeba mieć zainstalowany runtime ;)

ODPOWIEDZ