Как играть .WAV в .Net Compact Framework (Datalogic Memor) Windows CE 5.0? - PullRequest
0 голосов
/ 29 октября 2010

У меня в приложениях есть логика памяти данных с Windows CE 5.0, я использовал только окно сообщения и метки изменения цвета для проверки и обработки ошибок.

Теперь моя проблема в том, что мне нужно воспроизвести файл .wav при проверке, чтобы даже пользователям не приходилось смотреть на экран каждый раз, когда они использовали сканер.

Я попробовал эту ссылку http://msdn.microsoft.com/en-us/library/ms229685.aspx, но не работает ..

В памяти логики данных нет медиаплеера ..

Спасибо, С уважением!

Ответы [ 2 ]

1 голос
/ 29 октября 2010

Вы можете воспроизводить файл .wav различными способами. Вы не говорите, какую компактную среду вы используете, но для CF 3.5 у вас есть класс SoundPlayer, который довольно прост.

        SoundPlayer p = new SoundPlayer("path");
        p.Play();

Если вы хотите воспроизводить большие файлы и иметь большую гибкость, взгляните на эти вызовы API:

   waveOutWrite
   waveOutOpen
   waveOutPrepareHeader
   waveOutClose

Есть некоторые работы, чтобы их использовать. Идея состоит в том, чтобы открыть и запустить файловое устройство wav с помощью waveOutOpen, а затем подготовить WAVEHDR и записать его на устройство с помощью waveOutWrite. Более точно, как вы это делаете, вы можете увидеть в этом хорошем посте . Где он описывает и покажет вам код.

Еще один способ воспроизвести файл WAV - использовать проигрыватель Windows Media. Но у меня плохой опыт с этим. Если вы используете его, вы должны быть очень осторожны, чтобы инициировать между песнями. Вы также можете использовать проигрыватель OpenNetCF или использовать WMP напрямую, как ком-объект. Если вы используете CF 2.0 или старше, вы должны создать свой AxHost самостоятельно.

Что ж, надеюсь, это поможет.

0 голосов
/ 08 ноября 2010

Я получил ответ в официальной команде поддержки Data Logic Memor. Оригинальный Memor действительно не имеет никакой возможности воспроизводить другой тон, кроме звукового сигнала. Благодарю за помощь!

...