FH Gießen · FB MNI Arbeiten mit Visual Studio .NET
Prof. Dr.-Ing. A. Christidis S. 1 / 2
Einstellungen bei der Arbeit mit MS Visual Studio .NET (VC++.NET):
Die u.a. Vorgehensweise erzeugt ein Projekt (intern geführt mit dem Namen Debug), das unterhalb eines bereits bestehenden Verzeichnisses [~\SysProg\]Uebung1 eine Verzeichnisstruktur nutzt und
• die Projekt-Dateien unter Uebung1\Debug,
• Uebung.exe (unvermeidlich: auch Debug.pdb) unter Uebung1\Exc,
• alle C/C++ - Quellen unter Uebung1\Src,
• temporäre Dateien (außer Debug.pdb) unter Uebung1\tmp speichert.
Ein so implementiertes Projekt nutzt (evtl. gemeinsam mit anderen Projekten)
• Daten unter [~\SysProg\]_Data,
• Bibliotheken unter [~\SysProg\]_Libs und
• Quelldateien unter [~\SysProg\]_Src.
Uebung.exe kann sowohl von der Entwicklungsumgebung als auch von Uebung1\Exc aus (Doppelklick) gestartet werden und in beiden Fällen zur Laufzeit auf Daten im _Data- Verzeichnis zugreifen. Das Arbeitsverzeichnis ist Uebung1\Debug.
Bereits kompilierte Quellen (*.obj) können ins Verzeichnis Uebung1\tmp kopiert und (auch ohne Vorhandensein des Quellcodes) berücksichtigt werden.
Die Unterverzeichnisse von Uebung1 können auch als Grundlage für weitere Projekte verwendet werden – etwa für ein Projekt Uebung2. Dazu sollte man
• das Verzeichnis Uebung2 erzeugen,
• die Unterverzeichnisse von Uebung1 kopieren,
• mit der „Suchen“-Funktion des Explorers alle Dateien ermitteln und alle diejenigen darunter löschen, die man unter Uebung2 nicht mehr verwenden möchte.
Anmerkung:
Die unten aufgeführten Einstellungen sind so eingegeben, daß sie aus der
elektronischen Form dieses Dokumentes direkt in die Etwicklungsumgebung kopiert
werden können.
FH Gießen · FB MNI Arbeiten mit Visual Studio .NET
Prof. Dr.-Ing. A. Christidis S. 2 / 2
Leeres Projekt erstellen: Datei ⇒ Neu ⇒ Projekt
⇒ Projekttypen: Visual C++-Projekte
⇒ Vorlagen: (je nach Projekt) C/C++-Konsolenanwendung
⇒ Name: Debug
⇒ Speicherort: [~\SysProg\]Uebung1
⇒ (Vergrößert:) Projektmappenverzeichnis NICHT erstellen (kein Häkchen) ⇒ OK
Im Projektmappen-Explorer Debug.cpp entfernen.
(Im Explorer können nun mit Ausnahme von Debug.sln und Debug.vcproj alle Dateien gelöscht werden.)
Bibliotheken und Object- Files einbinden:
(Nach Bedarf -
OpenGL / GLUT / MUI / Name.obj )
Projekt ⇒ Eigenschaften von ... ⇒ Linker
⇒ Allgemein ⇒ Zusätzliche Bibliotheksverzeichnisse:
..\..\_Data;..\..\_Libs;..\..\_Src
⇒ Eingabe ⇒ Zusätzliche Abhängigkeiten:
OpenGL32.Lib GlU32.Lib GlAux.Lib – falls benötigt und in den o.a. Verzeichnissen (tmp, _Libs) vorhanden auch:
glut32.lib mui.lib ..\tmp\App.obj etc.
Projekt ⇒ Eigenschaften von ... ⇒ C/C++
⇒ Allgemein ⇒ Zusätzliche Includeverzeichnisse:
..\..\_Data;..\..\_Libs;..\..\_Src Empfohlene Verzeichnis-
Struktur im VC: Projekt ⇒ Eigenschaften von ... ⇒ Linker
⇒ Allgemein ⇒ Ausgabedatei: .$(outdir)/Uebung.exe
⇒ Allgemein ⇒ Inkrementelles Verknüpfen aktivieren: Nein Projekt ⇒ Eigenschaften von ... ⇒ Konfigurationseigenschaften
⇒ Allgemein ⇒ Ausgabeverzeichnis: ..\Exc
⇒ Allgemein ⇒ Zwischenverzeichnis: ..\tmp Empfohlene Verzeichnis-
Struktur im Explorer:
Im Explorer Verzeichnis
[~\SysProg\]Uebung1\Src erzeugen, wo die Dateien *.c und *.h gespeichert werden
(Konsolenanwendungen:) Evtl.(!) Unterdrückung des
„Console window“:
Projekt ⇒ Eigenschaften von ... ⇒ Linker
⇒ Befehlszeile ⇒ Zusätzliche Optionen:
/entry:"mainCRTStartup" /subsystem:windows
main u.a. einfügen: Im Projektmappen-Explorer (Drag&Drop o. re. Maustaste) bzw.
Projekt ⇒ [Neues / Vorhandenes] Element hinzufügen ⇒ ...
Zu erstellende Dateien: Datei ⇒ Neu ⇒ Datei ⇒ C++-Datei ...
Wahl Single-
/Multithreaded Projekt ⇒ Eigenschaften von … ⇒ C/C++
⇒ Codeerstellung ⇒ Laufzeit-Bibliothek: Singlethreaded [- Debug] bzw.: Multithreaded [-Debug]
Kompilieren: Erstellen ⇒ Debug neu erstellen
Achtung: Bei Nutzung der GLUT-Library ist es ratsam, eine Kopie von GLUT32.DLL dort abzulegen, wo auch opengl32.dll liegt – das ist i.d.R. unter C:\WINDOWS\system32.
[ Änderung des Arbeitsverzeichnisses (meist unnötig): Projekt ⇒ Eigenschaften von Debug
⇒ Konfigurationseigenschaften ⇒ Debuggen ⇒ Arbeitsverzeichnis ]