INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Dieses Thema hat akzeptierte Lösungen:

DLL Methoden richtig aufrufen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

26.06.2019, 22:52
Beitrag #54

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.687
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
RE: DLL Methoden richtig aufrufen
(26.06.2019 21:06 )Natalie1984 schrieb:  D.h. sobald diese Methode in der DLL -Datei angesprochen wird, soll z.B. auf der HauptVI eine Button betätigt werden oder den Ereignisstruktur direkt ansteuern.
Folgende Möglichkeiten fallen mir pro Callback-VI ein, die wahrscheinlich funktionieren werden.
1. Im Callback-VI ein Flag in einer FGV setzen und im MainVI pollen (so hab ich das bei einem anderen Projekt gemacht).
2. Im Callback-VI ein Benutzerereignis verwenden - das ist am schönsten. Bedarf aber auch Aufwand mit der FGV, nämlich die Benutzerereignisreferenz
3. Im Callback-VI einen Value(changed)-Eigenschaftsknoten verwenden. Bedarf aber auch Aufwand mit der FGV, nämlich die Referenz auf das Bedienelement
4. Im Callback-VI ein Flag als Globale Variable (veraltet). Im MainVI pollen und einen Value(changed)-Event auslösen.

Zitat:Jetzt habe ich drei "Ereignis Callback registrieren" - Elemente in das HauptVI hinzugefügt.
Wird so funktionieren, lässt dich aber durch jede Prüfung durchfallen.

Zitat:So habe ich das alles in Übersicht und so verstehe ich auch, warum etwas funktioniert.
Wenn du nicht verstehst, warum und wie das mit der FGV ("Klasse für Kleine Leute") funktioniert, solltest du nicht programmieren.

Zitat:Ist es nicht möglich, einen einfachen Weg zu bauen, so das es nur den trigger Event zurück gibt?
1. Wer ("es") soll denn den Trigger-Event zurückgeben? Das Callback-VI?
2. Wie soll es den Wert denn zurückgeben? Als Ausgang?
Das Callback-VI wird asynchron aufgerufen, praktisch wie ein Interrupt. Das kann keinen Wert zurückgeben. Werte zurückgeben als Ausgang können nur VIs, die in einen Datenfluss eingebunden sind. Der Datenaustausch mit einem asynchronen VI kann nicht laufen über das, was in LabVIEW Datenfluss heißt. Der Datenaustausch zwischen asynchronem VI und MainVI geschieht über einen virtuellen Datenfluss, was die FGV übernimmt.

Zitat:Es würde mir ausreichen, wenn das erste Event "FirstConnect" entweder den Button FirstConnect betätigt oder wiegesagt die Ereignisstruktur FirstConnect ansteuert.
1. "Button FirstConnect" - siehe oben Methode 3.
2. Wenn der Callback (nicht das Callback-VI) direkt die Ereignisstruktur ansteuern könnte, würde mir das auch sehr gefallen. Ich glaube aber nicht, dass das geht. Dazu müsste es wohl einen speziellen Benutzerereignisknoten geben. Ist mir aber nicht bekannt.

Zitat:da einfach zu viele Unterelemente vorhanden sind.
Ab einer bestimmten Komplexität eines Programmes, und das ist schon bei einfachen Programmen der Fall, geht ohne "Unterelemente" gar nichts.

Du kommst mit Globalen Variablen fast ohne Unterelemente aus - eine Globale Variable ist nämlich schon ein Unterelement:
1. Im Callback-VI eine Globale Variable vom Typ Boolean mit True beschreiben. Die Globale Variable ersetzt das Verfahren mit der FGV.
2. Im Timeout-Case (50ms) der Ereignissequenz wird die Globale Variable abgefragt. Wenn sie true ist, wird sie auf false gesetzt und ein Value(Change)-Event vom Button FirstConnect wird ausgelöst.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
RE: DLL Methoden richtig aufrufen - jg - 13.06.2019, 14:54
RE: DLL Methoden richtig aufrufen - jg - 13.06.2019, 18:27
RE: DLL Methoden richtig aufrufen - jg - 14.06.2019, 10:38
RE: DLL Methoden richtig aufrufen - jg - 14.06.2019, 10:55
RE: DLL Methoden richtig aufrufen - jg - 14.06.2019, 12:41
RE: DLL Methoden richtig aufrufen - jg - 14.06.2019, 13:22
RE: DLL Methoden richtig aufrufen - jg - 18.06.2019, 17:04
RE: DLL Methoden richtig aufrufen - jg - 18.06.2019, 18:54
RE: DLL Methoden richtig aufrufen - jg - 19.06.2019, 08:18
RE: DLL Methoden richtig aufrufen - jg - 19.06.2019, 11:03
RE: DLL Methoden richtig aufrufen - jg - 19.06.2019, 12:23
RE: DLL Methoden richtig aufrufen - jg - 19.06.2019, 13:53
RE: DLL Methoden richtig aufrufen - jg - 20.06.2019, 11:32
RE: DLL Methoden richtig aufrufen - IchSelbst - 26.06.2019 22:52

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Zugriffsprobleme auf .NET-Methoden F_aus_S 1 4.946 02.04.2012 11:12
Letzter Beitrag: jg
  ActiveX & Excel Übersicht über Methoden und Eigenschaften nemesismf 3 7.925 01.12.2011 13:26
Letzter Beitrag: nemesismf

Gehe zu: