<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Zum Verständnis, C++ vs. Net, WinApi, Windows Vista usw.]]></title><description><![CDATA[<p>Hallo, ich würde gern ein paar Fragen an die Fachwelt stellen, die mir gerade so durch den Kopf gehen und mich schon mal im Voraus für hilfreiche Antworten bedanken. Hintergrund ist, das ich vor kurzem ein Gespräch mit jemandem führte wo es darum ging eine bestehende Windows-Software die auf einer umfangreichen Bibliothek (dlls in c++) basiert auf .Net zu portieren und für kommende Windows Generationen (Vista &amp; Co) &quot;fit zu machen&quot;.</p>
<p>Ohne die genaue Architektur der Sofware zu kennen (also womit z.B. die Oberfläche usw. erstellt wurde), war die erste Frage die sich mir da aufdrängte: Warum sollte das überhaupt notwendig sein. Welchen Vorteil bringt die Re-Implementierung einer komplexen Bibliothek mit aufwendigen Algorithmen in C# (sofern das überhaupt möglich wäre)? Meiner Meinung nach nichts, solange sie Betriebssystemneutral gehalten ist, oder? Da C++ in direkten Maschinencode übersetzt wird wäre doch bei einer C# Implementierung, die dann in einer Laufzeitumgebung ausgeführt wird eher mit einem Performanceverlust zu rechnen? Abgesehen davon lässt sich mit C# eher schlecht systemnah (Speicherzugriff usw.) programmieren. Lassen sich damit überhaupt DLLs erstellen? UND: Wozu .Net (plattformunabhängige Laufzeitumgebung) wenn es eine offizielle Laufzeitumgebung von MS momentan eh nur für Windows gibt.</p>
<p>Zweite Frage die mir kam: Man könnte die Bibliothek als C++ Implementierung beibehalten und das Frontend bzw. umgebende Framework portieren. Wie sind hier die Möglichkeiten mit C#/.Net, Bibliotheken (DLLs) einzubinden. Ich meine mal gelesen haben, dass diese sich nur dynamisch laden lassen und nicht statisch linkbar sind. Ist das korrekt?</p>
<p>Dritte Frage die mir kam. Wie siehts eigentlich mit der guten WinApi unter Windows Vista aus. Existiert die noch, oder gibt es ein Nachfolgemodell welches die altbekannte WinApi über einen Wrapper oder ähnliches zur Verfügung stellt?</p>
<p>Vierte Frage: Wird es zukünftig überhaupt notwendig sein Windows Software .Net fähig zu halten um sie auf Windows auszuführen. Auf der WinApi basierende Programme müssen doch aus Kompatibilitätsgründen weiter ausgeführt werden können. Somit kann man doch auch weiterhin klassisch MFC oder WinApi Programme in C++ schreiben ohne was zu befürchten zu haben oder?</p>
<p>Fünfte Frage: Soweit ich gelesen hab, ist C++/CIL momentan die einzige Möglichkeit Mischcode (.Net/Maschinencode) zu erstellen aber wohl sehr unbeliebt wegen der unangenehmen Syntax und schlechten Lesbarkeit. Wäre diese Lösung ein Mittelweg (also Bilbiothek in C++ behalten) und Frontend auf .Net umstellen.</p>
<p>Wäre sehr schön wenn jemand meine wirren Denkanstöße mal mit fachlich, fundiertem Wissen hinterlegenlegen/diskutieren könnte.</p>
<p>Viele Grüße<br />
mc_ginley</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/171874/zum-verständnis-c-vs-net-winapi-windows-vista-usw</link><generator>RSS for Node</generator><lastBuildDate>Tue, 14 Jul 2026 00:52:47 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/171874.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 30 Jan 2007 10:29:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zum Verständnis, C++ vs. Net, WinApi, Windows Vista usw. on Tue, 30 Jan 2007 10:29:26 GMT]]></title><description><![CDATA[<p>Hallo, ich würde gern ein paar Fragen an die Fachwelt stellen, die mir gerade so durch den Kopf gehen und mich schon mal im Voraus für hilfreiche Antworten bedanken. Hintergrund ist, das ich vor kurzem ein Gespräch mit jemandem führte wo es darum ging eine bestehende Windows-Software die auf einer umfangreichen Bibliothek (dlls in c++) basiert auf .Net zu portieren und für kommende Windows Generationen (Vista &amp; Co) &quot;fit zu machen&quot;.</p>
<p>Ohne die genaue Architektur der Sofware zu kennen (also womit z.B. die Oberfläche usw. erstellt wurde), war die erste Frage die sich mir da aufdrängte: Warum sollte das überhaupt notwendig sein. Welchen Vorteil bringt die Re-Implementierung einer komplexen Bibliothek mit aufwendigen Algorithmen in C# (sofern das überhaupt möglich wäre)? Meiner Meinung nach nichts, solange sie Betriebssystemneutral gehalten ist, oder? Da C++ in direkten Maschinencode übersetzt wird wäre doch bei einer C# Implementierung, die dann in einer Laufzeitumgebung ausgeführt wird eher mit einem Performanceverlust zu rechnen? Abgesehen davon lässt sich mit C# eher schlecht systemnah (Speicherzugriff usw.) programmieren. Lassen sich damit überhaupt DLLs erstellen? UND: Wozu .Net (plattformunabhängige Laufzeitumgebung) wenn es eine offizielle Laufzeitumgebung von MS momentan eh nur für Windows gibt.</p>
<p>Zweite Frage die mir kam: Man könnte die Bibliothek als C++ Implementierung beibehalten und das Frontend bzw. umgebende Framework portieren. Wie sind hier die Möglichkeiten mit C#/.Net, Bibliotheken (DLLs) einzubinden. Ich meine mal gelesen haben, dass diese sich nur dynamisch laden lassen und nicht statisch linkbar sind. Ist das korrekt?</p>
<p>Dritte Frage die mir kam. Wie siehts eigentlich mit der guten WinApi unter Windows Vista aus. Existiert die noch, oder gibt es ein Nachfolgemodell welches die altbekannte WinApi über einen Wrapper oder ähnliches zur Verfügung stellt?</p>
<p>Vierte Frage: Wird es zukünftig überhaupt notwendig sein Windows Software .Net fähig zu halten um sie auf Windows auszuführen. Auf der WinApi basierende Programme müssen doch aus Kompatibilitätsgründen weiter ausgeführt werden können. Somit kann man doch auch weiterhin klassisch MFC oder WinApi Programme in C++ schreiben ohne was zu befürchten zu haben oder?</p>
<p>Fünfte Frage: Soweit ich gelesen hab, ist C++/CIL momentan die einzige Möglichkeit Mischcode (.Net/Maschinencode) zu erstellen aber wohl sehr unbeliebt wegen der unangenehmen Syntax und schlechten Lesbarkeit. Wäre diese Lösung ein Mittelweg (also Bilbiothek in C++ behalten) und Frontend auf .Net umstellen.</p>
<p>Wäre sehr schön wenn jemand meine wirren Denkanstöße mal mit fachlich, fundiertem Wissen hinterlegenlegen/diskutieren könnte.</p>
<p>Viele Grüße<br />
mc_ginley</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1219675</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1219675</guid><dc:creator><![CDATA[mc_ginley]]></dc:creator><pubDate>Tue, 30 Jan 2007 10:29:26 GMT</pubDate></item><item><title><![CDATA[Reply to Zum Verständnis, C++ vs. Net, WinApi, Windows Vista usw. on Tue, 30 Jan 2007 11:01:05 GMT]]></title><description><![CDATA[<p>Also, zu Frage 3: Die Frage hat es schon öfters gegeben. Die WinAPI wird weiter bestehen bleiben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1219693</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1219693</guid><dc:creator><![CDATA[Elektronix]]></dc:creator><pubDate>Tue, 30 Jan 2007 11:01:05 GMT</pubDate></item><item><title><![CDATA[Reply to Zum Verständnis, C++ vs. Net, WinApi, Windows Vista usw. on Tue, 30 Jan 2007 11:16:15 GMT]]></title><description><![CDATA[<p>Und zu Frage fünf:</p>
<p>Sehr unbeliebt war der erste Versuch C++ an .net zu binden. Dieser hieß &quot;managed C++&quot;. Deswegen gibt es seit .net 2.0 C++/CLI. Das sieht wesentlich übersichtlicher aus.</p>
<p>Die Zusammenarbeit zwischen C# und C++ klappt damit ganz gut.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1219708</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1219708</guid><dc:creator><![CDATA[nn]]></dc:creator><pubDate>Tue, 30 Jan 2007 11:16:15 GMT</pubDate></item><item><title><![CDATA[Reply to Zum Verständnis, C++ vs. Net, WinApi, Windows Vista usw. on Tue, 30 Jan 2007 21:12:29 GMT]]></title><description><![CDATA[<p>Frage 4: Es wird weiterhin native Programme geben; die MFC wird IMHO sogar mit Orcas wesentlich erweitert und auf Vista angepasst; es kann sein, das MS für neue Sachen (keine OS-Dinge) nur noch Managed-Schnittstellen zur Verfügung stellt (wie sie es ja schon mit Avalon/Indigo getan haben).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1220198</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1220198</guid><dc:creator><![CDATA[Jochen Kalmbach]]></dc:creator><pubDate>Tue, 30 Jan 2007 21:12:29 GMT</pubDate></item><item><title><![CDATA[Reply to Zum Verständnis, C++ vs. Net, WinApi, Windows Vista usw. on Wed, 31 Jan 2007 13:30:12 GMT]]></title><description><![CDATA[<p>ja danke soweit. muss mich mal schlau machen was es mit C++/CLI auf sich hat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1220486</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1220486</guid><dc:creator><![CDATA[mc_ginley]]></dc:creator><pubDate>Wed, 31 Jan 2007 13:30:12 GMT</pubDate></item><item><title><![CDATA[Reply to Zum Verständnis, C++ vs. Net, WinApi, Windows Vista usw. on Wed, 31 Jan 2007 13:54:58 GMT]]></title><description><![CDATA[<p>mc_ginley schrieb:</p>
<blockquote>
<p>ja danke soweit. muss mich mal schlau machen was es mit C++/CLI auf sich hat.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/27a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--right_arrow"
      title=":arrow_right:"
      alt="➡"
    /> <a href="http://de.wikipedia.org/wiki/C-Plusplus/CLI" rel="nofollow">http://de.wikipedia.org/wiki/C-Plusplus/CLI</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1220504</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1220504</guid><dc:creator><![CDATA[CodeFinder]]></dc:creator><pubDate>Wed, 31 Jan 2007 13:54:58 GMT</pubDate></item></channel></rss>