> Using AS Perl 5.8.7 under W98SE, the PATH environment variable is > displayed, then assigned a new value; but the new value doesn't propagate
> back to the MS-DOS %PATH% variable. Are the %ENV values read-only? Many thanks to Robert, Bill, Alex, and Chris who responded to this inquiry. I should have figured out that child processes can't change their parent environment (but didn't)... and thus the value of this community. The original problem was that, after startup, the PATH contains duplicate pathnames. After debugging the startup sequence (IO.SYS->MSDOS.SYS->COMMAND.COM->CONFIG.SYS->AUTOEXEC.BAT), the problem seemed to originate with IO.SYS, which is a hard module to modify. So I wrote a PERL program that culled duplicates from the PATH environment variable and assigned the new path string to $ENV{PATH}. I tried to interpret it from AUTOEXEC.BAT, but got a "Not a DOS program" (probably in real mode) error message at boot time. I then tried to execute it from the shortcuts for the command prompts, but for the reason stated, that didn't work. The less-than-desirable fix that I'm now using is to reference batch-file SHELLINI.BAT in the shortcuts to the command-prompts. The batch-file invokes the PERL interpreter as in: ... Perl C:\Programs\Scripts\PATHcull.plx CALL C:\PROGRAMS\Scripts\PATH.BAT ... PATHcull.plx splits the PATH string into pathnames, culls out the duplicates, and concatenates a new string ($sRed), which is written in a SET PATH=$sRed command to file PATH.BAT (yes, the Admin's hack -- the temporary batch-file -- rears its hoary head). And SHELLINI.BAT calls PATH.BAT to execute the SET PATH command. At least that fixes PATH for each instance of the command-prompt. Regards, Neil _______________________________________________ Perl-Win32-Users mailing list Perl-Win32-Users@listserv.ActiveState.com To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs