Möchte in C++ geschriebenes Control als COM DLL compilieren
-
Hi,
ich habe unter SourceProject ein Control gefunden, das ich sehr genre für meine C# Anwendung verwenden würde.
Leider Compiliert das Demo-Projekt eine .exe und keine .dll für das Control und .exe für das Demo-Projekt:
http://www.codeproject.com/KB/tabs/OutlookTabCtrl.aspxIch habe leider kaum Ahnung von C++. Visual Studio habe ich natürlich (wegen C#) u. habe mir das Projekt mal angeschaut.
Nur .cpp und .h Files, keine Windows Form oder ähnliches, wie ich das auf C# oder VB gewohnt bin...
Natürlich auch die Codefiles des Controls in einem Unterordner.Die Frage ist nun, wie Trenne ich das Control (Die Sourcefiles) aus der Demoanwendung u. compiliere es als dll? Wie ist das z.B. mit dem Einstiegspunkt in so einer dll, geht das automatisch indem ich die Codefiles des controls nehme u. dann irgendwie auf dll compilieren umstelle? Ich glaub mal so einfach wirds nicht, aber ehrlich gesagt habe ich null Ahnung.
Wäre für jede Hilfe und Hinweis dankbar.
-
Das ist kein COM Control, von daher wäre es einiges an Aufwand daraus ein ActiveX oder sonstiges COM Control zu machen.
Im Grunde genommen müsstest du das Ding komplett neu schreiben.Programmier dir doch besser gleich was eigenes mit dem .NET Framework.
-
Naja, so ein Control wäre das Sahnehäubchen in der Bedienung meiner Anwendung geworden, darein Stunden Programmieraufwand zu stecken lohnt sich für mich nicht wirklich. Dachte es gibt vielleicht eine recht schnelle Möglichkeit.
Trotzdem danke.
-
Naja, du kannst ja mal ein paar Minuten opfern um nach fertigen .NET Komponenten in der Richtung zu suchen. Vielleicht gibts da schon was.
-
Bei CodeProject habe ich schon alles durch. Da gibts ähnlich komponenten, die mir aber bei weitem nicht so gut gefallen.
Wobei ich ansonsten schon die Controls loben muss, die so für .Net bei CodeProject zu finden sind, die brauchen sich nicht zu versteckenWas ist mit C++/CLI?
Kann ich nicht recht leicht einen Wrapper schreiben/generieren u. die klasse dann in .net verwenden?
-
Nein, da die Klasse die MFC verwendet, und du in .NET das .NET Framework verwedest. Ganz unterschiedliche Welten -> keine Chance.