http://tikitak.narod.ru ---- Главная страница сайта
Шаг 89 - Немного звука
В Windows уже заложена возможность работы со звуком и многими другими прелестями, к которым мы привыкли и которые немного ранее назывались мультимедиа. Многие из этих функций, в том числе и работа со звуком, состредоточены в Mmsystem.dll. Эта DLL находится в каталоге Windows\System\. Это обычное API. И естественно оно поддерживается в VC++. Описания этих функций находятся в заголовочном файле mmsystem.h.
Давайте создадим приложение как Win 32 Console и назовем его TestSound. Тип его возьмем как "Hello Word".
Мы не можем сразу подключить mmsystem.h, потому что для его работы необходим Windows.h, вот так должны быть объявлены заголовочные файлы.
#include "stdafx.h"
#include "windows.h"
#include "mmsystem.h"
Легче всего вывести на динамики WAV файл, для этого есть функция sndPlaySound.
BOOL sndPlaySound(
LPCSTR lpszSound, // путь и имя WAV файла
UINT fuSound // параметры проигрования
);
Вот теперь мы все знаем, чтобы написать код. Проще всего найти звуки в каталоге Windows\Media. Ну давайте писать код.
#include "stdafx.h"
#include "windows.h"
#include "mmsystem.h"
int main(int argc, char* argv[])
{
int inResult;
inResult=sndPlaySound("c:\\windows\\media\\Chimes.wav",SND_SYNC);
if (inResult==FALSE) printf("Error sound\n");
else printf("God sound \n");
return 0;
}
Код мы написали, только вот собрать не сможем. Примерно такие ошибки должны быть..
TestSound.obj : error LNK2001: unresolved external symbol __imp__sndPlaySoundA@8
Debug/TestSound.exe : fatal error LNK1120: 1 unresolved externals
Конечно нужен LIB файл. Вы знаете как я выхожу из подобных ситуаций ? Вдруг пригодится. Сморите на картинке всё понятно :-)
Всё, что осталось сделать это включить этот LIB в Project -> Setting - > Link -> Object/Library module. И все можно запускать.
Комментарии | Загрузить проект | Предыдущий Шаг | Следующий Шаг | Оглавление By Artem.
Используются технологии uCoz
|