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 

Vorhandene DLL um eine Paar Funktionen erweitern



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!

13.06.2016, 11:59
Beitrag #1

galilio Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 175
Registriert seit: Mar 2014

2015
2013
EN


Schweiz
Vorhandene DLL um eine Paar Funktionen erweitern
Hallo Zusammen,


ich möchte einen bereites existierende DLL um paar Funktionen erweitern.
Aus dieses DLL wird bereites einen User Interface bzw. Installer erstellt.

Da dieses DLL nur um eine paar Funktionen erweitert, kann ich eigentlich was ich vorher gemacht habe weiterhin verwenden?
Wie mache ich eigentlich mit der Funktionen, die gar nicht geändert sind?


Danke
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.06.2016, 11:04
Beitrag #2

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
RE: Vorhandene DLL um eine Paar Funktionen erweitern
(13.06.2016 11:59 )galilio schrieb:  Hallo Zusammen,


ich möchte einen bereites existierende DLL um paar Funktionen erweitern.
Aus dieses DLL wird bereites einen User Interface bzw. Installer erstellt.

Da dieses DLL nur um eine paar Funktionen erweitert, kann ich eigentlich was ich vorher gemacht habe weiterhin verwenden?
Wie mache ich eigentlich mit der Funktionen, die gar nicht geändert sind?


Danke

Ist die DLL in LabVIEW gemacht? Wenn ja, hast Du das Projektfile und die VIs davon noch?
Falls nicht in LabVIEW gemacht ist das mit dem Projektfile und den Source code files auch noch relevant aber gehört die Frage definitiv nicht in ein LabVIEW Forum.

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
14.06.2016, 17:55
Beitrag #3

galilio Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 175
Registriert seit: Mar 2014

2015
2013
EN


Schweiz
RE: Vorhandene DLL um eine Paar Funktionen erweitern
(14.06.2016 11:04 )rolfk schrieb:  Ist die DLL in LabVIEW gemacht?
nein
Die DLL sind in c++ erstellt aber es wurde in Labview importiert und daraus einen Intstaller erstellt.
(14.06.2016 11:04 )rolfk schrieb:  Wenn ja, hast Du das Projektfile und die VIs davon noch?
Ja

Es geht eigentlich darum um eine importierte DLL mit labview.
Dieses importierte DLL wurde noch um eine Paar Funktionen erweitert.
Da ich für die erste DLL bereist eine Installer erstellt, möchte ich nicht die Arbeit noch mal machen und von vorne anfangen.
Ich möchte was es bereits gemacht wurde weiterverwende, darum geht es.

(14.06.2016 11:04 )rolfk schrieb:  Falls nicht in LabVIEW gemacht ist das mit dem Projektfile und den Source code files auch noch relevant aber gehört die Frage definitiv nicht in ein LabVIEW Forum.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.06.2016, 09:15 (Dieser Beitrag wurde zuletzt bearbeitet: 15.06.2016 09:22 von rolfk.)
Beitrag #4

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
RE: Vorhandene DLL um eine Paar Funktionen erweitern
(14.06.2016 17:55 )galilio schrieb:  Es geht eigentlich darum um eine importierte DLL mit labview.
Dieses importierte DLL wurde noch um eine Paar Funktionen erweitert.
Da ich für die erste DLL bereist eine Installer erstellt, möchte ich nicht die Arbeit noch mal machen und von vorne anfangen.
Ich möchte was es bereits gemacht wurde weiterverwende, darum geht es.

Um wieviele Funktionen geht es hier? Der Import Library Wizard wird von viel zu vielen Leuten als die einzige mögliche Art gesehen um DLL Funktionen in LabVIEW anzusprechen. Die Wahrheit ist dass er tatsächlich viel langweilige Arbeit sparen kann, wenn man eine neue DLL in LabVIEW benützen will. Aber er kann einen erfahrenen Programmierer der weiss wie man C Funktionen aufrufen muss niemals ersetzen.

Du MUSST nach dem Import Library Wizard sowieso JEDES einzelne VI ganz genau überprüfen, ob es wirklich die DLL Funktion auf die richtige Weise aufruft. Wenn Du das nicht tust, machst Du ein peut-être: es kann funktionieren oder auch nicht und wenn es das nicht tut, merkst Du das oft erst viel später wenn Du unerklärliche Crashes, fehlerhafte Daten oder dergleichen erhältst und dann auf Fehlersuche zu gehen kostet viele Male mehr Zeit und Geld dann alles von Anfang an richtig zu machen.

