VC++ 2008: Keine .NET-freie Programme mehr möglich?
-
Servus,
eigentlich dachte ich, daß es mit VC++ weiterhin möglich sein sollte, Programme zu erstellen, die ohne .NET auskommen. Mit VC++ 2005 war das auch noch problemlos möglich.
Nun habe ich 2008 und irgendwie habe ich das Gefühl, daß das nicht mehr geht. Zumindest laufen die EXE-Files nicht auf anderen Rechnern, es kommt die Meldung "Diese Anwendung konnte nicht gestartet werden, weil die Anwenungskonfiguration nicht korrekt ist. Zur Problembehebung sollten Sie die Anwendung neu installieren."
Wenn ich danach google, finde ich einige Seiten, wo das Problem durch die Installation des 3.5er .NET-Frameworks behoben werden konnte.
Also hab ich meine Projekteinstellungen genauer angeschaut, und da war tatsächlich .NET 3.5 eingestellt. Aber es läßt sich nicht ändern, und wenn ich ein neues Projekt erstelle (Win32-Konsolenanwendung), dann habe ich oben in einer Combobox die Wahl zwischen drei .NET-Versionen, aber ich kann scheinbar kein Projekt anlegen, das völlig frei von .NET ist.
Ist das wirklich so? Falls nicht, wo kann ich die entsprechenden Einstellungen vornehmen?
-
du hast nicht gründlich genug gegoogled
-
irgendwie habe ich das Gefühl
Also ich weiß ja nicht, ob es gut ist, sich in der Welt der Bits und Bytes von Gefühlen leiten zu lassen. Normalerweise zählen hier immer nur harte Fakten (Falsch oder Wahr, 0 oder 1).
Und dein Gefühl trügt dich!
http://www.kharchi.eu/wiki/doku.php?id=cpp:faq#warum_funktioniert_meine_exe_auf_einem_anderen_pc_nicht
-
Sorry, ich sitze hier seit über 'ner Stunde und nichts funktioniert, habe bereits einige Dinge ausprobiert und auch ein paar Sachen bei Google gefunden (offensichtlich die falschen). Zudem läßt sich nach der Fehlermeldung nicht gut googlen (weil sie Deutsch ist und standardmäßig sogar ein Rechtschreibfehler mit drin ist) und die IDE erweckt bei mir dazu noch den Eindruck, es geht nicht mehr ohne .NET (wer mal ein neues Projekt anlegt oder die Projekteigenschaften genauer durchschaut, der wird das evtl. bestätigen können).
Also entschuldigt vielmals daß ich dann irgendwann auf die glorreiche Idee gekommen bin, einen Thread zu eröffnen...
Trotzdem danke für den Link, jetzt weiß ich wenigstens woran es liegt.
-
Erstelle ein Win32-Projekt und linke statisch!
http://blog.kalmbach-software.de/de/2008/03/05/wie-man-statisch-gegen-die-c-runtime-crt-linkt/
-
Ahh okay, das ist natürlich auch eine Möglichkeit. Bringt nur in meinem Fall nichts, da ich SDL verwende und es dafür zwingend erforderlich ist, "Multithreaded DLL" zu wählen. Trotzdem danke für den Tip, werde ich im Hinterkopf behalten für etwaige Nicht-SDL-Projekte
-
oder installier auf dem zielrechner die vc2008 redistributable, dann is das auch behoben
-
Oder liefere die DLLs als Private Assmbly mit aus...
-
SDL ist doch Open-Source, oder?
Neukompilieren mit Multithreaded, sodass kein Multithreaded DLL mehr benötigt wird
-
Jochen Kalmbach schrieb:
Erstelle ein Win32-Projekt und linke statisch!
http://blog.kalmbach-software.de/de/2008/03/05/wie-man-statisch-gegen-die-c-runtime-crt-linkt/Vielen Dank für den klasse Screencast! Hat mir gerade sehr geholfen. Ich dacht schon ich werd närrisch, mein Programm läuft nur bei mir, und bei meinen Kumpels net, aber jetzt ist alles in Butter.
-
Bitte!