Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re^3: perl interpreter issue

by pryrt (Prior)
on Feb 03, 2020 at 16:45 UTC ( #11112324=note: print w/replies, xml ) Need Help??


in reply to Re^2: perl interpreter issue
in thread perl interpreter issue

In each of your user accounts, open up a cmd.exe window and run

REG QUERY HKEY_CURRENT_USER\Software\Classes\.pl /S
. If you have per-user configuration, this will pop up something like
HKEY_CURRENT_USER\Software\Classes\.pl (Default) REG_EXPAND_SZ PerlScript
. Now, using your value on the right instead of PerlScript below, run
REG QUERY HKEY_CURRENT_USER\Software\Classes\PerlScript /S
. There should be one similar to
HKEY_CURRENT_USER\Software\Classes\PerlScript\shell\run\command (Default) REG_EXPAND_SZ "c:\usr\local\apps\berrybrew\perls\s +ystem\perl\bin\perl.exe" "%1" %*
, which has a key name of "command", and runs perl.exe. You need to make sure that it has a "%1" (with quotes!), which indicates the name of the script, and the %* (no quotes!), which indicates any additional command line arguments to be passed to the script.

If you did a "for all users" install, instead of being in that location, you might need to look in HKEY_CLASSES_ROOT\.pl and HKEY_CLASSES_ROOT\PerlScript (or whatever the right value is) using the same REG QUERY syntax, but with the new key location.

If the working user has "%1" %* and the broken user just has "%1" (or worse, just %1 without quotes), then the broken user doesn't have the right association.

If the working user has one or both of the HKEY_CURRENT_USER and the HKEY_CLASSES_ROOT, but the broken user has neither, then the association wasn't created at all for the broken user, and that will need to be fixed.

Also, you mentioned running perl test.pl, so the script obviously ends in .pl. However, you then try to run it as test welcome, without the .pl. For that to work, you need PATHEXT set properly for all users who try. Thus, for each user, in the same cmd.exe, run echo %PATHEXT%. It needs to include .PL somewhere in the list; mine, for example, is .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PL, with the .PL at the end of the list.

If any of your users are missing either the correct command value, or the .PL in the PATHEXT, those will need to be fixed. If you need help fixing those, please paste in between <code>...</code> tags the results of the various REG QUERY and echo %PATHEXT% commands above for both the working and the broken user (telling us which is which), and we can try to help you get those fixed.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://11112324]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (6)
As of 2020-05-29 01:31 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    If programming languages were movie genres, Perl would be:















    Results (166 votes). Check out past polls.

    Notices?