Strona 1 z 1

Problem z path w aplikacji exe

: 12 lip 2011 23:32
autor: komaro
witam
Stworzyłem aplikacje exe a nawet instalatora który pozwala zainstalować tą aplikacje na dopwolnym komputerze w dopwolnym miejscu.
w tym momencie pojawił się problem. Mianowicie aplikacja zawiera pliki graficzne wyswietlane we front panelu. Sciezke dostępu ustalilem do nich na "sztywno" w path constant. rozumiem że to jest przyczyną że na innym komputerze ich nie wyswietla gdyz szuka tej loklizacji. wiem że muszę zastosować opcje current VI path zeby wskazac mu dobra okalizacje plików graficznych. Tu sie pojawia moje pytanie jak to zrobic zeby wskazac programowi ktory plik .jpg ma wybrac??

Re: Problem z path w aplikacji exe

: 12 lip 2011 23:54
autor: Hruodberaht
Uprzedzam, że mogłem Ciebie dobrze nie zrozumieć. Jeśli problem jest _tylko_ we wskazaniu ścieżki dostępu, to potrzebne są Ci 2 rodzaje VI z palety Programming -> File I/O. Są to: Build path i Strip path. W tej samej palecie w (podpalecie) constants znajdziesz current VI's path.

Przykład na screenie. Ten kawalątek kodu to: Current VI path -> Strip path -> Buil path. Czyli bierze aktualną ścieżkę VI, wyrzuca jego nazwę (Strip path) i dokleja nazwę "obrazki" (Build path). Czyli z C:\program.vi zrobi Ci C:\obrazki\
path.png
path.png (1.44 KiB) Przejrzano 6968 razy
Tak, za prosto to wygląda, musiałem czegoś nie zrozumieć...

Problem z path w aplikacji exe

: 13 lip 2011 06:53
autor: spec.kolombo
Hruodberaht - zapomniałeś dodać że trzeba jeszcze dać kolejnego build path i podłączyć do niego nazwę pliku (albo zamiast "obrazki" dać "obrazki\nazwa wybranego obrazka.jpg"

To powinno działać dla zwykłego VI'ja, ale jeśli ten będzie znajdował się w pliku .exe to będzie potrzebne jeszcze jedno Strip path przed build path'em - bo .exe jest traktowane jak kolejny katalog.

Re: Problem z path w aplikacji exe

: 16 lip 2011 18:49
autor: komaro
witam.
niestety nie działa
może cos robie zle wiec opisze co mam.
mam projekt ktory sklada sie z kiku VI i kilku plików .jpg.
tworze aplkajce i w zakladce source file daje jako startup menu.VI a jako pozostałe pili daje reszte vi i pliki graficzne
nastepnie tworze instalatora
instaluje aplikacje w przykładowej lokalizacji np C:\Programy\Mojprogram
w folderze mojprogram otrzymuje pliki uruchamiajace aplikacje i pod folder data w ktorym znajduja sie pliki graficzne


i teraz tak
pliki graficzne maja byc ladowane w tych VI ktore sa zzalaczone jako pozostale w projekcie.

Re: Problem z path w aplikacji exe

: 17 lip 2011 08:54
autor: Ender
W LV2009 w palecie file constants jest bloczek 'application directory' który pomaga w takich sytuacjach - zwraca ścieżkę do katalogu w którym jest plik exe. Ale kolega jak widzę ma 8.6, więc trzeba trochę zakombinować.
Current VI's path powinno zwrócić coś takiego dla pliku exe: C:\...\Aplikacja.exe\startup menu.vi. Żeby uzyskać ścieżkę do katalogu w którym jest .exe i katalog data operację strip path trzeba zrobić 2x. Następnie przy pomocy build path trzeba przejść do katalogu 'data' i w ostatnim kroku kolejnym bloczkiem build path dodać nazwę wyświetlanego pliku. Problem w tym, że ścieżka do pliku graficznego jest inna dla exe a inna dla VI odpalanego pod LV. W związku z tym trzeba skorzystać z property node Application -> Kind, wyjście podpiąć na case w którym umieszczamy inną ścieżkę dla case 'Development system' (czyli VI) i wyżej omówioną ścieżkę dla defaultowego case'a (exe). Ścieżka dla development system zależy od struktury projektu (gdzie względem wywołującego VI są pliki graficzne), ale tutaj możesz po prostu dać w odpowiednie miejsca probe i łatwo dojść do tego czy ścieżka jest poprawna.

Re: Problem z path w aplikacji exe

: 17 lip 2011 14:20
autor: komaro
Witam
Cały czas coś nie działa. Załączam pomniejszoną wersję mojego projektu. Po zainstalowaniu i uruchomieniu aplikacji klikamy 3 przycisk "moment.."

Re: Problem z path w aplikacji exe

: 17 lip 2011 14:55
autor: komaro
Już działa znalozłem błąd. interuje mnie ta opcja jak to zorbic by dalo sie uruchamiac takze pod LV może jakis maly przykład można by poprosić lub screena ?

Jenak poradziłem sobie i z tym
dzięki sory za zamieszanie