You can go through the arguments with a loop and try something like this:
:argloop
set "arg=%~1"
if "%arg:~0,1%"=="-" (
set "%arg:~1%=%~2"
shift
)
shift
if not "%1"=="" goto argloop
echo parameter 1: %parameter1%
echo parameter 2: %parameter2%
This will look at the arguments one by one and if an argument starts with a - it will set an environment variable of the same name with the next argument as its value:
H:\>args.cmd -parameter1 param1 -parameter2 param2
parameter 1: param1
parameter 2: param2
If you need the original arguments later, then you should move above loop to a subroutine and call it with %* as arguments.