%* will always expand to all original parameters, sadly. But you can use the following snippet of code to build a variable containing all but the first parameter:
rem throw the first parameter away
shift
set params=%1
:loop
shift
if [%1]==[] goto afterloop
set params=%params% %1
goto loop
:afterloop
I think it can be done shorter, though … I don’t write these sort of things very often 🙂
Should work, though.