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 

parametertyp - datenzeiger: kein Anschluß unter dieser Kiste



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!

07.11.2007, 15:10
Beitrag #1

t4b-1re-2 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 155
Registriert seit: May 2007

8.5
2007
de

99*
Deutschland
parametertyp - datenzeiger: kein Anschluß unter dieser Kiste
Hallo,

in einem Bibliotheksknoten für einen Parameter den Typ Datenzeiger anzugeben, bedeutet, die Anschlußmöglichkeit für diesen Parameter zu verlieren....
Wie übergebe ich denn der Funktion den Pointer auf zuvor allokierten Speicher???

Hat da mal jemand ein Beispiel?
Vielen Dank!!!

Grüße
t4b-1re-2
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
07.11.2007, 16:24
Beitrag #2

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.692
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
parametertyp - datenzeiger: kein Anschluß unter dieser Kiste
' schrieb:in einem Bibliotheksknoten für einen Parameter den Typ Datenzeiger anzugeben, bedeutet, die Anschlußmöglichkeit für diesen Parameter zu verlieren....
Das verstehe ich nicht.

Wie stellst du fest, dass die Anschlussmöglichkeit verloren geht? Welchen Anschluss meist du? Einen Eingang in den Knoten hinein oder einen Ausgang aus dem Knoten hinaus?

Zitat:Wie übergebe ich denn der Funktion den Pointer auf zuvor allokierten Speicher???
Gehe ich richtig in der Annahme, dass du in der DLL Speicher bereitstellen willst, mit dem LV arbeiten soll? Oder umgekehrt?

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
07.11.2007, 17:15
Beitrag #3

t4b-1re-2 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 155
Registriert seit: May 2007

8.5
2007
de

99*
Deutschland
parametertyp - datenzeiger: kein Anschluß unter dieser Kiste
Zitat:Wie stellst du fest, dass die Anschlussmöglichkeit verloren geht? Welchen Anschluss meist du? Einen Eingang in den Knoten hinein oder einen Ausgang aus dem Knoten hinaus?
Ja genau, es gibt keine möglichkeit mehr, dem Parameter einen Eingangsanschluß oder einen Ausgangsanschluß zu verpassen (also Draht ziehen). Ein entsprechendes Feld im Bibliotheksknoten ist zwar noch vorhanden, aber es ist ausgegraut und kann nicht verbunden werden.

Zitat:Gehe ich richtig in der Annahme, dass du in der DLL Speicher bereitstellen willst, mit dem LV arbeiten soll? Oder umgekehrt?
ich will in LV Speicher allokieren, den Pointer auf diesen Speicher an die DLL übergeben - die schreibt in den Speicherbereich - und anschließend hät ich den Pointer gern zurück um mit LV aus dem gezeigten Speicherbereich zu lesen..

Viele Grüße
t4b-1re-2
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.11.2007, 18:06
Beitrag #4

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.692
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
parametertyp - datenzeiger: kein Anschluß unter dieser Kiste
' schrieb:es gibt keine möglichkeit mehr, dem Parameter einen Eingangsanschluß oder einen Ausgangsanschluß zu verpassen (also Draht ziehen). Ein entsprechendes Feld im Bibliotheksknoten ist zwar noch vorhanden, aber es ist ausgegraut und kann nicht verbunden werden.
Hmm. Ich kann mir das jetzt zwar nicht so vorstellen und wüsste auch nicht wie das passieren soll - aber wenn du das sagst, wird das wohl auch so sein. Kannst du mal ein Muster-VI machen, an dem man den Fehler sieht, und hier zusammen mit der (Muster-)DLL einstellen?

Zitat:ich will in LV Speicher allokieren, den Pointer auf diesen Speicher an die DLL übergeben - die schreibt in den Speicherbereich - und anschließend hät ich den Pointer gern zurück um mit LV aus dem gezeigten Speicherbereich zu lesen
Jawohl. Genau so mach ich's auch immer. Geht wunderbar. Ich würde es aber so erklären: Du stellt in LV Speicher zur Verfügung - z.B. ein String oder ein Array - und übergibst einen Pointer dort drauf (Datenzeiger) an die DLL. Die schreibt dann an den Pointer ihre Daten. Zurückgeben tut die DLL allerdings nichts, respektive keinen Pointer. Alleine nach dem Beenden des DLL-Knotens stehen bereits in LV, also im reservierten Bereich String oder Array, die gewünschten Daten.

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
08.11.2007, 11:52
Beitrag #5

t4b-1re-2 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 155
Registriert seit: May 2007

8.5
2007
de

99*
Deutschland
parametertyp - datenzeiger: kein Anschluß unter dieser Kiste
Hallo,
die Bibliothek ist die libpq.dll
Sonstige .dll  libpq.dll (Größe: 149,93 KB / Downloads: 302)
von PostgreSQL (das ist das C-Interface). die Doku dazu findest du hier: http://www.postgresql.org/docs/8.2/interac...PQ-COPY-RECEIVE
Es geht um die Funktion PQgetCopyData
also, Diagramm:
   
