http://www.perlmonks.org?node_id=959663


in reply to Re^5: Win7, ASSOCiation , and @ARGV
in thread Win7, ASSOCiation , and @ARGV

Now I don't know whether to say "Thank you" first... or to give priority to the "Ouch!"

Nonetheless, your observation has to help point me to something odd about my setup.

BTW, did you see BrowserUK's Re^5: Win7, ASSOCiation , and @ARGV? I suspect modifying his ref to Perl64 is another step to try... but I'm checking with him (and the 'morrass of technet, MS.com and other M$ docs').

Replies are listed 'Best First'.
Re^7: Win7, ASSOCiation , and @ARGV
by Not_a_Number (Prior) on Mar 14, 2012 at 21:09 UTC
    BTW, did you see BrowserUK's Re^5: Win7, ASSOCiation , and @ARGV?

    Yes, after I'd posted my above reply. But frankly, it's way over my head.

    But FWIW again, here's the full output of what I get from perl -V:

    As far as I remember, I didn't change any defaults during the AS installation...

      I've had the problem that if I executed on Win7:
      perl myprog.pl a b c
      the program got the parameters (in @ARGV) correctly, but if I executed:
      myprog.pl a b c
      the program would NOT receive the parameters. I searched the web for a solution and soon found that it was no ActiveState perl problem but more likely a filetype association problem in Windows (Win7). However all solutions changing the
      assoc .pl=Perl
      and the
      ftype Perl="C:\Perl\bin\perl.exe" "%1" %*
      or changing stuff in the registry still did not solve the puzzle for me. I did notice that the assoc .pl was not used somehow because if I added assoc .plx=Perl and renamed my program to myprog.plx
      myprog.plx a b c
      worked perfectly ! So then I read this problem on the Microsoft forum were the Win7 "feature" Default Programs was mentioned, I found the solution to my problem:

      Open Default Programs by clicking the Start button , and then click "Default Programs".

      Select "Associate a file type or protocol with a program" and select ".pl" and click on "Change program". There was already a Perl Command Line Interpreter specified as Recommended Programs but instead I clicked on Browse and selected the Perl.exe myself. After closing the "Associate a file type ..." screen,

      myprog.pl a b c
      executed like a charm, all parameters were correctly retrieved by my program. Hope that helps ...