![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Почему Beep(1000,1000) из WinProcs не работает под WIN 95/98 [D4, D5, D6, Win95/98, WinME, NT4, Win2k, WinXP]
Comwad © (2002-09-20 13:16:00)Добрые сутки, уважаемые!
Почему Beep(1000,1000) из модуля WinProcs не работает под WIN 95/98 , а под Win2k прекрасно отрабатывает и "пищит"?
Спасибо за мудрый ответ.
Comwad (2002-09-24 06:16:00) [1]Спасибо всем.
Все так просто.
Help - умеет снимать головные боли.
Алексей Ким (2002-09-20 20:07:00) [2]procedure MyBeep(Frequency, Duration: Integer);
asm
cmp Win32Platform, VER_PLATFORM_WIN32_NT
jne @@9X
push edx
push eax
call Windows.Beep
ret
@@9X:
push ebx
push edx
mov bx, ax
mov ax, 34DDh
mov dx, 0012h
cmp dx, bx
jnc @@2
div bx
mov bx, ax
in al, 61h
test al, 3
jnz @@1
or al, 3
out 61h, al
mov al, 0B6h
out 43h, al
@@1:
mov al, bl
out 42h, al
mov al, bh
out 42h, al
call Windows.Sleep
in al, 61h
and al, 0FCh
out 61h, al
@@2:
pop ebx
end;
попробуй
pasha676 (2002-09-20 13:52:00) [3]Начись нажимать F1. Там черным по английскому написано про биип
Windows NT:
Specifies the duration, in milliseconds, of the sound.
Windows 95:
The parameter is ignored.