DirectInput Joystick SetCooperativeLevel appears not to work

I'm using DirectInput and ActionMapping to allow a joystick to move a piece of machinery. However I find that I can run the action-mapping setup application at the same time and as well as displaying joystick values on its screen it also moves the machinery as the control program for the machinery is still active (this is a background process). The control program already had background and exclusive access but even with making the setup program access the joystick in exclusive and background mode they still both have access to the joystick at the same time. It seems that once an application has acquired the joystick once it never seems to fail when Poll is called.

Is it possible to get sole access to the joystick?

[733 byte] By [Dunx] at [2008-1-25]
# 1

Multiple applications can acquire a device exclusively, but only one can have the device acquired in Exclusive Foreground. Set the foreground flag on your application so that it exclusively gets the input.

DavidWeller at 2007-9-9 > top of Msdn Tech,Game Technologies: DirectX, XNA, XACT, etc.,Game Technologies: General...