First, those are not environment variables. Those names don't exist by default, unless you've got some login script that are setting them.
What you SHOULD be doing is assembling the fully qualified paths to these files using known starting points. What you're using in your examples are not environment variables but are much closer to the names in the Environment.SpecialFolder enum, found
here[
^].
You can use those in the
Environment.GetFolderPath()[
^] to get the fully qualified paths to the folder specified, like
Directory
or
System
.
You then use the returned paths with
Path.Combine()
to build the path to your target file you want to launch. You then pass the resulting path to your Process code to launch the command prompt.