如何通過文件關聯在Vista 64中傳遞命令行參數?如何通過Vista 64中的文件關聯傳遞命令行參數?
我最近建立了一臺運行Vista Ultimate 64位的PC。我注意到我傳輸的幾個Perl腳本因命令行參數未被傳遞而失敗。作爲一個簡單的測試,我寫了下面(foo.pl):
#!/usr/bin/perl -w
use strict;
my $num_args = $#ARGV + 1;
print "${num_args} arguments read\n";
print "$^X\n" # to see what was being used
運行 「foo.pl 1 2 3」 不希望地產生:
0 arguments read
C:\strawberry\perl\bin\perl.exe
運行「的perl foo.pl 1 2 3 「預計產生了:
3 arguments read
C:\strawberry\perl\bin\perl.exe
在我舊的Windows XP PC上,兩個調用都返回了3個參數。我在這裏記錄了更多我在這裏偵查(win32.perl.org wiki talk),但我還沒有找到一個可行的解決方案。
我也試過ActivePerl-5.10.0.1004-MSWin32-x64-287188.msi無濟於事。
任何幫助,將不勝感激。這讓我非常沮喪。
我只看到下面 HKEY_CLASSES_ROOT \特等\ Perl的\(默認值)=(值未設置) HKEY_CLASSES_ROOT \特等\ Perl的\的ShellNew \(默認值)=(值未設置) 我發現%*我的語法win32.perl.org偵查。 Vista使用「assoc」和「ftype」功能,我已經試過修改無效:( – vlee 2009-01-14 20:14:29
實際的命令是在HKEY_CLASSES_ROOT \ Perl \ shell \ Open \ command中,看到我的回答如下 – VonC 2009-01-14 20:24:36
由於命令行找到了perl解釋器當您啓動一個.pl文件時,關聯必須是* somewhere *。在註冊表中搜索「perl.exe」,並查看您是否可以應用此信息 – devio 2009-01-14 20:35:18