From: Tyson Whitehead twhitehead@gmail.com
This flag is for passing to Get/SetParameters. It is not a valid setting for the DIEFFECT dwFlags member according to the docs.
Type specific parametrs are indicated by cbTypeSpecificParameters being not 0 and lpvTypeSpecificParametrs being non-NULL. --- dlls/joy.cpl/dinput.c | 4 ---- 1 file changed, 4 deletions(-)
diff --git a/dlls/joy.cpl/dinput.c b/dlls/joy.cpl/dinput.c index e12b6a8ad25..a2533711a3b 100644 --- a/dlls/joy.cpl/dinput.c +++ b/dlls/joy.cpl/dinput.c @@ -114,13 +114,11 @@ static BOOL CALLBACK enum_effects( const DIEFFECTINFOW *info, void *context ) params.dwDuration = 2 * DI_SECONDS, params.cbTypeSpecificParams = sizeof(ramp); params.lpvTypeSpecificParams = &ramp; - params.dwFlags |= DIEP_TYPESPECIFICPARAMS; } else if (IsEqualGUID( &info->guid, &GUID_ConstantForce )) { params.cbTypeSpecificParams = sizeof(constant); params.lpvTypeSpecificParams = &constant; - params.dwFlags |= DIEP_TYPESPECIFICPARAMS; } else if (IsEqualGUID( &info->guid, &GUID_Sine ) || IsEqualGUID( &info->guid, &GUID_Square ) || @@ -130,7 +128,6 @@ static BOOL CALLBACK enum_effects( const DIEFFECTINFOW *info, void *context ) { params.cbTypeSpecificParams = sizeof(periodic); params.lpvTypeSpecificParams = &periodic; - params.dwFlags |= DIEP_TYPESPECIFICPARAMS; } else if (IsEqualGUID( &info->guid, &GUID_Spring ) || IsEqualGUID( &info->guid, &GUID_Damper ) || @@ -139,7 +136,6 @@ static BOOL CALLBACK enum_effects( const DIEFFECTINFOW *info, void *context ) { params.cbTypeSpecificParams = sizeof(condition); params.lpvTypeSpecificParams = &condition; - params.dwFlags |= DIEP_TYPESPECIFICPARAMS; }
do hr = IDirectInputDevice2_CreateEffect( device, &info->guid, ¶ms, &effect, NULL );