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 

Über externen Code Interface Array zurückbekommen?



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!

06.05.2005, 10:16
Beitrag #1

dr.smirnoff Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: May 2005



kA



Über externen Code Interface Array zurückbekommen?
Hallo,
ich bin noch immer nicht so fit in der Programmierung mit LV.
Bin heute schon wieder auf ein Problem gestoßen und hoffe dass ihr mir dabei helfen könnt.
Und zwar habe ich eine C-Code-Funktion die in einer externen dll steht und in LabVIEW aufgerufen wird.
In dieser Funktion bekomme ich mehrer 32 Bit Werte und müsste diese irgendwie an mein LV Programm zurückgeben, um sie dort dann weiter zu verarbeiten zu können.
Wie kann man ein Array aus einer exterenen Dll an LabVIEW übergeben?

Hoffe ich habe mein Problem einigermaßen verständlich erläutert und mir kann jemand helfen.

Vielen Dank
Gruss
Boris
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
06.05.2005, 11:27
Beitrag #2

oenk Offline
LVF-Stammgast
***


Beiträge: 361
Registriert seit: May 2005

>= 7.1
2004
EN

3018
Schweiz
Über externen Code Interface Array zurückbekommen?
Hallo Boris,

ich hab schon einiges mit CINs gemacht, verstehe aber deine Frage nicht genau....könntest du das ein bisschen präzisieren??

Gruss,
<<oenk>>
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.05.2005, 11:57
Beitrag #3

dr.smirnoff Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: May 2005



kA



Über externen Code Interface Array zurückbekommen?
Also ich werde mal versuchen mein Problem genauer zu definieren.
Ich baue in meiner C-Code-Funktion ein Werte-Array aus 32 Bit Werten auf.
Nachdem die Funktion beendet wurde, möchte ich dieses Array in LabVIEW weiterverarbeiten. Wie kann ich es aus meiner Funktion an LabVIEW übergeben?

Mein zweite Frage ist, wie kann man in LabVIEW Adressen an externe Funktionen übergeben.

Beispiel aus C:


void funktion (unsigned long *adresse)
{
adresse = 1;
}

int main()
{
unsigned long wert;

funktion(&wert);

}

Danach steht in wert 1;

Wie kann ich z.B die Funktion "funktion" aus LabVIEW aufrufen?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.05.2005, 12:10
Beitrag #4

oenk Offline
LVF-Stammgast
***


Beiträge: 361
Registriert seit: May 2005

>= 7.1
2004
EN

3018
Schweiz
Über externen Code Interface Array zurückbekommen?
Hallo Boris,

wie ich leider feststellen musste hab ich mich zu weit aus dem Fenster gelehnt und kann dir doch nicht helfen....
Ich hab einiges mit dem Code-Interface-Node gemacht und somit reinen c-Code eingebunden aber nix mit DLLs....
Kenn mich damit auch nicht aus...
Ich fand die Beschreibung für CINs von NI gar nicht schlecht....
vielleicht findest du ja darin die Antwort

http://digital.ni.com/manuals.nsf/websearc...6256D2C00624728

viel Erfolg und ein schoenes WE
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.05.2005, 13:51
Beitrag #5

dr.smirnoff Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: May 2005



kA



Über externen Code Interface Array zurückbekommen?
Hallo, danke für dein Hilfeversuch!

Geht es denn überhaupt, aus LabVIEW heraus, die Adresse einer Variablen an eine C-Funktion zu übergeben?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.05.2005, 09:14
Beitrag #6

Oliver Listing Offline
LVF-Freak
****


Beiträge: 721
Registriert seit: Sep 2004

2012 und 2014 (Windows und Linux)
1998
EN

22844
Deutschland
Über externen Code Interface Array zurückbekommen?
Hi dr.smirnoff,

wie weit bist du den schon gekommen?
Hast du schon die Funktion Call Library Function Node gefunden?
Einen Doppelclick darauf bietet dir die Möglichkeit externe Libraries einzubinden.
Über Add a Parameter after kannst du einen Parameter hinzufügen.
Unter Type kannst du Array auswählen, fehlt noch der Datentyp, die Dimension und das Array Format.

Gruß
Oliver

Ps: Erst bei komplexen Datenstrukturen bin ich mit Probieren nicht weiter gekommen. Wüsste z.B. gerne, wie ich ein zweidimensionales Array aus Strings übergebe...
Sollte ich vielleicht mal einstellen :?:
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
12.05.2005, 10:43
Beitrag #7

dr.smirnoff Offline
LVF-Neueinsteiger


Beiträge: 9
Registriert seit: May 2005



kA



Über externen Code Interface Array zurückbekommen?
Hallo Oliver,
ich habe nun die Call libary function node verwendet.
Hat alles super geklappt danke!

Noch ne Frage!

Kann man irgendwie an die Call Libary Function dynamisch den Pfad und den Dateinamen der zu verwendenden DLL übergeben.

Ich bräuchte das, weil ich die "Rohdaten" also nicht die fertige *exe des Programms abgeben muss.
Irgendwie den Pfad aus der Registry lesen, oder so?

Gruss
Boris
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
13.05.2005, 10:32
Beitrag #8

didierj Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 69
Registriert seit: Apr 2005

LV6.1 & LV7.1.1
1997
kA


Schweiz
Über externen Code Interface Array zurückbekommen?
dr.smirnoff schrieb:Kann man irgendwie an die Call Libary Function dynamisch den Pfad und den Dateinamen der zu verwendenden DLL übergeben.
NEIN, kann man nicht!
Wenn du eine DLL dynamisch einbinden möchtest, so musst du dies über eine CASE-struktur erledigen, in welcher die einzelnen DLL-Aufrufe erfolgen. Alternativ (wenn später, jedoch jetzt noch nicht definierte Möglichkeiten und DLLs hinzukommen sollten) kannst du die Aufrufe in einzelne VI's packen, und dann die VI's über "VI-Server" aufrufen.

Gruss Didier
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
  externen Code aus Matlab/Simulink auf cRio nutzen nator 4 12.356 27.07.2016 12:24
Letzter Beitrag: nator
  Simulation Interface Toolkit Error 1003 mordred199 1 4.753 06.05.2013 11:25
Letzter Beitrag: jg
  Array initalisieren über DLL Funktion Forti 6 6.356 29.08.2012 13:06
Letzter Beitrag: rolfk
  Absturz und fehler bei aufrufen einer externen dll Georg26 3 6.484 18.07.2011 09:45
Letzter Beitrag: Georg26
  Gewisse Unsichehreiten beim richtigen Umgang mit Clustern in Ausblick auf externen Co Reyneke 4 6.725 14.04.2011 10:59
Letzter Beitrag: rolfk
  Einbinden externen Code mit unbekannter Parameterstruktur ghostwhisperer 12 12.022 21.12.2009 09:24
Letzter Beitrag: rolfk

Gehe zu: