Просмотр полной версии : Звук
supernewbie
08.07.2010, 23:29
Можно ли сделать звуковое оповещение при приходе пакета?
И еще, как сделать TForm всегда в фоновом режиме? (Поверх всех окон)
Насчет звука не уверен, но если не найдется ничего лучше использования плагинов, то можно использовать функцию ShowMessage(msg:Variant); предварительно в настройках винды установив нужный звук на это событие.
Поверх всех окон вот так:
var Form1:TForm;
//==========
Form1.FormStyle:=fsStayOnTop;
На счет звука - можно использовать функцию Beep из kernel32.dll
вот пример
var kernel32:integer;
procedure Init;
begin
kernel32 := loadLibrary('kernel32.dll');
end;
Procedure Free;
begin
FreeLibrary(kernel32);
end;
begin
if FromServer and (pck[1]=#$03) then CallFunction(kernel32,'Beep',2,[200,1000]); // где 200 это частота гудка, а 1000 время звучания в милисекундах
end.
supernewbie
09.07.2010, 01:03
че-то веер не работает)
У меня работает.. Кинь CallFunction(kernel32,'Beep',2,[200,100]); в Init там точно сработает. У тебя же ОС windows?
supernewbie
09.07.2010, 11:38
win XP sp 2 x64
Добавлено через 55 секунд
и ничего не слышно) никакого бип)
Добавлено через 9 часов 58 минут
форма стала в топе, остался вопрос про звук
alexteam
09.07.2010, 13:34
и ничего не слышно) никакого бип)
спикер отсуствует ?
Добавлено через 2 минуты
по поводу звука.
function PlaySound(pszSound: PChar; hmod: HMODULE; fdwSound: DWORD): BOOL; external 'winmm.dll' name 'PlaySoundA'; stdcall;
игрет вав.
я плагин для пх выкладывал. добавляющий плайсоунд в скриптовый движек. но его с дампа потерли уже давно. попроси у тамбика\гака.. у них возможно он остался.
supernewbie
09.07.2010, 14:10
эммм, тамбик? гак? кто-нибудь?
Добавлено через 4 минуты
function PlaySound(pszSound: PChar; hmod: HMODULE; fdwSound: DWORD): BOOL; external 'winmm.dll' name 'PlaySoundA'; stdcall;
это все вообще выдает ошибку при компиляции..
Добавлено через 5 минут
ну вот кое-что, что НОРМАЛЬНО работает...
lib := loadLibrary('user32.dll');
CallFunction(lib,'MessageBeep',1,[5000]);
alexteam
09.07.2010, 14:44
это все вообще выдает ошибку при компиляции..
а кто тебе сказал что оно должно компилиццо в фастскрипте в таком виде ?
Добавлено через 30 секунд
ну вот кое-что, что НОРМАЛЬНО работает...
вот. для сравнения.
function MessageBeep(uType: UINT): BOOL; external 'user32.dll' name 'MessageBeep';
alexteam
18.07.2010, 18:30
QaK, нискажу, тебе знать нипаложено )
если есть исходник то зарегать плейсаунд в фсе. Для извращенцев можно вызывать и клиентовские саунды но тоже нада регать.кернелский бип бред нада динамик и поток встает на время звука. Месаджбип тупо. Хотел text to speech прикрутить но дистрибутив левый нада таскать., проблемы совместимости и мутная установка отбили идею
А если можно в фастскрипте юниты притягивать, то стырить с делфы юнит MediaPlayer'a и тогда вообще будет изврат))
да все можно тока зачем х#ем гвозди забивать если можно добавить пару строк в юнит.
vBulletin® v3.6.11, Copyright ©2000-2024, Jelsoft Enterprises Ltd. Перевод: zCarot