Добрый день!
Обнаружилась следующая проблема при использовании функции PlayUserSound с параметром GetClientName (Версия 6.3.3):
- если скрипт вызван кнопкой, звук всегда воспроизводится
- в скрипте по-изменению если указать в первом параметре имя клиента, звук воспроизводится
- в скрипте по-изменению если указать в первом параметре GetClientName, звук НЕ воспроизводится
Для проверки создал тестовый проект - в нем 2 звука t1.ogg и t2.ogg. Добавил 2 кнопки для воспроизведения звуков по нажатию с следующим кодом:
begin
PlayUserSound(GetClientName,'t'+IntToStr(Sender.Tag)+'.ogg',False);
end.
Также добавил 1 внутреннюю переменную типа Word и привязал её к полю ввода. По-изменению этой переменной добавил второй скрипт:
begin
if TestWord.Value = 1 then PlayUserSound(GetClientName,'t'+IntToStr(TestWord.Value)+'.ogg',False);
if TestWord.Value = 2 then PlayUserSound('serv','t'+IntToStr(TestWord.Value)+'.ogg',False);
end.
В итоге оба звука воспроизводятся при нажатии кнопок, при вводе в поле значения 2 звук воспроизводится, при вводе 1 нет. Проект и звуки прилагаю.