Там имеется ввиду, что нельзя остановить сервис beep
To silence the tone, use the following commands:
...
Windows Vista x64 and Windows XP 64-Bit Edition: This function is not supported.
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
GN> Windows Vista x64 and Windows XP 64-Bit Edition: This function is not supported. GN>[/q]
Вот блин сволочи. То есть придется опять по старинке отключать проводок спикера, если вдруг перееду дома на х64.
Как много веселых ребят, и все делают велосипед...
Здравствуйте, ononim, Вы писали:
O>Вот блин сволочи. То есть придется опять по старинке отключать проводок спикера, если вдруг перееду дома на х64.
Нельзя остановить работающую службу.
Можно запретить запуск.
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
GN>Нельзя остановить работающую службу. GN>Можно запретить запуск.
sc config beep start= disabled
Terminal Services: The beep is redirected to the client.
Windows Vista x64 and Windows XP 64-Bit Edition: This function is not supported.
это как раз и есть запрет запуска...
впрочем х64 у меня ща под рукой, ща затещу
Как много веселых ребят, и все делают велосипед...
O>sc config beep start= disabled
O>Terminal Services: The beep is redirected to the client.
O>Windows Vista x64 and Windows XP 64-Bit Edition: This function is not supported.
O>это как раз и есть запрет запуска...
Это есть выборочное цитирование, забыл
net stop beep
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
GN>Это значит только на Виста так, вот результат sc query на Microsoft Windows [Version 6.1.7100]
Ну да, так в мсдне и написано только про висту х64, про win7 там такого не сказано
Наверно не успели запортировать beep.sys на х64 к запланированной дате релиза, и в итоге недоделку обозвали фичей и документировали
Как много веселых ребят, и все делают велосипед...
GN>Это значит только на Виста так, вот результат sc query на Microsoft Windows [Version 6.1.7100] GN>
GN>SERVICE_NAME: Beep
GN>DISPLAY_NAME: Beep
GN> TYPE : 1 KERNEL_DRIVER
GN>
На поверку выяснилось, что он-то там есть, но вот только он нифига не beep'ает спикером
И это понятно — 32хбитный beep.sys дергает hal!HalMakeBeep, а в 64Хбитном такого вызова ваще нет, все что он делает — отправляет beep в другое устройства типа колонок или терминального сервера.
Кстати beep.sys в win7 x64 7600 не имеет встроенной подписи, как и другие микрософтовские драйвера — походу микрософт таки сделали поддержку winloader'ом проверку подписи драйвера по каталогу.
Как много веселых ребят, и все делают велосипед...
F>>Как заставить пищать PC speaker на Win7 x64 ? F>Скажите уважаемые люди. Есть ли вообще возможность у 64 разрядной операционной системы издавать звук с помощью спикера?
думаю да
Как много веселых ребят, и все делают велосипед...
F>Есть ли вообще возможность у 64 разрядной операционной системы издавать звук с помощью спикера?
у ОС — благодаря мс теперь нет. Зато у нас — есть =)
берем inpoutx64.dll, и программируем порты таймера напрямую!
у меня на win7 x64 скайп через это звонит, с помощью Skype4com
public class PortAccess
{
[DllImport("inpoutx64.dll", EntryPoint = "Out32")]
public static extern void Output(int adress, int value);
[DllImport("inpoutx64.dll", EntryPoint = "Inp32")]
public static extern int Input(int adress);
}
class Program
{
static void HBeep(int tone, int duration)
{
int div = 1193180 / tone;
PortAccess.Output(0x43, 182);
PortAccess.Output(0x42, div & 0xFF);
PortAccess.Output(0x42, (div >> 8) & 0xFF);
int v = PortAccess.Input(0x61);
PortAccess.Output(0x61, v | 0x03);
System.Threading.Thread.Sleep(duration);
v = PortAccess.Input(0x61);
PortAccess.Output(0x61, v & ~0x03);
}
}