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 

LabVIEW DLL in C# verwenden



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.01.2009, 09:00
Beitrag #3

TSC Offline
LVF-Team
LVF-Team

Beiträge: 1.882
Registriert seit: Sep 2008

LV 2018 SP1
2008
EN

52379
Deutschland
LabVIEW DLL in C# verwenden
' schrieb:Also in Sachen C# (also .Net) kenn ich mich gar nicht aus.

Ich weiß nur eins: Strings, also AnsiString, WideString etc, per DLL zu übergeben ist immer mit Problemen verbunden. Das liegt am Memorymanager eines jeden Systems, der die Strings (beachte: die haben einen Datenoverhead) verwaltet. Willst du zwei Systeme verbinden (DLL!), müssen sich die Memorymanager vertragen, wenn z.B. Strings übergeben werden sollen. Strings als solche würde ich nie übergeben - lieber PChars.

Definiere die Daten als PChar. Alloziere in C# (wenn das überhaupt noch geht) einen Speicher, auf den der PChar zeigt. Den Pointer übergibst du dann. Die Gegenseite soll die Daten dann zu sich kopieren. Dann kann nichts passieren.

(Und falls PChar in C# [*grübel*][CundKeinPChar?][*KannNichtSein*] nicht geht: gibst einen "const string"?)


Danke für die guten Infos. C# und C sind nicht so verwandt wie es sich anhört, manchmal leider und manchmal zum glück nicht.

So gibt es in C# zwar Zeiger, aber der dazugehörige code muss als UNSAFE deklariert werden. ich persönlcih vermeide sowas gerne. Aber du hast mich auf die Idee gebracht, einen String nciht direkt als String zu übergeben. Ich versuche es mal als Byte-Array. Mit Zahlenwerten hatte ich bisher ja keine Probleme, mal schauen wies mit Array aussieht. Und sonst werd ich mich mal nach static Strings umschauen.


LG
Torsten

"Über Fragen, die ich nicht beantworten kann, zerbreche ich mir nicht den Kopf!" (Konrad Zuse)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
LabVIEW DLL in C# verwenden - TSC - 12.01.2009, 17:20
LabVIEW DLL in C# verwenden - IchSelbst - 12.01.2009, 22:59
LabVIEW DLL in C# verwenden - TSC - 13.01.2009 09:00
LabVIEW DLL in C# verwenden - IchSelbst - 13.01.2009, 09:28
LabVIEW DLL in C# verwenden - TSC - 13.01.2009, 11:17
LabVIEW DLL in C# verwenden - TSC - 13.01.2009, 11:21

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  dll vonLabVIEW in Matlab Simulink verwenden /LabVIEW -> Matlab XPC hans_p 0 5.214 10.12.2009 10:19
Letzter Beitrag: hans_p
  LabVIEW Dll in VB.NET verwenden Frank Grießbaum 3 6.301 04.10.2006 13:42
Letzter Beitrag: eg

Gehe zu: