To open long filenames with spaces enbedded use single quotes.
To make a shortcut use Win32::Shortcut, it comes standard with the ActiveState distrubution.
To find out the system path I probably wouldn't do it through perl I would probably use a system call to the Dos shell and use the Enviromental Variables there it would be much easier to access. Otherwise the only way I can think of off hand is to use Win32::TieRegistry or Win32::Registry.
great sources of Win32 info is http://perl.dada.it or David Roth's Site Roth has written many Win32 modules and has several very good book on the subject on programming and administrating a Win32 environment. Be careful his books aren't intended for the novice they assume a solid understanding of perl's core functions.