use strict; use warnings; use Win32::GUI(); my $startdir = 'C:\Users'; my $output_file = Win32::GUI::GetSaveFileName( -title => "Save as...", -directory => $startdir, -file => "output.txt", -filter => [ "Text documents (*.txt)" , "*.txt", "All files" , "*.*", ], ); if($output_file){ print("Using $output_file as output."); } else{ print("No output file chosen."); }