<<valle>> Geschrieben 29. März 2009 Teilen Geschrieben 29. März 2009 Hallo alle zusammen, ich hab folgendes Problem ich möchte eine .wav Datei abspielen mit diesem code: #include <windows.h> #include <stdio.h> #pragma comment(lib,"winmm.lib") BOOL play(char *name) { PlaySound(name, NULL, SND_FILENAME | SND_ASYNC); return 0; } int main() { play("test.wav"); getchar(); return 0; } doch mein compiler, ich benutzte Visual C++ 2008 , gibt mir immer den Fehler aus:'PlaySoundW': Konvertierung des Parameters 1 von 'char *' in 'LPCWSTR' nicht möglich Die Typen, auf die verwiesen wird, sind nicht verknüpft; die Konvertierung erfordert einen reinterpret_cast-Operator oder eine Typumwandlung im C- oder Funktionsformat. kann mir jemand weiter helfen?? Vielen Dank im Voraus! valle Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Klotzkopp Geschrieben 29. März 2009 Teilen Geschrieben 29. März 2009 Fast alle WinAPI-Funktion, die Stringparameter haben, gibt es in zwei Formen. Eine endet auf A und benutzt char*-Parameter, die andere endet auf W und hat wchar_t*-Parameter. Der Name der Funktion ohne A oder W am Ende ist nur ein Präprozessorsymbol, das je nach Projekteinstellungen (Unicode- oder Multibytezeichensatz) entweder auf die A oder die W-Variante verweist. Der Parametertyp ist dann einn LP©TSTR. Das ist auch ein Präprozessorsymbol, das eben entweder auf LP©STR (char*) oder LP©WSTR (wchar_t*) verweist. Bei Visual C++ 2008 ist der Standard Unicode, nicht mehr Multibyte, d.h. alle WinAPI-Funktionen erwarten die wchar_t-Parameter. Du hast 4 Möglichkeiten: Stell die Projekteinstellungen von Unicode auf Multibyte.Ändere die Parameter von char auf TCHAR. Dann kannst du später beliebig zwischen Unicode und Multibyte wechseln.Ändere die Parameter von char auf wchar_t.Benutze ausdrücklich die A-Variante (PlaySoundA). Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
<<valle>> Geschrieben 29. März 2009 Autor Teilen Geschrieben 29. März 2009 Super vielen dank! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.