.NET-Programme mit Visual-Studio-Konsolencompiler
-
Wie ist es möglich, Programme, die die Windows-Forms-Klassen benutzen, mit dem Visual-Studio-Compiler zu kompilieren?
Übercl /clr <datei>
ist eine Kompilierung zur .NET-Plattform möglich.
Wie schaffe ich es jetzt, das ich Windows-Forms verwenden kann?
-
Ja es ist möglich, aber bevor du weitermachst lies das: http://www.c-plusplus.net/forum/263084
-
Das Windows-Forms kein echtes C++ weiß ich. Ich brauche trotzdem eine Bibliothek für native GUI-Erstellung unter Windows, und das ist das einzige, was direkt von Microsoft kommt. Nachteile sind mir durchaus bekannt.
-
Was genau meinst du mit "native"? Wenn du eine Windows Forms Anwendung schreiben willst, dann nimm C#, C++/CLI ist dafür völlig ungeeignet.
-
Das *einzige* was von MS kommt und für "Forms" nativ ist ist die MFC!
-
mit nativ bezog ich mich aud die Nutzung der Systemresourcen von Windwos beim Zeichnen der Widgets, im Gegensatz zu zum Beispiel GTk.
Weiß jetzt jemand wie man das macht?
-
ch++ schrieb:
Weiß jetzt jemand wie man das macht?
Mit der WinAPI
-
C++/CLI und WinForms macht keinen Sinn. Ab VS2012 gibt es dazu nicht mal mehr Projektvorlagen! Sollte man also auf keinen Fall verwenden!
Siehe auch:
http://blog.kalmbach-software.de/de/2010/03/05/ccli-und-winforms-macht-keinen-sinn/Verwende MFC oder C# mit WinForms.
-
Und als Ergänzung dazu, um die Frage zum Konsolencompiler zu beantworten:
Egal ob WinAPI, MFC oder .net, die verwendeten Kommandozeilen zeigt Visual Studio in den Projekteigenschaften an. Einfach rechter Mausklick auf den Projektnamen in der Baumdarstellung und Properties bzw. Eigenschaften wählen. Die untersten Elemente in den C++ und Linkereinstellungen zeigen die komplette Befehlszeile.
Dabei ist zu beachten, dass der Compiler für jede *.cpp Datei einzeln aufgerufen wird, deshalb taucht in den Kommandozeilenparametern dort auch die Option /c auf (nur compilieren nicht linken).
Außerdem haben Programme, insbesondere .net Programme, auch ein Manifest, das geht auch als Eingabe an den Linker.
Wegen der Komplexität dieser Geschichte nimmt man zum Erstellen auf der Kommandozeile normalerweise entweder ein Makefile oder verwendet, wie Visual Studio, MSBuild.