Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask


by tye (Sage)
on Jul 19, 2001 at 21:28 UTC ( #98162=note: print w/replies, xml ) Need Help??

in reply to

Here are some minor suggestions:

  • Allow the data to be specified on the command line. Having to type the values on separate lines can be inconvenient in some situations.
  • Turn on warnings.
  • Handle EOF (or an error) when reading from STDIN.
  • Environment variables are usually given a value type of REG_EXPAND_SZ (instead of the default REG_SZ that you used) so that they can be, for example, "%SystemRoot%\\system32".
  • Check for failure on the insert.
Which results in something like this:
#/usr/bin/perl -w use strict; my $Reg; use Win32::TieRegistry ( TiedRef => \$Reg, ArrayValues => 1, Delimiter => '/', ':REG_' ); my( $Host, $Key, $Value )= @ARGV; # Asking for machine name and info to be added to the sys env var if( ! defined $Host ) { print "What host would you like to connect to? "; $Host= <STDIN> or exit; chomp $Host; } if( ! defined $Key ) { print "What name would you like for the Sys Environment Variable? +"; $Key= <STDIN> or exit; chomp $Key; } if( ! defined $Value ) { print "What value would you like to assign to this variable? "; $Value= <STDIN> or exit; chomp $Value; } # this is the system environment variable area done on the registry my $SysEnv= $Reg->Connect("$Host", "LMachine/System/CurrentControlSet/ +Control/Session Manager/Environment/") or die "Can't connect to $Host 's registry or can't open Registry + key, Session Manager/Environment: $^E +\n"; # create a new value and set its data $SysEnv->{"/$Key"} = [ $Value, REG_EXPAND_SZ ] or die "Can't create $Key ($Value): $^E\n";

        - tye (but my friends call me "Tye")

Replies are listed 'Best First'.
Re: (tye)Re:
by RayRay459 (Pilgrim) on Jul 19, 2001 at 23:07 UTC
    thanks tye. you rock!! I am always looking for advice on how to better writing in Perl. ~Ray~

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://98162]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (5)
As of 2018-06-23 22:17 GMT
Find Nodes?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?

    Results (126 votes). Check out past polls.