Curved Spring
I played with this and was unable to get either spiral or thread to work on anything but a straight cylinder, I am sure this is what you have run into as well. I think I have a solution though. Your profile, is it a single curve, a series of curves, or is it a compound curve? If it is just a single curve, you can create a torus by revolving a circle 360deg, then using a plane that is angled to your torus you can circular pattern the torus a set number of times and the same number of degrees as your plane. Use the parameter of the plane angle in place of a number in the circular pattern. I have uploaded a file that can demonstrate.
Hope this helps, it is an imperfect solution but it should do well enough to get the idea across.