Текущий архив: 2006.04.09;
Скачать: CL | DM;
ВнизКак запритить звуковой карте воспроизводить звук Найти похожие ветки
← →
Физик © (2006-03-22 16:00) [0]Как запритить звуковой карте воспроизводить звук
← →
clickmaker © (2006-03-22 16:06) [1]пролить на нее кофе, например. Или пообещать это сделать, если она хоть пикнет
← →
Сергей М. © (2006-03-22 16:23) [2]
> Физик ©
Запрети ее использование в Панели Управления
← →
SergP. (2006-03-22 19:30) [3]
> Как запритить звуковой карте воспроизводить звук
а это как?
← →
balepa © (2006-03-23 06:19) [4]1. Выдрать из мат платы
2. Удалить драйвера
> clickmaker © (22.03.06 16:06) [1]
>пролить на нее кофе, например. Или пообещать это сделать, если она хоть >пикнет
Она же потом может с перепугу начать заикаться
← →
Der Nechk@ssoff © (2006-03-23 07:04) [5]Положи на всеконтакты по монетке и забудь о ней.
← →
antonn © (2006-03-23 07:06) [6]наверное нужно mute на карте включить...
← →
Turbid © (2006-03-23 17:48) [7]Этот пример программно замутивает звук
Автор: http://www.swissdelphicenter.ch
uses
MMSystem;
function GetMasterMute(
Mixer: hMixerObj;
var Control: TMixerControl): MMResult;
// Returns True on success
var
Line: TMixerLine;
Controls: TMixerLineControls;
begin
ZeroMemory(@Line, SizeOf(Line));
Line.cbStruct := SizeOf(Line);
Line.dwComponentType := MIXERLINE_COMPONENTTYPE_DST_SPEAKERS;
Result := mixerGetLineInfo(Mixer, @Line,
MIXER_GETLINEINFOF_COMPONENTTYPE);
if Result = MMSYSERR_NOERROR then
begin
ZeroMemory(@Controls, SizeOf(Controls));
Controls.cbStruct := SizeOf(Controls);
Controls.dwLineID := Line.dwLineID;
Controls.cControls := 1;
Controls.dwControlType := MIXERCONTROL_CONTROLTYPE_MUTE;
Controls.cbmxctrl := SizeOf(Control);
Controls.pamxctrl := @Control;
Result := mixerGetLineControls(Mixer, @Controls,
MIXER_GETLINECONTROLSF_ONEBYTYPE);
end;
end;
procedure SetMasterMuteValue(
Mixer: hMixerObj;
Value: Boolean);
var
MasterMute: TMixerControl;
Details: TMixerControlDetails;
BoolDetails: TMixerControlDetailsBoolean;
Code: MMResult;
begin
Code := GetMasterMute(0, MasterMute);
if Code = MMSYSERR_NOERROR then
begin
with Details do
begin
cbStruct := SizeOf(Details);
dwControlID := MasterMute.dwControlID;
cChannels := 1;
cMultipleItems := 0;
cbDetails := SizeOf(BoolDetails);
paDetails := @BoolDetails;
end;
LongBool(BoolDetails.fValue) := Value;
Code := mixerSetControlDetails(0, @Details,
MIXER_SETCONTROLDETAILSF_VALUE);
end;
if Code <> MMSYSERR_NOERROR then
raise Exception.CreateFmt("SetMasterMuteValue failure, " +
"multimedia system error #%d", [Code]);
end;
// Example:
procedure TForm1.Button1Click(Sender: TObject);
begin
SetMasterMuteValue(0, CheckBox1.Checked); // Mixer device #0 mute on/off
end;
← →
Сергей М. © (2006-03-24 08:31) [8]Режим Mute не мешает карте продолжать "воспроизводить звук", если, правда, под "воспроизводимым звуком" подразумевается не иначе чем бухтение в колонках или наушниках, подключенных к аналоговым выходам карты.
Страницы: 1 вся ветка
Текущий архив: 2006.04.09;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.014 c