für buffer ist eben als Parametertyp Datenzeiger angegeben, das ist das dritte Feld von oben, wie du siehst ist es ausgegraut und gibt keine Möglichkeit einen Draht rannzuklemmen.

Hast du vielleicht mal ein Beispiel für mich wo du mit dem Datenzeiger arbeitest?

Viele Grüße
t4b-1re-2
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.11.2007, 12:07
Beitrag #6

RoLe Offline
LVF-Guru
*****


Beiträge: 1.236
Registriert seit: Jul 2007

-
1997
en

0
Schweiz
parametertyp - datenzeiger: kein Anschluß unter dieser Kiste
Also ich mache das immer so, wie in dem Bild.
Ich verwende auch noch LV7.1, in LV8.2 habe ich gesehen, dass da zusätzliche Optionen drinn sind.
Wozu, wie die zu verwenden sind, weis ich auch nicht.

Gruss
Roland


Angehängte Datei(en) Thumbnail(s)
   

.·´¯)--> Leben ist das, was dir passiert, wenn du eifrig dabei bist andere Pläne zu machen <--(¯`·.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
08.11.2007, 12:46
Beitrag #7

Guest
Unregistered


 







parametertyp - datenzeiger: kein Anschluß unter dieser Kiste
Ich ackere am selbe Problem. Wobei es bei mir noch etwas komplizierter ist, da ich eine Struktur in C habe, die auch Arrays enthalt. Die Struktur selbst kann durch Cluster abgebildet werden. Wie in http://www.LabVIEWforum.de/index.php?showtopic=7512 erwähnt muß dieses Cluster in LabVIEW initialisiert - also Speicher allokiert werden. Vielleicht habe ich auch da noch einen Fehler.

Wie ich das mit dem Array lösen soll ist mir noch nicht klar. Da in LabVIEW die Arrays dynamisch sind, wird die Arraylänge vorangestellt, was in C dann natürlich nicht passt. Einzige Lösung scheint wohl zu sein statt Arrays ebenfalls Cluster zu verwenden, wobei dann aber die Größe bekannt sein muß und dieses Cluster dann "von Hand" angelegt werden muss!? http://forums.ni.com/ni/board/message?boar...uireLogin=False

Dein Problem liegt glaube ich am Parametertyp Datenzeiger:

(..hmm.. wie kriege ich hier den Screenshot rein?? Habs nun als Anlage).

Wozu der gut ist weiß ich nicht. Die Beschreibung dazu ist recht dürftig. Wenn ich das auswähle, kommt bei mir auch der Fehler dass die Verbindung ungültig ist.

Aber wenn Du Datentyp: "An Datentyp anpassen verwendest" dann kannst Du auch verbinden. Was dann bei "Format" einzustellen ist, ist mir allerdings auch nicht klar. Vielleicht kann ich Dir morgen mehr sagen, wenn es denn bei mir klappen sollte.


Angehängte Datei(en) Thumbnail(s)
           
Diese Nachricht in einer Antwort zitieren to top
08.11.2007, 13:53 (Dieser Beitrag wurde zuletzt bearbeitet: 08.11.2007 13:55 von IchSelbst.)
Beitrag #8

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.692
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
parametertyp - datenzeiger: kein Anschluß unter dieser Kiste
' schrieb:Dein Problem liegt glaube ich am Parametertyp Datenzeiger:
Stimmt.

Macht es so, wie bei RoLe steht: Als [u]Parametertyp[/u] wird String (oder Numerisch etc) gewählt. Bei Datenformat wird "Zeiger in Wert" verwendet. (Alles andere ist speziell für LV und für höhere Ebenen)

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
08.11.2007, 16:29
Beitrag #9

t4b-1re-2 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 155
Registriert seit: May 2007

8.5
2007
de

99*
Deutschland
parametertyp - datenzeiger: kein Anschluß unter dieser Kiste
' schrieb:Also ich mache das immer so, wie in dem Bild.

danke dir. mein stand ist: die Funktion läuft ohne Speicherzugriffsverletzung. Dabei ist egal, ob ich als Pointer ein Array initialisiere und so wie du als bytearray in einen String umwandel oder einfach einen leeren String. Denn egal was ich tue stehen am ende in dem String nur seltsamste komische Sonderzeichen.

Und also probier ich weiter...

Viele Grüße
t4b-1re-2
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.11.2007, 16:48
Beitrag #10

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
parametertyp - datenzeiger: kein Anschluß unter dieser Kiste
Mal 'ne andere Frage....

Ich verwende auch PostgreSQL, aber mit DLLs habe ich da nichts zu tun.... Was hast Du denn vor?

Gruß Markus

' schrieb:danke dir. mein stand ist: die Funktion läuft ohne Speicherzugriffsverletzung. Dabei ist egal, ob ich als Pointer ein Array initialisiere und so wie du als bytearray in einen String umwandel oder einfach einen leeren String. Denn egal was ich tue stehen am ende in dem String nur seltsamste komische Sonderzeichen.

Und also probier ich weiter...

Viele Grüße
t4b-1re-2

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
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
  Übergabe von Datenzeiger Cubaner 3 6.007 22.01.2008 13:18
Letzter Beitrag: rolfk

Gehe zu: