PDA

Visualizza la versione completa : [C++] Riproduzione file WAV in background


Salvy95
01-03-2011, 17:47
Salve a tutti ragazzi, avrei bisogno di eseguire un paio di file wav in background :)
ho pensato di utilizzare le api di windows sfruttando la funzione sndPlaySound, purtroppo il visual c++ 2010 free edition tra le librerie standard non supporta la winmm.lib (Che se non vado errato doveva trovarsi nel vecchio turbo c come winmm.a)
Potreste suggerirmi una pagina di download? Ho googlato per oltre un ora senza risultati soddisfacenti! Magari potreste spulciare tra le vostre librerie e caricare poi su altervista...
grazie mille :D

lolide
01-03-2011, 17:56
Come non la supporta ?

Qui (http://msdn.microsoft.com/en-us/library/dd798676(v=vs.85).aspx) c'è la reference per quella, comunque se non è supportata (strano), usa, come consigliato nella stessa reference, PlaySound (http://msdn.microsoft.com/en-us/library/dd743680(v=vs.85).aspx)

Salvy95
01-03-2011, 18:03
Esatto, non la supporta :@

Comunque sia adesso pare funzionare :D



#include <windows.h>
#include "c:\Users\Salvatore\Desktop\C\math.h"
#pragma comment (lib, "winmm.lib")
#include <mmsystem.h>
#include <stdlib.h>
#include <stdio.h>
int main(){
int a;
int b;
a = 9;
b = 6;
printf("Somma tra %d e %d: %d\n\n",a,b,math_add(a,b));
PlaySound(TEXT("c:\\Users\\Salvatore\\Desktop\\C\\cp.wav"), NULL, SND_FILENAME);
Sleep(1000);
printf("Differenza tra %d e %d: %d\n\n",a,b,math_sot(a,b));
PlaySound(TEXT("c:\\Users\\Salvatore\\Desktop\\C\\cp.wav"), NULL, SND_FILENAME);
Sleep(1000);
printf("Prodotto tra %d e %d: %d\n\n",a,b,math_mol(a,b));
PlaySound(TEXT("c:\\Users\\Salvatore\\Desktop\\C\\cp.wav"), NULL, SND_FILENAME);
Sleep(1000);
printf("Quoziente tra %d e %d: %d\n\n",a,b,math_div(a,b));
PlaySound(TEXT("c:\\Users\\Salvatore\\Desktop\\C\\cp.wav"), NULL, SND_FILENAME);
Sleep(1000);
printf("Resto tra %d e %d: %d\n\n",a,b,math_rest(a,b));
PlaySound(TEXT("c:\\Users\\Salvatore\\Desktop\\C\\cp.wav"), NULL, SND_FILENAME);
Sleep(1000);
system("pause");
}


Grazie di tutto :D

lolide
01-03-2011, 18:07
Se una funzione diventa obsoleta, controlla sempre nella sua reference. Sicuramente ti dirà la funzione che l'ha rimpiazzata.

Salvy95
01-03-2011, 18:08
Certo, terrò presente :)
:yuppi:

kirakira93
02-03-2011, 16:38
mi pare veramente strano che non la supporti! E' come dire che visual studio non supporti windows.h...anchio avevo la versione standard e mi pare che non ho mai trovato problemi come questo, anche se quando ce l'avevo non ricordo mai di aver usato quella libreria.

Comqune è un po' più complicata di PlaySound...ma prova a usare SendMCIString che offre più funzioni

Loading