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 

Dynamisch Speicher in einer DLL reservieren



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!

08.06.2006, 16:08
Beitrag #1

DarthZiu Offline
LVF-Grünschnabel
*


Beiträge: 10
Registriert seit: Apr 2006



kA



Dynamisch Speicher in einer DLL reservieren
Hi Leute,
nach ewigem Wühlen in den NI Dokus bin ich immer noch nicht schlauer.

Ich suche nach einer Möglichkeit, in einer C/C++ DLL dynamisch Speicher zu allokieren, ohne vorher die Größe in LabVIEW zu wissen.

Diesen Mechanismus benötige ich für verschiedene Datentypen (int-Arrays (auch mehrdimensional), Arrays aus Strings, usw.)

In den NI-Dokus steht zwar, dass man mit den Memory Managern der cintools solche Sachen machen kann. Aber dank der genialen *hüstel* Dokumentation von NI bekomm ich das irgendwie nicht hin.

Weiß jemand Rat?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
08.06.2006, 16:22
Beitrag #2

A.Berndsen Offline
LVF-Team
LVF-Team

Beiträge: 2.437
Registriert seit: Feb 2005

8.2.1 - 2011
2004
DE

724xx
Deutschland
Dynamisch Speicher in einer DLL reservieren
Hallo DarthZiu,

ich bin zwar überhaupt kein Experte was DLL's anbelangt, aber mit der Initialisierung von Arrays solltest Du den Speicher meiner Meinung nach Reservieren können.
VI Initialize Array (Array initialisieren) auf der Array Palette. Der Anschluß Dimension ist etwas verwirrend, der bedeutet hier die Anzahl der Elemente.

Gruß
Andreas

Geht nicht, gibts nicht!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.06.2006, 17:28
Beitrag #3

cb Offline
LVF-SeniorMod


Beiträge: 1.731
Registriert seit: Feb 2006

2018SP1
2001
EN

40xxx
Deutschland
Dynamisch Speicher in einer DLL reservieren
' schrieb:Hi Leute,
nach ewigem Wühlen in den NI Dokus bin ich immer noch nicht schlauer.

Ich suche nach einer Möglichkeit, in einer C/C++ DLL dynamisch Speicher zu allokieren, ohne vorher die Größe in LabVIEW zu wissen.

Diesen Mechanismus benötige ich für verschiedene Datentypen (int-Arrays (auch mehrdimensional), Arrays aus Strings, usw.)

In den NI-Dokus steht zwar, dass man mit den Memory Managern der cintools solche Sachen machen kann. Aber dank der genialen *hüstel* Dokumentation von NI bekomm ich das irgendwie nicht hin.

Weiß jemand Rat?

naja, das ist ja auch keine Sache von LabVIEW, sondern eine Aufgabe, die du in deiner DLL programmieren musst. die CIN-Tools stellen eigentlich nur die notwendigen Werkzeuge zur Verfügung um die LabVIEW-Datentypen in deinem externen Code verwenden zu können.

Grüße
CB

http://www.rotabench.com - rotierende Prüfstände nach dem Baukasten-Prinzip
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.06.2006, 17:43
Beitrag #4

eg Offline
LVF-SeniorMod


Beiträge: 3.868
Registriert seit: Nov 2005

2016
2003
kA

66111
Deutschland
Dynamisch Speicher in einer DLL reservieren
Ich habe eigentlich gedacht man muss immer Speicher in LV allokieren und an die DLL weitergeben.
Nur ich habe immer gewusst wieviel Speicher ich brauche.
In deinem Fall würde ich einfach ein wenig mehr allokieren als benötigt und die Sache ist erledigt.

Gruss

Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.06.2006, 20:22
Beitrag #5

cb Offline
LVF-SeniorMod


Beiträge: 1.731
Registriert seit: Feb 2006

2018SP1
2001
EN

40xxx
Deutschland
Dynamisch Speicher in einer DLL reservieren
' schrieb:Ich habe eigentlich gedacht man muss immer Speicher in LV allokieren und an die DLL weitergeben.
Nur ich habe immer gewusst wieviel Speicher ich brauche.
In deinem Fall würde ich einfach ein wenig mehr allokieren als benötigt und die Sache ist erledigt.

Gruss

gut geht auch, ist aber schwierig, weil man dann ja mit dem LabVIEW-eigenen Memory-Management arbeiten muss, und ob DAS gut geht?

http://www.rotabench.com - rotierende Prüfstände nach dem Baukasten-Prinzip
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
  always incluse & dynamisch geladene VIs gottfried 2 3.977 12.01.2011 16:18
Letzter Beitrag: macmarvin
  Dynamisch eingebundene Vis in EXE finden Achimedes 10 11.600 05.07.2007 08:52
Letzter Beitrag: rolfk

Gehe zu: