MFC, C++ Client - Komponente C# - Socket Server
-
Hallo,
ich möchte folgendes machen
MFC, C++ ------ Komponente C# ----Socket --- Server Wie kann ich ein C# Komponente einbinden?
Das Timeout Handling ist einfacher.
Woe gibt es eine Step by step Anleitung?Grüße Andrea
http://msdn.microsoft.com/de-de/library/k8d11d4s(VS.80).aspx
-
Es gibt nicht viel zu beachten... siehe Posting in den Newsgroup...
Ausser vielleicht:
http://msdn.microsoft.com/de-de/library/ms235211Und so viele Schritte sind es auch nicht, als dass man eine ausführliche Anleitung braucht...
Aber hier nochmals für Dich:
Project|Properties|Configuration Properties|General|Common Language Runtime Support: Common Language Runtime Support (/clr)!?
Dann einfach in
Project|Common Properties|Framework and Referencesdas passende Framework auswählen (also .NET 2, 3 oder 3.5)
und "Add New Reference..." drücken und die C#-Assembly auswählen.Und dann einfach verwenden:
MySeeSharpAssembly::Foo::Bar ^bar = gcnew MySeeSharpAssembly::Foo::Bar(); bar->DoSomething();Beachte auch noch, dass bestimmte Dinge mit /clr nicht erlaubt sind:
http://msdn.microsoft.com/de-de/library/ffkc918hPS: Passenderes Forum wäre: C++/CLI
http://www.c-plusplus.net/forum/viewforum.php?f=58
-
Hallo,
ja das passt ganz gut, wußte ich nicht dass das geht.

Fehler 1 Befehlszeile error D8016 : Die Befehlszeilenoptionen /MTd und /clr sind inkompatibel. cl
Wird an dem liegen.
Beachte auch noch, dass bestimmte Dinge mit /clr nicht erlaubt sind:
http://msdn.microsoft.com/de-de/library/ffkc918hDu kennst bestimmt die richtige Einstellung.
void MFCCSharpView::OnMytestCsharp()
{
// TODO: Fügen Sie hier Ihren Befehlsbehandlungscode ein.
CTestFuerCPP::Class1 ^bar = gcnew CTestFuerCPP::Class1();
int z = bar->MyFirstTestCalculate();
}in C#
namespace CTestFuerCPP
{
public class Class1
{
public int MyFirstTestCalculate()
{
return 4;}
}
}
Grüße Andrea