Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2002.08.29;
Скачать: [xml.tar.bz2];

Вниз

Speaker don t   Найти похожие ветки 

 
voodoo_alex   (2002-06-11 12:55) [0]

Народ вот пишу
Beep;
но спикер не пикает ;((( Подскажите как его проще всего заставить пикать то.... к 60-му порту то доступ мне винда не отдаст напрямую ;((((

Спасибо заранее.


 
12345678   (2002-06-11 13:10) [1]

Beep - проигрывает через звуковую карту "стандартный звук"


 
Song   (2002-06-11 14:18) [2]

Может он у тебя от мамки отключён ? :)


 
mukha   (2002-06-12 09:51) [3]

Возможно, просто не установлена схема воспроизведения звуков. Проверь:пуск\Настройка\Панель управления\Звук\Схемы должно быть установлено "Стандартные звуки Windows" или там же для используемой схемы необходимо назначить необходимые звуки.


 
Song   (2002-06-12 10:04) [4]

По-моему "стандартному звуку" фиолетово до настроек звуковых схем...


 
AlexSV   (2002-06-12 10:45) [5]

Beep - это дельфевая функция.

Из help"a:
procedure Beep;
Description
Beep calls the Windows API MessageBeep.

MessageBeep вызывает WAV файл на soundcard, поэтому speaker и молчит.

юзай Windows.Beep

Из help"a:
The Beep function generates simple tones on the speaker


 
mukha   (2002-06-12 11:08) [6]


> Song © (12.06.02 10:04)
> По-моему "стандартному звуку" фиолетово до настроек звуковых
> схем...


Мой ответ для того случая, когда "стандартный звук" воспроизводится через звуковую карту. Так как при наличии на ПК звуковой карты звук воспроизводится с помощью звуковой карты. Для этого можно использовать АРI-функцию MessageBeep, имеющую следующие идентификаторы стандартного звука: mb_IconAsterisk, mb_IconExclamation, mb_IconHand, mb_IconQuestion, mb_Ok. Например: MessageBeep(mb_Ok);
Чтобы извлечь "бип" из системного динамика, минуя звуковую карту, можно использовать АРI-функцию MessageBeep с параметром $FFFFFFFF. Например: MessageBeep($FFFFFFF);



 
Озадаченный   (2002-06-13 13:22) [7]

У меня этот MessageBeep($FFFFFFF); не работает, но через динамик работает Windows.Beep например: Windows.Beep(5000,50); выдается писк из динамика


 
угол   (2002-06-17 08:01) [8]

так надо не:
MessageBeep($FFFFFFF);
а:
MessageBeep($FFFFFFF F);



 
Cobalt   (2002-06-17 09:23) [9]

MessageBeep( -1);


 
MEgor   (2002-06-17 10:36) [10]

Чего вы тут гадаете.
Ну почитайте вы хелп, вы что никогда туда не заглядываете?
Для платформ WinNT Windows.Beep(5000,50) работать будет, а вот для Win9x нет.
В хелпе так и сказано, что эти параметры игнорируются.


 
Dimka Maslov   (2002-06-17 12:00) [11]

http://delphibase.endimus.com/?action=viewfunc&topic=mediasound&index=1


 
ao1973   (2002-06-17 17:19) [12]

англичанин !
если решил повыпендиваться то писать надо doesn"t!


 
easy   (2002-06-17 17:27) [13]

...вот ещё фишка:

Как управлять спикером под 9х из Дельфи
http://www.sources.ru/delphi/system/speaker_control.shtml

для всех виндовсов...


 
Wizard_Ex   (2002-06-19 16:32) [14]

Попробуй это:
Delay - пауза
MyBeep пикание частота, длительность
Call - примерчик,

procedure Delay(msecs : Longint);
var
FirstTick:Longint;
begin
FirstTick:=GetTickCount;
repeat
Application.ProcessMessages;
{для того чтобы не "завесить" Windows}
until GetTickCount - FirstTick >= msecs;
end;

function IsNT : boolean;
begin
case Win32Platform of
VER_PLATFORM_WIN32_NT: Result:=True;
else Result:=False;
end;
end;
procedure myBeep(Freq, Duration: Integer);
begin
if IsNT then begin windows.Beep(Freq, Duration); exit end;
// ;---рарешение канала 2 установкой порта B
asm
IN AL, 61h //чтение его значения
OR AL,3 //установка двух младших битов
OUT 61h, AL //посылаем байт в порт B
//;---установка регистров ввода/вывода
MOV AL, 182 // для канала 2
OUT 43h, AL //засылка в командный регистр
//---засылка счетчика в задвижку
sub edx, edx
mov eax, 1190000
xor ecx, ecx //очистка от "мусора"
mov ecx, Freq
div ecx //счетчик = 1190000/Freq
OUT 42h, AL //посылаем младший байт
MOV AL, AH //сдвигаем младший байт в AL
OUT 42h, AL //посылаем старший байт
end;
Delay(Duration);
asm //выключение звука
IN AL, 61h //получаем байт из порта B
AND AL, 252 //сбрасываем два младших бита
OUT 61h, AL //посылаем байт обратно
end;
end;

procedure Call;
begin
MyBeep(880,100);
Delay(10);
MyBeep(570,100);
Delay(20);
Delay(200);
MyBeep(880,100);
Delay(10);
MyBeep(570,100);
Delay(20);
end;


 
Wizard_Ex   (2002-06-19 16:34) [15]

гарантированно работает под W95, W98, NT, XP, 2000 И тому подобными ОСами



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2002.08.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.007 c
3-95702
maximf
2002-08-08 13:00
2002.08.29
Фильтрация в TIBQuery


3-95700
Loco
2002-08-07 15:32
2002.08.29
Query


3-95636
exciter_
2002-08-07 15:34
2002.08.29
IB6. Доступ к таблице в другой GDB.


1-95795
^Sanya
2002-08-19 14:59
2002.08.29
Опять и опять....


3-95704
Sim0n
2002-08-08 08:54
2002.08.29
помогите разобраться с DBGrid





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский