|Think about Loose Coupling|
Win7, ASSOCiation , and @ARGVby ww (Bishop)
|on Mar 14, 2012 at 02:26 UTC||Need Help??|
ww has asked for the
wisdom of the Perl Monks concerning the following question:
SOLVED! There's much useful info in this thread, which led to the conclusion that reinstalling Perl was the first best option. Using AS on Win7 (and probably elsewhere), right clicking the Perl executable in REMOVE PROGRAMS brings up 3 options, of which "Repair" uses the originally downloaded .msi.
... and, lo and behold, the quirks are gone!
I came across an interesting quirk recently (caveat: but it seems very likely that it's an OS issue, so don't invest a lot of attention unless you've an interest in something that appears to suggest a Perl issue -- and, that, and only at first glance).
Relying on Windows7's file ASSOCiation function to use Perl to execute the code below produces nothing but newlines when three arguments are provided on the command line, thus:
That would appear to be a line for $ARGV,  and  and a fourth, blank as expected, before the prompt repeats.
But explicitly invoking Perl produces the expected result:
The code in question is simplicity itself (well, almost -- except for the belt and suspenders mode):
Running a minimal version of the same code as a one-liner also produces the expected output:
...as does running the program in the debugger, invoked perl -d fn.pl arg arg arg./p>
That fact which refocuses my curiosity about whether the flaw lies with Win7's ASSOCiation or somewhere else.
The Perl and machine? AS v. 5.14.2; Win7,
I mention those two checks -- with produce the 'book answers' -- because in a 2010 thread on a similar problem, ikegami noted the likelihood that OP's problems stemmed from a broken ASSOCiation. That doesn't appear to be the case, here.
Ideas? Ideas for testing hypotheses? Proven answers?