Soundsdatei abspielen (ohne Sounddatei zur Laufzeit)?
-
Resourcen Datei
// res.rc ".rc" nicht ".res" // res.rc dem Projekt zu fügen MYSOUND WAVE "mucke.wav"in CPP
#include "windows.h" #include "mmsystem.h" // PlaySound(); //.... PlaySound("MYSOUND", HANDLE(HInstance), SND_RESOURCE); // spiel es Sam //....
-
Bei VC++ ist noch sowas in der .rc Datei oben drin:
#define APSTUDIO_READONLY_SYMBOLS #define APSTUDIO_HIDDEN_SYMBOLS #include "windows.h" #undef APSTUDIO_HIDDEN_SYMBOLS #undef APSTUDIO_READONLY_SYMBOLS
-
@flenders
Ich kenne VC++ nicht, oder nicht besonders, aber wenn das Notwendig ist mit an zu geben finde ich das Unlogisch und stelle mir die frage der Erleichterung mit dem VC++ gegenüber anderen compilern.
-
MiC++ha schrieb:
Ich kenne VC++ nicht, oder nicht besonders, aber wenn das Notwendig ist mit an zu geben finde ich das Unlogisch und stelle mir die frage der Erleichterung mit dem VC++ gegenüber anderen compilern.
Das musst du ja nicht von Hand eingeben, sondern wird automatisch von der IDE eingefügt

-
Aha,
somit erübrigt sich doch die frage ob "er" es eingefügt hat, wenn es Automatisch gemacht wird, oder irre ich mich da ?
Wie auch immer, das zeug ist so einfach das wir das nach ne kiste Bier noch so runter leiern und es funktioniert, wenn er das nicht hinbekommt so kann das nur an einem anderen fehler liegen, ich denke wir warten mal sein nächstes result ab.
PS: hat mal einer ne tastaur für mich? die shifttaste geht nur wenn ich mit nem hammer drauf haue;
-
Hallo!
Habe den Rechner fomatiert und vergessen den Skript zu sichern
Jetzt versuche ich das wieder hinzubekommen.
Allerdings scheitert es bei der Funktion PlaySounds().
Ich weiß nicht genau was ich als Parameter angeben soll
Vielleicht hilft euch das ja:
Die Datei main.cpp:#include <windows.h> #include "mmsystem.h" LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM); //Deklaration der Windows-Nachrichten-Prozedur int WINAPI WinMain (HINSTANCE hI, HINSTANCE hPrI, PSTR szCmdLine, int iCmdShow) { char szName[] = "Fensterklasse"; HBRUSH MyBrush = CreateSolidBrush(RGB(255,255,51)); WNDCLASS wc; wc.style = CS_HREDRAW | CS_VREDRAW; // CS = "class style" wc.lpfnWndProc = WndProc; wc.cbClsExtra = 0; wc.cbWndExtra = 0; wc.hInstance = hI; wc.hIcon = LoadIcon (NULL, IDI_WINLOGO); wc.hCursor = LoadCursor (NULL, IDC_ARROW); wc.hbrBackground = MyBrush; wc.lpszMenuName = NULL; wc.lpszClassName = szName; RegisterClass (&wc); HWND hwnd = CreateWindow (szName, "Soundtest", WS_SYSMENU | WS_THICKFRAME, 300, 230, 500, 200, NULL, NULL, hI, NULL); ShowWindow (hwnd, iCmdShow); UpdateWindow (hwnd); // Nachrichten-Schleife MSG msg; while (GetMessage (&msg, NULL, 0, 0)) { TranslateMessage (&msg); DispatchMessage (&msg); } return msg.wParam; } // Windows-Nachrichten-Prozedur LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; HWND hwndButton1; switch (message) { case WM_PAINT: hdc = BeginPaint (hwnd, &ps); TextOut (hdc, 20, 20, "Soundtest", 20); EndPaint (hwnd, &ps); return 0; case WM_CREATE: hwndButton1 = CreateWindow ( "button", "Abspielen", WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON, 150, 20, 100, 40, hwnd, (HMENU)1, (HINSTANCE) GetWindowLong (hwnd, GWL_HINSTANCE), NULL); return 0; case WM_COMMAND: if(LOWORD(wParam) == 1) { PlaySound("sound1", hwnd, SND_RESOURCE); } return 0; case WM_DESTROY: PostQuitMessage (0); return 0; } return DefWindowProc (hwnd, message, wParam, lParam); }die .rc datei:
#include <windows.h> sound1 WAVE C:\WINDOWS\Media\chord.wav;
-
MSDN schrieb:
SND_RESOURCE
The pszSound parameter is a resource identifier; hmod must identify the instance that contains the resource.
Wie und was da angegeben werden muß, habe ich oben bereits damals beschrieben...
...oder wie war das noch: wer lesen kann ist klar im vorteil...
-
Guck in die MSDN, da sind die Parameter beschrieben. Oder google nach Beispielen.
-
Sorry,
bei oben angegebenen Code,
wüsste ich nur hI oder hwnd als zweiten parameter anzugeben.
Geht aber nicht - ist also falsch.
Die MSDN hatte ich schon vorher gelesen.
Björn
-
MiC++ha schrieb:
#include "windows.h" #include "mmsystem.h" // PlaySound(); //.... PlaySound("MYSOUND", HANDLE(HInstance), SND_RESOURCE); // spiel es Sam //....vergess aber nicht in den Projekt Option die Resourcen Datei in die Kompliation mit ein zu beziehen!