#!/usr/bin/perl -w use strict; my $Registry; my $newpath='C:\Perl\bin'; use Win32::TieRegistry ( TiedRef=>\$Registry, Delimiter=>"/", ArrayValues=>1 ); my $env= $Registry->{"LMachine/System/CurrentControlSet/Control/". "Session Manager/Environment/"} or die "Can't open CCS/SM/Env: $^E\n"; my $path= $env->{"/PATH"} or die "Can't get PATH: $^E\n"; #Prepend to path if ($path->[0] =~ /$newpath/ ) { print "$newpath is already in your PATH\n"; } else { print "Here\n"; $path->[0]= $newpath . "$path->[0]"; print "Path is now $path->[0]\n"; $env->{"/PATH"}= $path or die "Can't set PATH: $^E\n" }