0
vmlspb
27.02.12
✎
17:34
|
Добрый день, уважаемые форумчане!
Занимаюсь разработкой интерфейса в 1с 8.1 для ТСД (RDP), есть вопрос про проигрывание звука самим ТСД (CipherLab: 9300). Сейчас проигрываю звуки таким образом: в обработке макет - двоичные данные, сохраняю как двоичный файл и проигрываю его в MPLAY32 скриптом.
Собсна, сама процедура:
Процедура ПроигратьЗвук(ИмяМакета) Экспорт
Путь = КаталогВременныхФайлов() + ИмяМакета+".wav";
ФайлЗвук = Новый Файл(Путь);
Если Не ФайлЗвук.Существует() Тогда
ПолучитьМакет(ИмяМакета).Записать(Путь);
КонецЕсли;
WS = Новый COMОбъект("WScript.Shell");
WS.Run("MPLAY32 /play /close "+Путь,0);
КонецПроцедуры
Все работает не один месяц, единственное, при увеличении одновременного подключения ТСД (а их сейчас около 30 шт.) стало появляться такое сообщение (в момент проигрывания звука):
"Все устройства, позволяющие воспроизводить файлы в текущем формате сейчас заняты. Повторите попытку, когда одно из устройств освободится."
Но это не единственная проблема, MPLAY32 не работает под 64 разрядной системой - его просто нет (в планах переход на 64 разрядную версию винды). Можно найти ему замену, но...
Возможно ли проигрывать звуки самого ТСД? Через внешние компоненты или еще как, если можно, то, будьте добры, укажите в каком направлении копать, буду очень признателен.
|
|