From: Johannes Anderwald Date: Tue, 27 Oct 2009 23:28:09 +0000 (+0000) Subject: [WDMAUD.DRV][MMEBUDDY] X-Git-Tag: ReactOS-0.3.11~267 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=b53f1051ec37167d701e66a14a7443e2fb53ff64 [WDMAUD.DRV][MMEBUDDY] - Implement support for DRV_QUERYDEVICEINTERFACESIZE, DRV_QUERYDEVICEINTERFACE for recording / mixer / midi-in midi-out svn path=/trunk/; revision=43799 --- diff --git a/reactos/dll/win32/wdmaud.drv/wdmaud.c b/reactos/dll/win32/wdmaud.drv/wdmaud.c index 3378be68c0f..2a491f389a1 100644 --- a/reactos/dll/win32/wdmaud.drv/wdmaud.c +++ b/reactos/dll/win32/wdmaud.drv/wdmaud.c @@ -609,6 +609,13 @@ GetDeviceInterfaceString( (LPVOID) &DeviceInfo, sizeof(WDMAUD_DEVICE_INFO), NULL); + + if ( MMSUCCESS(Result) && InterfaceLength > 2) + { + Interface[1] = L'\\'; + Interface[InterfaceLength-1] = L'\0'; + } + return Result; } diff --git a/reactos/lib/drivers/sound/mmebuddy/midi/midMessage.c b/reactos/lib/drivers/sound/mmebuddy/midi/midMessage.c index c088dc01a65..a99b6dc29ad 100644 --- a/reactos/lib/drivers/sound/mmebuddy/midi/midMessage.c +++ b/reactos/lib/drivers/sound/mmebuddy/midi/midMessage.c @@ -52,6 +52,19 @@ midMessage( Parameter2); break; } + + case DRV_QUERYDEVICEINTERFACESIZE : + { + Result = MmeGetDeviceInterfaceString(MIDI_IN_DEVICE_TYPE, DeviceId, NULL, 0, (DWORD*)Parameter1); //FIXME DWORD_PTR + break; + } + + case DRV_QUERYDEVICEINTERFACE : + { + Result = MmeGetDeviceInterfaceString(MIDI_IN_DEVICE_TYPE, DeviceId, (LPWSTR)Parameter1, Parameter2, NULL); //FIXME DWORD_PTR + break; + } + } SND_TRACE(L"midMessage returning MMRESULT %d\n", Result); diff --git a/reactos/lib/drivers/sound/mmebuddy/midi/modMessage.c b/reactos/lib/drivers/sound/mmebuddy/midi/modMessage.c index a08f80d4bd6..bde698719e4 100644 --- a/reactos/lib/drivers/sound/mmebuddy/midi/modMessage.c +++ b/reactos/lib/drivers/sound/mmebuddy/midi/modMessage.c @@ -52,6 +52,18 @@ modMessage( Parameter2); break; } + + case DRV_QUERYDEVICEINTERFACESIZE : + { + Result = MmeGetDeviceInterfaceString(MIDI_OUT_DEVICE_TYPE, DeviceId, NULL, 0, (DWORD*)Parameter1); //FIXME DWORD_PTR + break; + } + + case DRV_QUERYDEVICEINTERFACE : + { + Result = MmeGetDeviceInterfaceString(MIDI_OUT_DEVICE_TYPE, DeviceId, (LPWSTR)Parameter1, Parameter2, NULL); //FIXME DWORD_PTR + break; + } } SND_TRACE(L"modMessage returning MMRESULT %d\n", Result); diff --git a/reactos/lib/drivers/sound/mmebuddy/mixer/mxdMessage.c b/reactos/lib/drivers/sound/mmebuddy/mixer/mxdMessage.c index 88190cb1abb..15b731ac7b1 100644 --- a/reactos/lib/drivers/sound/mmebuddy/mixer/mxdMessage.c +++ b/reactos/lib/drivers/sound/mmebuddy/mixer/mxdMessage.c @@ -243,6 +243,19 @@ mxdMessage( break; } + + case DRV_QUERYDEVICEINTERFACESIZE : + { + Result = MmeGetDeviceInterfaceString(MIXER_DEVICE_TYPE, DeviceId, NULL, 0, (DWORD*)Parameter1); //FIXME DWORD_PTR + break; + } + + case DRV_QUERYDEVICEINTERFACE : + { + Result = MmeGetDeviceInterfaceString(MIXER_DEVICE_TYPE, DeviceId, (LPWSTR)Parameter1, Parameter2, NULL); //FIXME DWORD_PTR + break; + } + } SND_TRACE(L"mxdMessage returning MMRESULT %d\n", Result); diff --git a/reactos/lib/drivers/sound/mmebuddy/wave/widMessage.c b/reactos/lib/drivers/sound/mmebuddy/wave/widMessage.c index de9e353fadc..ce1e4dffce3 100644 --- a/reactos/lib/drivers/sound/mmebuddy/wave/widMessage.c +++ b/reactos/lib/drivers/sound/mmebuddy/wave/widMessage.c @@ -109,6 +109,19 @@ widMessage( break; } + case DRV_QUERYDEVICEINTERFACESIZE : + { + Result = MmeGetDeviceInterfaceString(WAVE_IN_DEVICE_TYPE, DeviceId, NULL, 0, (DWORD*)Parameter1); //FIXME DWORD_PTR + break; + } + + case DRV_QUERYDEVICEINTERFACE : + { + Result = MmeGetDeviceInterfaceString(WAVE_IN_DEVICE_TYPE, DeviceId, (LPWSTR)Parameter1, Parameter2, NULL); //FIXME DWORD_PTR + break; + } + + } SND_TRACE(L"widMessage returning MMRESULT %d\n", Result);