Hi, I have this but it is a bit repeating I wonder how to pass 2 variables and use only function createScut.My code: my $path="$RegValue\\InstallOXE.lnk"; &createScut($path); my $path2="$RegValue\\remove.lnk"; &createScut2($path2);I sub createScut() { my $CMPath = GetMyRegPath::GetCygwinMountsPath(); my $lnkLocation = shift; $LINK=new Win32::Shortcut(); $LINK->{'Path'}=qq($CMPath\\Active_Perl\\Bin\\); $LINK->{'WorkingDirectory'}="$CMPath/Active_Perl/Bin/"; $LINK->{'Description'}=" Serveur d'installation CS OXE "; $LINK->{'ShowCmd'}=SW_SHOWMINNOACTIVE; $LINK->{'IconLocation'}="$CMPath/Active_Perl/Bin/ras.ico"; $LINK->Save($lnkLocation); $LINK->Close(); } sub createScut2() { my $CMPath = GetMyRegPath::GetCygwinMountsPath(); my $lnkLocation = shift; $LINK=new Win32::Shortcut(); $LINK->{'Path'}=qq($CMPath\\); $LINK->{'WorkingDirectory'}="$CMPath"; $LINK->{'Description'}=" Désinstallation de cygwin "; $LINK->{'ShowCmd'}=SW_SHOWMINNOACTIVE; $LINK->{'IconLocation'}="$CMPath/Active_Perl/Bin/cygwin.ico"; $LINK->Save($lnkLocation); $LINK->Close(); } Thanks.Thread Next