Hi Jorge, It looks like you want to create a reference data structure to create your links from.
I would suggest something like: # filename of link to create on disk my $path1 = "$RegValue\\InstallOXE.lnk"; # LINK attribute to set => value my %lnk1 = ( 'Path' => "$CMPath/Active_Perl/Bin/", 'WorkingDirectory' => "$CMPath/Active_Perl/Bin/", etc... ); And then: &createScut(\%lnk1,$path1); .... sub createScut { # I think this line works, haven't tested it my %link_info = %{$_[0]}; my $path = $_[1]; my $LINK = new Win32::Shortcut; for(keys %link_info) { $LINK->{$_} = $link_info{$_}; } $LINK->Save($path); $LINK->Close(); } Hope that helps, -dave > -----Original Message----- > From: Jorge Goncalvez [mailto:[EMAIL PROTECTED]] > Subject: RE:how to pass 2 variables > 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. > > > -- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]