Look at The example of the IndigoPerl installation script, I found they use something like the following code to add shortcuts to the startmenu.
sub MakeShortcut{ use Config; use Win32::API; use Win32::Shortcut; use Win32::Registry; use strict; use DSUtil; my ($shortcutfoldername, $configUser) = @_; my ($key); if ($configUser || Win32::IsWin95()) { $key = 'HKCU\Software\Microsoft\Windows\CurrentVersion\Explore +r\Shell Folders\Programs'; } else { $key = 'HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explore +r\Shell Folders\Common Programs'; } my $folderdir = DS::GetReg($key); my $folderpath = "$folderdir\\$shortcutfoldername"; print "Creating shortcut folder $folderpath\n"; mkdir ($folderpath, 0777); print "Making shortcut Tk Solitaire\n"; my $LINK=new Win32::Shortcut(); $LINK->{'Path'}="\\Tk Solitaire\\Tk Solitaire.exe"; $LINK->{'Arguments'}=""; $LINK->{'WorkingDirectory'}=\\Tk Solitaire; $LINK->{'Description'}="Tk Solitaire"; $LINK->{'ShowCmd'}=SW_SHOWNORMAL; $LINK->Save("$folderpath\\Tk Solitaire.lnk"); $LINK->Close(); }
DSUtil (witch is required for the my $folderdir = DS::GetReg($key); line of code) is not a module for ActiveState ActivePerl. Please help me rewite to above code to work with ActiveState ActivePerl.
In reply to Windows Registry by akm2
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |