Update:
I have now played HOTD2 in 2 player - works well. I had to reconfigure the troubleshooter - you must select ActLabs TV lightguns, not PC USB lightguns. Then I had to put player2 button2 to mouse1button4 in Wingun.
This does not track the guns permanently, only when you fire, but this has no impact on this game at all (same as arcade).
I have also now played 2 player in MAME successfully with area51. Works great, nice and accurate. Again, there is no tracking of the cursor (so you will want to turn off the mame target) but then you dont want one anyway to play properly.
mouse 1, lightgun 1, dual_lightgun 0, lightgun_device lightgun. (in mame.ini)
Then in area51, both players are lightgun1X and Y, with P1 button1 as mouse button 0 and P2 button1 as mouse button 2.
This is all with Wingun.
The only outstanding issue I have now, is that I can't play 2 player games that need 2 player tracking - so any of the "fake" lightgun games (T2, opwolf,revx etc...) only work well in 1 player mode.
This is, I believe, a mame limitation and I suspect the only way round it is to use a modified version that supports something like Rawinput, CPNmouse driver or simliar. NoName did this, Advancemame does this, analog+ did this. I don't currently have any versions of NoName/analog+ to test. Advance mame I am struggling to configure (I've activatied the SDL driver for graphics so I can run it in XP just fine, but can anyone give me the advmame.rc settings for cpnmouse or lgrawinput?)
For anyone struggling/getting these, my current advice is forget the EMS CD. Install Wingun or Guncon2PC (I hear both work).
1) Calibrate gun FIRST (info in the online manual)
2) Calibrate in Wingun - I just autocalibrated.
3) repeat 1) then 2) for gun2 at this point
4) Button config in Wingun. Make sure gun1 trigger is left mouse, gun2 trigger is middle mouse. (Think these are defaults).
You should be controlling the mouse with gun1 in windows at this stage.
If so, config mame.ini as above, then run your game at the same resolution as your desktop. (-r 1024x768 in the command line).
In game, hit tab, setup analogue controls so you have lightgun1 X and Y selected to control, THEN turn on the test dip switch to run in the in-game calibration.
Hope that helps!