Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
CString von C++DLL importieren
Kippstrahl
myCSharp.de - Member



Dabei seit:
Beiträge: 1

Themenstarter:

CString von C++DLL importieren

beantworten | zitieren | melden

Hi, ich hab ne Engine in C++ Programmiert und möchte diese nun per C# GUI auf den Bildschirm bringen. Meine DLL führt eine Funktion aus und gibt einen sehr langen CString zurück (char *). Diesen Text möchte ich in C# verarbeiten und in ein Grid einfügen (im Stile von Excel). Das Problem ist, dass ich nicht weiß, wie ich diesen char * Pointer in C# importieren soll.
Kann mir da jemand bitte helfen?
Danke schon mal
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo Kippstrahl,

als Typen kommen eigentlich nur String oder StringBuilder in Frage.

herbivore
private Nachricht | Beiträge des Benutzers
kleines_eichhoernchen
myCSharp.de - Member

Avatar #avatar-2079.jpg


Dabei seit:
Beiträge: 3.971
Herkunft: Ursprünglich Vogtland, jetzt Much

beantworten | zitieren | melden

Du erzeugst einfach einen Stringbuilder und übergibst diesen als Puffer an deine C-Funktion. Allerdings musst du im Konstruktor des Stringbuilders die Größe des Puffers angeben.

Hier im Forum solltest du dazu genügend Beispiele finden.
Es gibt 3 Arten von Menschen, die die bis 3 zählen können und die, die es nicht können...
private Nachricht | Beiträge des Benutzers
Corpsegrinder
myCSharp.de - Member



Dabei seit:
Beiträge: 401

beantworten | zitieren | melden

Und da du die C++-lib selber geschrieben hast gebe ich dir hier schonmal den Tipp: benutze keine char*, sondern wchar_t*, dann bekommst du auch keine Probleme mit Unicode.
private Nachricht | Beiträge des Benutzers