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

Вниз

Звук в Windows   Найти похожие ветки 

 
kolya.nn   (2005-09-11 16:50) [0]

Как програмно выключить и включить звук в виндоусе?


 
Eraser ©   (2005-09-11 16:57) [1]

Через микшер. Где-то на http://www.delphikingdom.com/ есть статья в которой описана работа с микшером.


 
kolya.nn   (2005-09-11 19:50) [2]

Я давно уже не занимался делфи, ничего не помню. Мне только надо сварганить мини-программку, чтоб включала-выключала звук, а разобраться в теме полностью я уже не смогу. Может кто-нибудь знает отрывок кода, делающий это?


 
Eraser ©   (2005-09-11 20:09) [3]

kolya.nn   (11.09.05 19:50) [2]

Смотрите в сторону компонента TAMixer, там это одной строкой делается.


 
kolya.nn   (2005-09-12 20:11) [4]

Спасибо, это мне подходит.


 
dmitry501 ©   (2005-09-13 07:48) [5]

посылай сообщение WM_APPCOMAND с параметром APPCOMMAND_VOLUME_UP,
APPCOMMAND_VOLUME_DOWN, APPCOMMAND_VOLUME_MUTE.


 
ssk ©   (2005-09-13 13:42) [6]

>>>dmitry501 ©   (13.09.05 07:48) [5]

имхо, если давно уже не занимался делфи, ничего не помню, то посылай сообщение ему не поможет. только готовый кусок кода.


 
Big Joe ©   (2005-09-13 17:27) [7]

выключи вот так:
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;



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

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

Наверх





Память: 0.46 MB
Время: 0.004 c
1-1126604338
IfBeginThenEnd
2005-09-13 13:38
2005.10.02
Базовый API


1-1126172544
Makcim
2005-09-08 13:42
2005.10.02
атрибуты файла


1-1126158174
Monk
2005-09-08 09:42
2005.10.02
Событие нажатия кнопки мыши на строке скроллинга компонентов


1-1126685990
john_mag
2005-09-14 12:19
2005.10.02
Button or BitBtn


3-1124206320
DSKalugin
2005-08-16 19:32
2005.10.02
Подключение к Sybase SQL Anywhere 5.5.05 и экспорт данных





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский