Forum: PC-Programmierung Visual Studio 2010 Konfigurationseigenschaften


von Philipp B. (oddgit)


Lesenswert?

Hallo zusammen,

ich komme leider überhaupt nicht weiter.

Ich hab mir die RtAudio Library von der McGill University runtergeladen 
(http://www.music.mcgill.ca/~gary/rtaudio/) und versuche seit Tagen 
erfolglos etwas damit anzufangen.

Das Problem ist folgendes:
Ich kann zwar die Beispielprojekte aus dem Ordner "tests/Windows" in 
Visual Studio 2010 öffnen und die Projektmappe erstellen. Funktioniert 
prima, keine Fehlermeldung.

Wenn ich jetzt aber ein neues Projekt anlege, um eben selber was zu 
basteln, dann bekomme ich unendlich viele Fehlermeldungen, dass 
irgendwelche Include Dateien nicht geöffnet werden können und dass sich 
irgendwelche Bindungsangaben widersprechen. Ich hab dazu einfach ein 
neues Projekt angelegt und sämtl. Dateien aus dem Ordner "Include" ins 
Projekt eingefügt.

Ich vermute, dass der Fehler in den Konfigurationseigenschaften liegt. 
Weil die schauen bei meinem Projekt anders aus, als im Beispielprojekt. 
Alles andere sollte identisch sein. Die Frage ist jetzt: Kann ich die 
Konfigurationseigenschaften irgendwie exportieren und in mein Projekt 
einfügen? Hat irgendjemand eine Ahnung, was ich falsch mache?

Ich hab bereits versucht, ein Projekteigenschaftsblatt zu erstellen und 
dieses meinem Projekt hinzuzufügen, aber die nötigen Änderungen in den 
Eigenschaftenseiten wurden nicht übernommen.

Ich bin zwar kein Profi-Programmierer, aber das sollte doch nicht so 
schwer sein???!

Danke und Grüße,

Philipp.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Philipp B. schrieb:
> Wenn ich jetzt aber ein neues Projekt anlege,

Dann ist möglicherweise dieses neue Projekt von einem grundlegend 
inkompatiblen Typ. Visual Studio enthält ja nicht nur einen Compiler, 
sondern mehrere, die sehr unterschiedliche Dinge tun.

RtAudio scheint eine Sammlung von C++-Klassen zu sein, die kannst Du nur 
mit C++ nutzen, nicht aber mit "Managed C++" bzw. "C++/CLI", also den 
.Net-basierten Dingen von Microsoft. Wenn Du also ein neues Projekt 
anlegst, musst Du darauf achten, ein echtes C++-Projekt anzulegen, 
kein .Net, kein Winforms etc.

von Philipp B. (oddgit)


Lesenswert?

Rufus Τ. Firefly schrieb:
> RtAudio scheint eine Sammlung von C++-Klassen zu sein, die kannst Du nur
> mit C++ nutzen, nicht aber mit "Managed C++" bzw. "C++/CLI", also den
> .Net-basierten Dingen von Microsoft. Wenn Du also ein neues Projekt
> anlegst, musst Du darauf achten, ein echtes C++-Projekt anzulegen,
> kein .Net, kein Winforms etc.

Ich hab verschiedene Projekte ausprobiert. Unter anderem
- Installierte Vorlagen - Visual C++ - Leeres Projekt
- Installierte Vorlagen - Visual C++ - CLR - Leeres CLR Projekt

Das letzteres nicht funktioniert hat, ist dann ja klar (weil .NET, 
oder?), aber auch die anderen Projekte haben nicht funktioniert.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Philipp B. schrieb:
> Ich hab verschiedene Projekte ausprobiert.

Dann probiere mal die hier aus:

VisualC++->Win32->Win32 Console Application

oder

VisualC++->Win32->Win32 Project

von Philipp B. (oddgit)


Lesenswert?

Also, bei ner Win32 Console Application kommt zu erst die Fehlermeldung, 
dass ich den vorkompilierten Header includen muss:
"Unerwartetes Dateiende während der Suche nach dem vorkompilierten 
Header. Haben Sie möglicherweise vergessen, im Quellcode "#include 
"StdAfx.h"" einzufügen?"

Wenn ich das dann überall mache, gehts trotzdem nicht, da kommen wieder 
unendlich viele Fehlermeldungen.

Beim Win32 Projekt das gleiche.

Kann es nicht sein, dass die Konfigurationseinstellungen angepasst 
werden müssen? Weil wenn ich die vom Beispielprojekt anschaue, sind da 
einige Einstellungen fett, was laut MSDN heißt, dass sie manuell 
verändert wurden.

von Peter II (Gast)


Lesenswert?

Philipp B. schrieb:
> Also, bei ner Win32 Console Application kommt zu erst die Fehlermeldung,
> dass ich den vorkompilierten Header includen muss:

dann schalte als erstes  vorkompilierten Header aus.

von Philipp B. (oddgit)


Lesenswert?

Peter II schrieb:
> dann schalte als erstes  vorkompilierten Header aus.

Ah! Okay... Hab ich gemacht. Dann kommen zunächst die gleichen 
Fehlermeldungen wie oben, als ich den vorkompilierten Header verwendet 
habe und dann stdafx.h in alle .cpp Dateien included habe:

Fehler  1  error C2664: 'CharLowerBuffW': Konvertierung des Parameters 1 
von 'char *' in 'LPWSTR' nicht möglich

Hab diesen Fehler mal gegoogelt und in nem anderen Forum scheinbar die 
Lösung gefunden:
"Looks like you're doing an Unicode build ("Unicode Release" or "Unicode
Debug") when you should be doing an ANSI build ("Release", "Debug")."

Hab das dann in den Konfigurationseigenschaften auf Multibyte 
Zeichensatz umgestellt und er hats tatsächlich gefressen.

Kann mir vielleicht trotzdem noch kurz erklären, was ich da jetzt genau 
gemacht habe?

Ansonsten vielen Dank,

Gruß Philipp

von Philipp B. (oddgit)


Lesenswert?

Nur der Vollständigkeit halber hier nochmal die Einstellungen, die 
vorgenommen werden müssen, damit RtAudio in Visual Studio verwendet 
werden kann:

1. Unter 'Projekt - <projektname>-Eigenschaften - 
Konfigurationseigenschaften - Allgemein - Zeichensatz' ist standardmäßig 
'Unicode-Zeichensatz verwenden' ausgewählt. Dies muss zu 
'Multibyte-Zeichensatz verwenden' geändert werden.

2. Bei '... Konfigurationseigenschaften - C/C++ - Präprozessor - 
Präprozessordefinitionen' müssen, zusätzlich zu den bestehenden, die 
Flags für Asio und DirectSound gesetzt werden: 
_WINDOWS_ASIO_;__WINDOWS_DS__; (bei RtMidi: _WINDOWS_MM_;).

3. Unter '... Konfigurationseigenschaften - Linker - Eingabe - 
Zusätzliche Abhängigkeiten' muss zusätzlich die dsound.lib; eingefügt 
werden.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.