Visual Studio 2005 c++ ganz ohne .Net

Cheesygecko

Grünschnabel
Hi Leute. Ich will c++ mit WINAPI unter VS2005 programmieren. (win32). wie schaffe ich es eine exe zu erzeugen die genauso ohne .net läuft wie bei VS98(oder 96?, das alte teil eben ;-).

danke im vorraus.

gruß cheesy
 
Hallo Cheesygecko,

also du gehst im VS 2005 oben im Menu auf Datei/Neu/Projekt.

Dann wählst du in dem danach aupoppenden Dialog links im Baum den Knoten Visual C++/Win32 aus.

Rechts wählst du dann Konsolenanwendung oder für eine Fensterbasierte Applikation Win32-Projekt aus.

Unten noch nen schönen Namen eintippern, das Projektverzeichnis auswählen und voila.

Viel Erfolg,

Peter
 
Hey Peter, danke für deine Antwort. Sorry, meine Frage hätte ich genauer stellen sollen. Es geht mir darum ohne .net zu programmieren, aber auch das die exe ohne .net -laufzeit läuft. meine programme sollen auf jedem rechner laufen, jedoch compiliert VS2005/2003 auch nicht-.net-code in .net-abhängige Programme. wie kann ich das ändern? danke im vorraus
 
Das hat mit .NET überhaupt nichts zu tun. In VS 2005 gibt es eine neue C-Runtime Version. Diese ist eben noch nicht auf allen Windows-Rechnern mitgeliefert.

Es gibt da die Möglichkeit, diese Runtime als Redistributable mitzuliefern bzw. den Link anzubieten. Alternativ kann man die meine ich auch statisch dazulinken. Da wird die EXE grösser, aber dafür hast du keine Abhängigkeiten.

Meiner persönlichen Einschätzung nach ist jede Abhängigkeit weniger ein Riesenproblem weniger.
 
danke matthias. aber es ist wirklich ein .net-problem. schreib mal ein hello-world programm und lass es auf einem rechner ohne .net laufen. es wird nicht gehn. ganz sicher. das problem hatte ich in der firma schon hundert mal. und sobald .net installiert wird, läuft das programm einwandfrei. das hat auch nichts mit c-runtime zu tun. alles wird .net-abhängig compiliert und man kann es abstellen. aber niemand weiss wie:confused:
 
aber es ist wirklich ein .net-problem. schreib mal ein hello-world programm und lass es auf einem rechner ohne .net laufen. es wird nicht gehn. ganz sicher.
Sorry, da muss ich dich leider enttäuschen… ich bin folgendermaßen vorgegangen:
  • Datei ? Neu ? Projekt…
  • Unter Projekttypen Visual C++ ? Win32 auswählen
  • Unter Vorlagen Win32-Konsolenanwendung auswählen
  • Unter Name einen Namen eingeben
  • OK klicken
  • Projekt ? Neues Element hinzufügen…
  • Unter Kategorien Visual C++ ? Code auswählen
  • Unter Vorlagen C++-Datei (.cpp) auswählen
  • Unter Name main.cpp eingeben
  • Hinzufügen klicken
  • In die neue Datei folgenden Code tippen:
Code:
#include <iostream>

int main() {
	std::cout << "Hallo Welt!" << std::endl;
	return 0;
}
  • Konfiguration auf Release stellen
  • In den Projekteigenschaften unter Konfigurationseigenschaften ? C/C++ ? Codegenerierung ? Laufzeitbibliothek die Einstellung „Multithreaded (/MT)“ wählen (damit die Laufzeitbibliothek statisch gelinkt wird)
  • Erstellen ? Projektmappe erstellen
  • Generierte .exe-Datei auf ein frisch installiertes Windows XP SP2 kopieren
  • Ausführen, klappt.

Da müsste schon was an der Standardvorlage verändert worden sein, wenn es sich bei dir anders verhält. Schau mal vorsichtshalber in den Konfigurationseigenschaften, ob unter „Common Language Runtime-Unterstützung“ die Option „Keine Common Language Runtime-Unterstützung“ ausgewählt ist. Wenn nicht, könnte das die .NET-Abhängigkeit erklären.

Grüße,
Matthias
 
Zurück