Как воспроизвести звуковой сигнал или проиграть звуковой файл в 1С? Частенько бывает, что нужно оповестить или обратить внимание пользователя на оповещение звуком, вот несколько решений:
Стандартный вариант:
Синтаксис: Сигнал()
Описание: Воспроизводит звуковой сигнал. Устройство, воспроизводящее звук, а также характер звукового сигнала зависят от программно-аппаратного состава компьютера и звуковых установок ОС.
Недоступен на сервере 1С:Предприятие. Не используется в модуле внешнего соединения.
Код 1C v 8.3 &НаКлиенте
Процедура Команда(Команда)
Сигнал( ) ;
КонецПроцедуры
С использованием внешних компонент:
Код 1C v 8.х
файлз = "C:\1.wav" ;
Скрипт = Новый COMОбъект( "MSScriptControl.ScriptControl" ) ;
Скрипт. Language= "vbscript" ;
Скрипт. AddCode( "
|Function Main()
|Set oVoice = CreateObject("" SAPI.SpVoice"" )
|set oSpFileStream = CreateObject("" SAPI.SpFileStream"" )
|oSpFileStream.Open "" " + файлз+ """
|oVoice.SpeakStream oSpFileStream
|End Function" ) ;
Скрипт. Run( "Main" ) ;
файлз = "C:\1.wav" ;
oVoice = Новый COMObject( "SAPI.SpVoice" ) ;
oSpFileStream = Новый COMObject( "SAPI.SpFileStream" ) ;
oSpFileStream. Open( файлз) ;
oVoice. SpeakStream( oSpFileStream) ;
oSpFileStream. Close( ) ;
файлз = "C:\1.wav" ;
DynamicWrapper = Новый COMОбъект( "DynamicWrapperX" ) ;
DynamicWrapper. Register( "winmm.dll" , "sndPlaySoundA" , "i=su" ) ;
DynamicWrapper. sndPlaySoundA( файлз, 1 ) ;
Процедура КнопкаВыполнитьНажатие(Кнопка)
ПроигратьЗвук( "D:\Звуки\123.wav" ) ;
КонецПроцедуры
Процедура ПроигратьЗвук(Путь)
Попытка
ЭлементыФормы. Проигрыватель. settings. autostart = Истина ;
ЭлементыФормы. Проигрыватель. settings. volume = 100 ;
ЭлементыФормы. Проигрыватель. URL = Путь;
Исключение
КонецПопытки ;
КонецПроцедуры
&НаКлиенте
Процедура ВоспроизвестиMP3()
мФайл = ПолучитьАдресФайла( ) ;
ПолеHTML = "
| <HTML>
| <BODY scroll='no'>
| <BGSOUND id='sound_think' balance=0 volume='-1000'></BGSOUND>
| <div id=paperRaphael></div>
| <script>
| function PlaySound() {
| if (!window.HTMLAudioElement) {
| document.all.sound_think.volume=0;
| document.all.sound_think.src = '" + мФайл+ "';
| }
| }
| window.onload = function(){
| PlaySound();
| }
| </script>
| </BODY>
| </HTML>" ;
КонецПроцедуры
&НаСервере
Функция ПолучитьАдресФайла()
Возврат ПоместитьВоВременноеХранилище( Обработки. ЗвукВ1 С. ПолучитьМакет( "sound" ) ) ;
КонецФункции
Категория:
Полезные, Универсальные Функции Как проиграть wav, mp3 файл Код 1C v 8.х ScriptCtrl = Новый COMОбъект( "MSScriptControl.ScriptControl" ) ;
ScriptCtrl. Language = "vbscript" ;
ScriptCtrl. AddCode( "
Function PlayS()
| Set Wrap = CreateObject("" DynamicWrapper"" )
| Wrap.Register "" winmm.dll"" , "" sndPlaySound"" , "" i=sl"" , "" f=s"" , " r= l""
| PlayS = Wrap.sndPlaySound("" C:\Sounds\newemail.wav"" , SDN_ASYNC)
| End Function");
ScriptCtrl. Run( "PlayS" ) ;
Категория:
COM-объекты, WMI, WSH