in reply to Opening files for other exes in Windows
It is not clear if $File is an executable or a data file. File association is not done by the OS in Windows, the application must do it by looking up the registry. You can find the program associated with a file (and extension) using Win32::FetchCommand (CPAN) which will do the registry lookup for you. It is actually designed to work with Win32::Process::Create, but should work OK with system().