I'd be willing to look at your code. If you don't want to post it publicly, PM me.
This should give you a starting place.
Code:
public static Joystick[] GetSticks()
{
var sticks = new List<SlimDX.DirectInput.Joystick>();
foreach (DeviceInstance device in Input.GetDevices(DeviceClass.GameController, DeviceEnumerationFlags.AttachedOnly))
{
// create the device
try
{
var stick = new SlimDX.DirectInput.Joystick(Input, device.InstanceGuid);
stick.Acquire();
foreach (DeviceObjectInstance deviceObject in stick.GetObjects())
{
if ((deviceObject.ObjectType & ObjectDeviceType.Axis) != 0)
stick.GetObjectPropertiesById((int)deviceObject.ObjectType).SetRange(-1000, 1000);
}
sticks.Add(stick);
Console.WriteLine(stick.Information.InstanceName);
}
catch (DirectInputException)
{
}
}
return sticks.ToArray();
}