use Win32::Process; sub ErrorReport{ print Win32::FormatMessage(Win32::GetLastError()); } my ($ftype) = `assoc .pdf`=~/=(.*)/; print $ftype,"\n"; my ($apath) = `ftype $ftype`=~/=(.*)/; print $apath,"\n"; my $procobj; $apath=~s/"%1"$//; $apath=~s/^"//; $apath=~s/"\s*$//; Win32::Process::Create( $procobj, "$apath", "x D:\\WORK\\Documentation\\cd-writing\\perl-technology\\root-cd-tk\\files\\PSAX1250_IG_R610_Iss1-mp.pdf", 0, NORMAL_PRIORITY_CLASS, "." ) || die ErrorReport();