in reply to how can i use PuTTY under Net::SFTP::Foreign ?
From Net:SFTP::Foreign it looks like you define your external SSH client by ssh_cmd => $sshcmd.
From the PuTTY Documentation it looks like you invoke putty from the command line by putty.exe [-ssh | -telnet | -rlogin | -raw] [user@]host.
However, depending on what you are trying to do, you may want to use PuTTY's PSFTP or PSCP clients instead.
In Section
Seekers of Perl Wisdom