Auf dotnet c# konvertieren

23/03/2009 - 16:48 von Christian Mauerer | Report spam
Hallo,

ich habe eine c++ Anwendung.
Diese möchte ich nun auf dotnet c# konvertieren.

Bei diesem Programm werden weitere c++-Dateien included (mit #include
<dateiname.h>
Diese Dateien, auf welche durch 'include' eingelesen werden enthalten
weitere include-Anweisungen.

Nun meine Frage.
Wie schaffe ich es, diese Anwendung in c# zu verwenden?
Muss ich nun aus jeder Datei (.h-Datei) welche durch include verwendet wird,
eine dll in managed c++ erstellen?

Vielen Dank und schöne Grüße

Christian
 

Lesen sie die antworten

#1 Kerem Gümrükcü
23/03/2009 - 17:27 | Warnen spam
Halo Christian,

Du hast nun zwei Möglichkeiten:

1. Du kannst bei .NET bleiben und weiter C++ verwenden (Visual C++.NET)
und so auch das .NET Runtime mit C++ verwenden,...

2. Du gehst komplett nach C#, allerdings sind dann die Include Dateien
nicht mehr Anwendbar. Die Include Dateien beinhalten Code (wenn selber
geschrieben, d.h. wenn die Include-Dateien selber gemacht wurden!), den
Du dann von Hand nach C# übersezten musst. Das können Klassen, Funktionen,
Konstanten, etc, sein

Bei C# arbeitet man mit der using -direktive und bindet einen Namespace
in sein Projekt ein, der dann die nötigen Klassen und Funktionen anbietet.
Das könnte man als Gegenstück zu dem Include in C/C++ bezeichnen,...

Hier werden Dir sicher noch einige mehr an Info zukommen lassen,
aber das erst mal von mir,...

Wie schaffe ich es, diese Anwendung in c# zu verwenden?



Garnicht, in C# hast Du "using":
http://msdn.microsoft.com/de-de/library/sf0df423(VS.80).aspx

Muss ich nun aus jeder Datei (.h-Datei) welche durch include verwendet
wird, eine dll in managed c++ erstellen?



Nein, wenn es Windows API aufrufe, oder generell C-Exporte sind, die
Du aus den Headern ansprichst, dann machst Du das mit PInvoke:

[Consuming Unmanaged DLL Functions]
http://msdn.microsoft.com/en-us/lib...hfadc.aspx

Die meisten Funktionen aus den Windows Headern gibt es
in irgend einer Form schon im .NET, oder aber Du kannst
nahezu alle mit dem oben genannten verfahren per PInvoke
benutzen,...

Grüße

Kerem


Beste Grüsse / Best regards / Votre bien devoue
Kerem Gümrükcü
Latest Project: http://www.pro-it-education.de/soft...iceremover
Latest Open-Source Projects: http://entwicklung.junetz.de
"This reply is provided as is, without warranty express or implied."

Ähnliche fragen