hInstance unter MFC ?
-
Hallo
Ich habe ein kleines Tool geschrieben und möchte ein .wav File, das ich als Resource eingefügt habe im loop abspielen. Dazu habe ich folgende Funktion benutzt:
PlaySound("IDR_WAVE1", hInstance, SND_RESOURCE | SND_ASYNC | SND_LOOP);Gibts ne Funktion, mit der ich den Fenster-Handle hInstance unter MFC bekomme?
Mit NULL gehts nicht und ich würde gerne diese Methode nutzen, da sie mir sehr kurz und effektiv vorkommt
Danke schon mal im Voraus

-
GetModuleHandle(NULL); dürfte das richtige Handle liefern.
-
Jetzt gibt die PlaySound Funktion FALSE zurück, klappt also nicht

-
AfxGetInstanceHandle()
-
AfxGetResourceHandle nicht AfxGetInstanceHandle! Bei abweichenden Resource DLLs würde AfxGetInstanceHandle nicht funktionieren.
-
Hab ich alles ausprobiert, klappt nicht. Der Fehler muss wo anders liegen

Der Baum meiner Wave-Ressource hat den Pfad: "WAVE" / IDR_WAVE1
Muss ich da was ändern ???Die nötigen Libs u. Header hab ich auch eingebunden:
#include <mmsystem.h> #pragma comment(lib, "winmm.lib")Help!

-
IDR_WAVE1 ist ein integer! Wenn musst Du MAKEINTRESOURCE(IDR_WAVE1) verwenden!
Also:
::PlaySound(MAKEINTRESOURCE(IDR_WAVE1), AfxGetResourceHandle(), SND_RESOURCE | SND_ASYNC | SND_LOOP);
-
MUHAHAHAHAHAHA!!! Danke, danke, danke!
Es funktioniert! Suuuuper!
Mein Prog ist jetzt zwar 40 MB groß, aber es klappt!