2016-06-15 6 views
5

Próbuję otworzyć .exe, aby zaprogramować PLC z LabVIEW. Mam plik .exe zawarty w plikach projektu, jest on również dołączany jako plik źródłowy, więc instaluje się go w katalogu instalacyjnym podczas instalacji tego narzędzia. Problem pojawia się czasami podczas otwierania (i przez cały czas zamykania) pojawia się błąd Error 2: Memory Full.Błąd 2: Pamięć pełna - Otwarcie .exe Od LabView

enter image description here

Oto urywek co mam aktualnie robi pomocą SystemExec.vi dołączone LabView:

enter image description here

i widać tutaj, że mam pliki zawarte w zależnościach (przepraszam za linie, nie chcę pokazywać pewnych nazw plików i wiz dla klienta):

enter image description here

Daj mi znać, jeśli robię coś złego lub istnieje lepszy sposób na uruchomienie zewnętrznego .exe z LabView.

Z góry dziękuję!

+0

Oprócz ustalenia przyczyny tego komunikatu o błędzie, jak czy ten kod powinien wyjść? Jeśli zatrzymasz go za pomocą przycisku "Przerwij" paska narzędzi, możesz pozostawić rzeczy w nieokreślonym stanie. Mieć zdarzenie lub warunek, który przechodzi przez terminal zatrzymujący pętlę True do pętli. – nekomatic

+0

Istnieje wiele struktur zdarzeń w pętli while, która otwiera sub vis. Istnieje również zdarzenie zamknięcia panelu, które spowoduje wyjście z programu po kliknięciu okna x. –

+0

Mam nadzieję, że masz na myśli wiele przypadków zdarzeń, a nie wiele struktur * zdarzeń *. Czy używasz funkcji Wyjdź z LabVIEW, aby wyjść? Czystym sposobem na zrobienie tego będzie uwięzienie zdarzenia * Panel Close? * (Zanotuj znak zapytania), wykonaj każde czyszczenie, takie jak zamknięcie plików i odnośników, wyjście z wszystkich pętli, a dopiero potem Wyjdź z LabVIEW i dla łatwiejszego rozwoju, rób to tylko, jeśli twój program działa jako aplikacja zbudowana. Sprawa * Panel Close * może nie zostać wykonana prawidłowo, chyba że dodasz kod, aby najpierw przerwać LabVIEW: http://zone.ni.com/reference/en-XX/help/371361K-01/lvprop/vi_pnl_closing/ – nekomatic

Odpowiedz

5

Spróbuj zmienić swój ciąg wejściowy do „cmd/c fploader.exe”

Korzystanie Exec System VI nie jest takie samo jak wpisanie polecenia w wierszu polecenia; zamiast tego przypomina wpisywanie polecenia w oknie "Uruchom ...".

Zobacz tutaj: http://digital.ni.com/public.nsf/allkb/EA1600EBA422E97286256AA20073C616

Edycja: Oto jak można utworzyć polecenia ciąg z pełną ścieżką swojego exe: enter image description here

+0

Sprawdziłem, problem polega na tym, że nie pracuję z plikiem wsadowym. Po tym, jak próbowałem umieścić to, co umieściłeś, dostałem: Błąd 1 występujący przy "fploader.exe" nie został rozpoznany jako wewnętrzne lub zewnętrzne polecenie, działający program lub plik wsadowy. –

+0

możesz wypróbować całą ścieżkę swojego pliku fploader.exe. Ale oczywiście byłby to problem podczas instalowania aplikacji LabView w innej lokalizacji. – RomCoo

+0

Tak, to jest problem. Instalator jest ustawiony na instalację w [Program Files], ale jest inny w 32 i 64-bitowym systemie operacyjnym. Więc nie jestem całkiem pewien, dokąd się udać. Czy istnieje inny sposób otwarcia pliku .exe z vi? –