System Exec.vi - .dll - Problem - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: DLL & externer Code (/Forum-DLL-externer-Code) +---- Thema: System Exec.vi - .dll - Problem (/Thread-System-Exec-vi-dll-Problem) |
System Exec.vi - .dll - Problem - iselimes - 26.05.2015 18:18 Hallo Zusammen, ich habe eine selbst geschriebene .exe Datei (keinen Bezug zu Labview) welche ich durch die "System Exec.vi" starten möchte. Als erstes wird bei mir ohne Probleme Veristand mit der gleichen VI gestartet. Dann soll die selbst geschriebene .EXE gestartet werden. Jedoch ohne Erfolg. Es folgt die Fehlermeldung: "MBus-DLL fpr MBus-Bridge nicht verfügar". Wenn ich das Programm selber per Mausklick starte dann funktioniert alles einwandfrei. Der Fehler liegt also in dem Aufruf durch die Konsole CMD. Wenn ich dieses selber mache erscheint der gleiche Fehler. Es werden anscheinend die benötigten .dll Dateien nicht geladen. Daher meine Frage: Kann ich eine .EXE Datei ohne die Konsole CMD starten? Gibt es die Möglichkeit eines Makros oder andere VI´s die einen anderen Weg verwenden? Danke für alle Rückmeldungen... Grüße Felix RE: System Exec.vi - .dll - Problem - toaran_ - 27.05.2015 12:31 Hi versuch mal beim System Exec das Verzeichnis deiner EXE als Arbeitsverzeichnis anzugeben... ich kann das hier grad nicht testen aber ich hatte das Problem auch schon mal... kann mich nur nicht an die Lösung erinnern T RE: System Exec.vi - .dll - Problem - iselimes - 28.05.2015 09:00 Hallo, danke für die Antwort. Das funktioniert leider auch nicht. RE: System Exec.vi - .dll - Problem - Trinitatis - 28.05.2015 12:06 Hallo Felix, versuch´s mal hiermit. Gruß, Marko RE: System Exec.vi - .dll - Problem - iselimes - 28.05.2015 12:53 Danke, Marko. Funktioniert bei den ersten Versuchen auch nicht. Was genau hat es mit der Angehängten .dll auf sich? Grüße RE: System Exec.vi - .dll - Problem - Trinitatis - 28.05.2015 13:56 (28.05.2015 12:53 )iselimes schrieb: Was genau hat es mit der Angehängten .dll auf sich? auf diese DLL bezieht sich der im VI verwendete Formelknoten. Du musst also diese DLL entweder in das Windows-System-Verzeichnis kopieren oder im Pfad des Formelknotens auf den entsprechenden Pfad verweisen. Gruß, Marko RE: System Exec.vi - .dll - Problem - iselimes - 28.05.2015 15:24 Ich habe das Problem mit einem Script (welches meine exe aufruft) und der CScript.exe gelöst. Recht einfache Lösung. RE: System Exec.vi - .dll - Problem - rolfk - 01.06.2015 16:49 (28.05.2015 13:56 )Trinitatis schrieb:(28.05.2015 12:53 )iselimes schrieb: Was genau hat es mit der Angehängten .dll auf sich? Eine andere Lösung, wäre die entsprechende DLL (und alle eventuellen Abhängigkeiten ins Windows Verzeichnis zu kopieren (oder ins System Verzeichnis, oder in das Verzeichnis wo LabVIEW.exe liegt, oder bei einem LabVIEW Executable im Verzeichnis wo das Executable der LabVIEW Applikation liegt, oder in irgendeinem Verzeichnis das in der PATH Environment Variable vorkommt). Der Grund liegt darin dass das Executable das mit System Exec aufgerufen wird als Child Process des LabVIEW Programmes aufgerufen wird und damit alle Eigenschaften von der LabVIEW Applikation erbt, inklusive des Hauptverzeichnisses in dem Windows nach DLLs sucht. Eine andere mögliche Variante wäre eventuell um das Executable indirekt aufzurufen indem man cmd /C <executable> <parameter> in System Exec ausführt. |