Benutzer mit den meisten Antworten
Anfängerfrage: Konsolenanwendung für Windows98 mit VS 2008 erstellen

Frage
-
Hallo,
ich möchte eine selbständig lauffähige Konsolenanwendung für Windows 98 erstellen. Hier mein Quelltext, der mit VS2008 (starten ohne Debugging) läuft:#include
<iostream>
using namespace std;
int main()
{
int i1;
int i2 = 10;
cout << "Geben Sie eine Zahl ein: " <<endl;
cin >> i1;
if (i1 < 10) {cout << "Die eingegebene Zahl ist kleiner als " << i2 <<"." << endl;}
else {cout << "Die eingegebene Zahl ist groesser oder gleich " <<i2 <<"." << endl; }
return(0);
}
Meine Fragen:
1. Was muss ich tun, damit das damit erstellte exe-File nicht sofort die Konsole schließt?
2. Was muss ich tun, damit das damit erstellte exe-File die Bedingung in 1. erfüllt und auch außerhalb von VS 2008 läuft?
3. Was muss ich tun, damit das damit erstellte exe-File die Bedingungen in 1. und 2. erfüllt und unter Windows 98 läuft?- Bearbeitet Gerhard from Berlin_Germany Dienstag, 26. Mai 2009 21:01
Antworten
-
- Stelle das System auf Static Linking für die CRT um. Dann musst Du keine Runtime installalieren.
http://blog.kalmbach-software.de/de/2008/03/05/wie-man-statisch-gegen-die-c-runtime-crt-linkt/
- Man kann mit VS-2008 keine Programme mehr für Win98 erzeugen.
IMHO war VC-2005 das letzte VS, dass Windows 98 unterstützte,
Supported Platforms (Visual C++) VS-2005 http://msdn.microsoft.com/en-us/library/ms235435(VS.80).aspx
Supported Platforms (Visual C++) VS-2008 http://msdn.microsoft.com/en-us/library/ms235435.aspx
Aber wer will wirklich noch Windows 98 ;)
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de- Als Antwort vorgeschlagen Martin RichterModerator Donnerstag, 28. Mai 2009 06:51
- Als Antwort markiert Martin RichterModerator Dienstag, 2. Juni 2009 06:54
-
Juhu, endlich mal ne Frage ohne das Martin schon geantwortet hat, ich würd ja mal tippen das er noch schläft :)
1. http://viming.de/c++/faq:cmd
2. als Release version erstellen und die msvcrt9 runtime mitliefern (gibt es als setup zu laden, oder aber du beschäftigst dich mit dem manifest Anpassen)
3. Für Win98 musst du in den Projekt settings ausstellen das eine Unicode Variante erstellt wird, da Unicode in Win98 noch nicht unterstützt wird.- Als Antwort markiert Martin RichterModerator Dienstag, 2. Juni 2009 06:54
Alle Antworten
-
Juhu, endlich mal ne Frage ohne das Martin schon geantwortet hat, ich würd ja mal tippen das er noch schläft :)
1. http://viming.de/c++/faq:cmd
2. als Release version erstellen und die msvcrt9 runtime mitliefern (gibt es als setup zu laden, oder aber du beschäftigst dich mit dem manifest Anpassen)
3. Für Win98 musst du in den Projekt settings ausstellen das eine Unicode Variante erstellt wird, da Unicode in Win98 noch nicht unterstützt wird.- Als Antwort markiert Martin RichterModerator Dienstag, 2. Juni 2009 06:54
-
- Stelle das System auf Static Linking für die CRT um. Dann musst Du keine Runtime installalieren.
http://blog.kalmbach-software.de/de/2008/03/05/wie-man-statisch-gegen-die-c-runtime-crt-linkt/
- Man kann mit VS-2008 keine Programme mehr für Win98 erzeugen.
IMHO war VC-2005 das letzte VS, dass Windows 98 unterstützte,
Supported Platforms (Visual C++) VS-2005 http://msdn.microsoft.com/en-us/library/ms235435(VS.80).aspx
Supported Platforms (Visual C++) VS-2008 http://msdn.microsoft.com/en-us/library/ms235435.aspx
Aber wer will wirklich noch Windows 98 ;)
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de- Als Antwort vorgeschlagen Martin RichterModerator Donnerstag, 28. Mai 2009 06:51
- Als Antwort markiert Martin RichterModerator Dienstag, 2. Juni 2009 06:54
-
Hm,
so richtig ist mir hier nicht geholfen worden. Damit andere Interessenten nicht dumm sterben, hier ein Code-Vorschlag, um das Konsolenfenster auf Tastendruck zu schließen:
#include <iostream> using namespace std; int main() { char quit; int i1; int i2 = 10; quit = 'a'; while( quit != 'q' ) { cout << "Geben Sie eine Zahl ein: " <<endl; cin >> i1;
Die Vorschläge auf http://viming.de/c++/faq:cmd haben mich nicht dahin gebracht.
if (i1 < 10) { cout << "Die eingegebene Zahl ist kleiner als " << i2 <<"." << endl; } else { cout << "Die eingegebene Zahl ist groesser oder gleich " <<i2 <<"." << endl; } cout << "Zum Beenden druecken Sie auf q" << endl; cin >> quit; } return(0); }
Das Video-Tutorial war hilfreich, obwohl die Abspielgeschwindigkeit invariant ist.
Unter denen, die wirklich noch Windows 98 wollen, bin ich. 2002 habe ich in Delphi eine Anwendung für Windows geschrieben, die (sofern IE 5 installiert ist), auf Windows 95/98/ME/2000/XP/Vista/7 läuft (wegen der alten Hilfe braucht Vista eine Zusatzdatei). Jetzt habe ich überlegt, auf Visual C++ umzusteigen, aber die ersten Erfahrungen sind nicht besonders ermutigend. -
Hm, also wenn dir http://viming.de/c++/faq:cmd nicht geholfen hat, warum hast du es dann so umgesetzt wie drinn beschrieben? Ich würd ja eher noch vermuten das du es nur nicht richtig gelesen hast :)
Aber gut das Martin noch geantwortet hat. Das man nicht mehr für Win98 mit Vc2008 erstellen kann, war mir auch neu. -
so richtig ist mir hier nicht geholfen worden. Damit andere Interessenten nicht dumm sterben, hier ein Code-Vorschlag, um das Konsolenfenster auf Tastendruck zu schließen:
Wie Torsten verstehe ich Deinen Kommentar nicht bzgl. Schließen der Console. Genau das steht doch da drin... Allerdings ist das eben auch so gewollt: eine Console schließt sich eben, wenn sie aus der GUI gestartet wird
<snip>
Die Vorschläge auf http://viming.de/c++/faq:cmd haben mich nicht dahin gebracht.
Das Video-Tutorial war hilfreich, obwohl die Abspielgeschwindigkeit invariant ist.
Unter denen, die wirklich noch Windows 98 wollen, bin ich. 2002 habe ich in Delphi eine Anwendung für Windows geschrieben, die (sofern IE 5 installiert ist), auf Windows 95/98/ME/2000/XP/Vista/7 läuft (wegen der alten Hilfe braucht Vista eine Zusatzdatei). Jetzt habe ich überlegt, auf Visual C++ umzusteigen, aber die ersten Erfahrungen sind nicht besonders ermutigend.
Hinweis dazu: Das ist nichgt der Fall wenn Du es mit F5 startest, oder mit Strg+F5!
Für die Abspielgeschwindigkeit des Videos kann ich nichts ;)
Bzgl. Windows 98. Du willst es? Warum? Aus Entwicklersicht bin ich froh, dass es dieses OS "nicht mehr gibt" und ich würde mich mit den Inkompatibilitäten dieses OS nicht mehr herumschlagen.
Wenn Du es unbedingt willst. Besorge Dir VS-2005! Wenn Du ein MSDN Abo hast, kannst Du es Dir dort besorgen.
Bzgl. "aber die ersten Erfahrungen sind nicht besonders ermutigend.":
C/C++ ist komplex! Und VS als Werkzeug auch. Es ist keine Entwicklungsumgebung mit der man sich mal kurz was "zusammenklickt".
Wähle das richtige Werkzeug für Dein Problem, kann ich hier nur sagen. Ich mache auch nicht alles mit C/C++. Aber es ist für den Bereich in dem ich arbeite immer noch das Werkzeug der ersten Wahl!
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de