Hallo, Ich schon wieder!
Ich habe genau dieses Problem
http://msdn.microsoft.com/msdnmag/issues/02/08/CQA/#…
D.h. fast genau. Der Import der C++ DLL findet nicht in C# statt, sondern in einem Wrapper Projekt in C++. Deshalb kann ich den StringBuilder aus C# hier nicht verwenden. Gibt es eine Möglichkeit, daß C# einen String vom C++ Wrapper bekommen kann?
Grüsse Chris
Hi!
Um in C++ Funktionen aus einer DLL aufzurufen brauchst Du doch den ganzen P/invoke-Voodoo nicht.
Das passiert klassisch mit einem LoadLibrary() und dem direkten Aufruf der Funktionen mit ihren normalen (d.h. nicht gemarshal’ten) Parametern. Und die können durchaus char* oder CString oder sonstwas sein.
Den StringBuilder verwendest Du ja nur, wenn Du von C# aus eine Funktion einer DLL aufrufen willst, die einen char* als Parameter hat…
Oder habe ich Dein Problem falsch verstanden?
Martin
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]