Wenn es nur darum geht einige wenige Funktionen zu einer bestehenden VI Library hinzuzufügen, dann vergiss den Import Library Wizard ganz schnell und füge die Funktionen direkt von Hand hinzu. Wenn das keine wirkliche Option ist weil Du nicht weisst wie man das machen muss, dann ist der Import Library Wizard ohnehin etwas was Dich im falschen Wahn lässt, dass alles in Ordnung ist mit der VI Library die Deine DLL aufruft. Die C Syntax im Headerfile das durch den Wizard verwendet wird um den Code für den Aufruf der DLL Funktion zu erzeugen ist schlicht und einfach nicht ausreichend, um eine Funktion ausführlich genug zu beschreiben, sodass ein automatisches Tool sicher den richtigen Code erzeugen kann! Oft kann das nicht einmal ein sehr erfahrener Programmierer, ohne auch die dazugehörende Funktionsbeschreibung im hoffentlich vorhandenen Manual ausführlich zu lesen. Nur kannst Du dem Import Library Wizard halt kein 500 seitiges Programmiermanual vorsetzen und hoffen dass er aus diesem Prosatext auch nur ansatzweise etwas Brauchbares herauslesen kann.

Zwar unterstützt der Import Library Wizard das Hinzufügen von Funktionen zu einer VI Library wenn Du ihn zu Beginn auf Deine bereits bestehende VI Library weist, statt eine Neue erzeugen zu lassen, aber das habe ich noch nie gemacht und auch sonst verwende ich den Import Library Wizard kaum, auch wenn ich schon sehr viele DLLs und Shared Libraries in LabVIEW integriert habe. Erstens muss ich die VIs danach doch alle noch einmal sehr ausführlich von Hand überprüfen, zweitens ist der erzeugte Code im Bemühen um lieber Safe dann Sorry zu sein meist sehr ineffizient für komplexere Parameterdatentypen und drittens finde ich die vom Wizard erzeugten Connector Panes meist schrecklich und bevorzuge ich aussagekräftigere Icons, dann das was der Wizard erzeugt.

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.06.2016, 08:35
Beitrag #5

galilio Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 175
Registriert seit: Mar 2014

2015
2013
EN


Schweiz
RE: Vorhandene DLL um eine Paar Funktionen erweitern
Danke für die Antwort.

Es geht eigentlich um 6 Funktionen, die dazu kommen.
Um sicher zu gehen mache ich alles neue.
Es ist in der tat eine langweilige Arbeit, aber es muss gemacht werden.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.10.2016, 09:20
Beitrag #6

galilio Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 175
Registriert seit: Mar 2014

2015
2013
EN


Schweiz
RE: Vorhandene DLL um eine Paar Funktionen erweitern
Hallo Rolf,


man kann aber bei einen DLL Import auch sagen welche Funktionen, die neue importieren werden müssen in dem man das Häckschen einfach setzen oder weglassen.

In dem Fall, wenn die alten Funktionen gleich bleiben und nur das Header File um paar Funktionen erweitert ist dann ist das Häckschen bei der neuen zu setzen und der Rest des Funktionen muss deselektiert werden.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
08.10.2016, 23:11
Beitrag #7

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
RE: Vorhandene DLL um eine Paar Funktionen erweitern
(04.10.2016 09:20 )galilio schrieb:  Hallo Rolf,


man kann aber bei einen DLL Import auch sagen welche Funktionen, die neue importieren werden müssen in dem man das Häckschen einfach setzen oder weglassen.

In dem Fall, wenn die alten Funktionen gleich bleiben und nur das Header File um paar Funktionen erweitert ist dann ist das Häckschen bei der neuen zu setzen und der Rest des Funktionen muss deselektiert werden.

Natürlich! Dem habe ich nicht widersprochen, sondern sogar angegeben dass man eine bestehende Library als Anfangspunkt für eine Erweiterung nehmen kann. Aber das ändert rein gar nichts an den anderen Dingen die ich sagte. Wegen ein paar Funktionen den Library Wizard anwerfen ist eigentlich Humbug. Und wenn das ist, weil man die VIs selber eigentlich nicht machen könnte, eigentlich sogar gemeingefährlich. Denn wenn Du sie nicht selber machen kannst, kannst Du sie auch nicht überprüfen und verbessern wenn sie aus dem Wizard kommen. Und ganz entgegen dem Namen kann dieser Wizard auch nicht zaubern, denn das wäre die einzige Möglichkeit um aus der eingeschränkten C Syntax des Headerfiles ein ganz sicher korrektes VI zu erzeugen.

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  EtherCAT und paar Klemmen in Labview anbinden lola2014 0 5.196 04.07.2014 09:36
Letzter Beitrag: lola2014
  Rückgabezeiger bei DLL-Funktionen TR6 2 6.095 21.12.2011 16:05
Letzter Beitrag: TR6
  CallBack Funktionen in C für LV spamer84 3 7.466 07.05.2008 19:56
Letzter Beitrag: rolfk

Gehe zu: