i had a similar problem of making a solid curved staircase railing. this could be solved using two lisp programs available in cadtutor. one is "helsurf". using this program we can make a helical open surface. then using the other program "m2s" the helical surface is converted to a solid. then make a similar solid again and subtract from the first one to get the required shape. remeber one thing. that is to consider the axis for the helix as the X-axis. that means a horizontal line passing through the point 0,0. we get the helix around the X-axis only by virtue of the program. rotate the helix in 3d to get the actual orientation. some trial and error method is required to establish this.