![]() Когда я запускаю этот код: MIXERLINE MixerLine memset( &MixerLine, 0, sizeof(MIXERLINE) ) MixerLine.cbStruct = sizeof(MIXERLINE) MixerLine.dwComponentType =. ![]() Uses Windows, ActiveX, Classes, Graphics, OleServer, OleCtrls, StdVCL,ComObj ĬLASS_IMMDeviceEnumerator: TGUID = '']įunction EnumAudioEndpoints( dataFlow: EDataFlow deviceState: SYSUINT DevCollection:IMMDeviceCollection ): Hresult stdcall įunction GetDefaultAudioEndpoint(EDF: SYSUINT ER: SYSUINT out Dev :IMMDevice ): Hresult stdcall įunction GetDevice( pwstrId: pointer out Dev :IMMDevice) : HResult stdcall įunction RegisterEndpointNotificationCallback(pClient :IMMNotificationClient) :Hresult stdcall Result := mixerSetControlDetails(MixerHandle, звонок: MixerControlDetails.paDetails := := VolToSet MixerControlDetails.cbDetails := SizeOf(TMixerControlDetails_Unsigned) MixerControlDetails.dwControlID := VolumeCtrl.dwControlID MixerControlDetails.cbStruct := SizeOf(TMixerControlDetails) Set details (volume) for the volume control of the master volume lineįillChar(MixerControlDetails, SizeOf(TMixerControlDetails), 0) MixerLineControls.pamxctrl := := Result MMSYSERR_NOERROR then Exit MixerLineControls.cbmxctrl := SizeOf(TMixerControl) MixerLineControls.dwControlType := MIXERCONTROL_CONTROLTYPE_VOLUME MixerLineControls.dwLineID := MixerLine.dwLineID MixerLineControls.cbStruct := SizeOf(TMixerLineControls) Get the volume control of the master volume lineįillChar(VolumeCtrl, SizeOf(TMixerControl), 0) Result := mixerGetLineInfo(MixerHandle, MIXER_GETLINEINFOF_COMPONENTTYPE) MixerLine.dwComponentType := MIXERLINE_COMPONENTTYPE_DST_SPEAKERS MixerLine.cbStruct := SizeOf(TMixerLine) MixerControlDetails: TMixerControlDetails įillChar(MixerLine, SizeOf(TMixerLine), 0) Procedure TForm33.FormCreate(Sender: TObject) ĬoCreateInstance(CLASS_IMMDeviceEnumerator, nil, CLSCTX_INPROC_SERVER, IID_IMMDeviceEnumerator, deviceEnumerator) ĭeviceEnumerator.GetDefaultAudioEndpoint(eRender, eConsole, defaultDevice) ĭefaultDevice.Activate(IID_IAudioEndpointVolume, CLSCTX_INPROC_SERVER, nil, endpointVolume) įunction SetMasterVolume(VolToSet: word out VolSet: word): MMResult Procedure TForm33.Button1Click(Sender: TObject) ĮndpointVolume.SetMasterVolumeLevelScalar(VolumeLevel, nil) Ĭaption := Format('%1.8f', ) ![]() Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,ĮndpointVolume: IAudioEndpointVolume = nil ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |