LabVIEWForum.de
DLL Meldung unterdrücken und Labview aufrufen ohne Hardware - 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: DLL Meldung unterdrücken und Labview aufrufen ohne Hardware (/Thread-DLL-Meldung-unterdruecken-und-Labview-aufrufen-ohne-Hardware)



DLL Meldung unterdrücken und Labview aufrufen ohne Hardware - d_g - 02.04.2014 14:29

Hallo,
ich verwende eine dll um eine PCI Karte anzusprechen, mit dieser speziellen dll habe ich zwei Probleme.
1. Beim Aufruf des Vis (auch in kompilierter Version) kommt eine Meldung von der dll (FPGA loaded), gibt es eine Möglichkeit solche Meldungen zu unterdrücken, das Programm soll automatisch starten mit dem Rechner und so muss man immer erst "Ok" klicken.
2. Wenn ich versuche das Vi aufzurufen, ohne dass die PCI Karte im Rechner steckt bekomme ich sofort eine Fehlermeldung, ich habe im Moment nur eine Karte, muss die Software aber auf einem Rechner ohne Labview testen. Ich würde gerne kleinere Änderungen machen und kompilieren, ohne die Karte jedes mal wechseln zu müssen.

Gibt es Möglichkeiten in Labview das zu umgehen (an der dll kann ich nichts ändern)?

Vielen Dank im Voraus


RE: DLL Meldung unterdrücken und Labview aufrufen ohne Hardware - GerdW - 02.04.2014 14:43

Hallo d_g,

Zitat:gibt es eine Möglichkeit solche Meldungen zu unterdrücken
Wenn die Meldung aus der DLL heraus angezeigt wird, dann kann man das nur durch Ändern der DLL abstellen. Oder bietet sie einen Funktionsaufruf (oder Call Parameter), mit dem man die Anzeige von Dialogboxen ändern kann?
Du kannst aber das Vorhandensein von Fenstern per Win32-user32 abzufragen und solche Fenster dann zu beeinflussen. Oder Mausklicks programmatisch an der richtigen Stelle auf dem Bildschirm erzeugen. Es gibt dafür auch Tools wie AutoIt…

Zitat:Wenn ich versuche das Vi aufzurufen, ohne dass die PCI Karte im Rechner steckt bekomme ich sofort eine Fehlermeldung
Hier scheint die DLL das Vorhandensein der Hardware zu prüfen. Auch dieses Verhalten kann man nur in der DLL selbst ändern…


RE: DLL Meldung unterdrücken und Labview aufrufen ohne Hardware - d_g - 02.04.2014 14:53

(02.04.2014 14:43 )GerdW schrieb:  Hallo d_g,

Zitat:gibt es eine Möglichkeit solche Meldungen zu unterdrücken
Wenn die Meldung aus der DLL heraus angezeigt wird, dann kann man das nur durch Ändern der DLL abstellen. Oder bietet sie einen Funktionsaufruf (oder Call Parameter), mit dem man die Anzeige von Dialogboxen ändern kann?
Du kannst aber das Vorhandensein von Fenstern per Win32-user32 abzufragen und solche Fenster dann zu beeinflussen. Oder Mausklicks programmatisch an der richtigen Stelle auf dem Bildschirm erzeugen. Es gibt dafür auch Tools wie AutoIt…
Danke, das mit dem Abfragen des Fensters ist eine gute Idee, allerdings geht das Vi erst auf, wenn man die Meldung weggeklickt hat, ich befürchte, dass ich da noch nichts aus meinem Programm raus steuern könnte, vielleicht ein kleines Zusatzprogramm (eigentlich hoffe ich ja noch, dass es der Hersteller noch ändert).
Zitat:
Zitat:Wenn ich versuche das Vi aufzurufen, ohne dass die PCI Karte im Rechner steckt bekomme ich sofort eine Fehlermeldung
Hier scheint die DLL das Vorhandensein der Hardware zu prüfen. Auch dieses Verhalten kann man nur in der DLL selbst ändern…
Ok, dann muss ich wohl weiter umbauen (bzw. auf eine zweite Karte warten).


RE: DLL Meldung unterdrücken und Labview aufrufen ohne Hardware - jg - 02.04.2014 15:28

Conditional Disable Structure!!! Darin die DLL Aufrufe kapseln. Dann kannst du relativ einfach eine Exe unter Verwendung der DLL und eine ohne Verwendung der DLL erstellen.

Gruß, Jens