4

我上周在我的 WinXP 上用草莓 Perl 替换了 ActivePerl。

我发现我必须使用以下命令运行我的 Perl 脚本perl myperl.pl;否则我只需要myperl.pl在安装草莓之前运行。我怎么只能myperl.pl像以前一样跑?

我检查了我的环境配置,如下所示。

C:\> Path

C:\Program Files\ActiveState Komodo Edit
5\;C:\Perl\site\bin;C:\Perl\bin;C:\Perl\bin\;C:\Program Files\CodeSynthesis
XSD 3.2\bin\;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;
C:\Program Files\ATI Technologies\ATI Control Panel;C:\Program Files\Microsoft
SQL Server\90\Tools\binn\;C:\Program Files\Common Files\Thunder Network\KanKan
\Codecs;C:\strawberry\c\bin;C:\strawberry\perl\bin`

安装成功后,Strawberry Perl 路径已经列在 Path 值中。

我错过了什么?谢谢您的建议。

4

4 回答 4

11

从命令提示符尝试:

assoc .pl=PerlScript
ftype PerlScript=c:\strawberry\bin\perl.exe %1 %*

--kmx

于 2010-06-10T11:15:48.283 回答
8

您需要将.pl文件扩展名与 Strawberry Perl 的可执行文件相关联(这是 Windows 的东西,而不是 Perl 的东西)。

要做到这一点,有几种方法(您可以谷歌或在 ServerFault 上询问最佳或完整列表),但我通常在 XP 上使用的方法是:

  • 打开任何文件夹 Windows 资源管理器
  • 进入“工具”菜单,然后在出现的对话框中单击“文件类型”选项卡
  • 在列表中查找“PL”扩展名
  • 如果存在,请通过单击“PL”行并单击“更改”按钮将关联的可执行文件更正为 Strawberry Perl 的 .exe
  • 如果它不在列表中,请单击“新建”按钮,在表单中输入 PL 扩展名,然后单击“确定”。然后关闭整个对话框,然后重新打开它。“PL”扩展名现在将在列表中,因此单击它并单击“更改”按钮

万一我搞砸了,这是微软的官方说明:

http://support.microsoft.com/kb/307859

更新 请查看kmx的回答-他的方法是全命令行的,因此对我来说GUI错误似乎更可取...我确认它也可以工作(至少没有参数)

于 2010-06-10T10:56:25.360 回答
3

您可能需要将.PL扩展​​名放入PATHEXT环境变量中。这将使.pl文件与PATH变量一起工作。

类型

set PATHEXT

看看你是否设置好了。如果不是,请转到“我的电脑”->“属性”->“高级”,然后按选项卡底部的“环境变量”按钮。在那里您可以添加.PLPATHEXT变量。

或者您可以将其设置在您运行以启动 cmd 的一些批处理文件中:

set PATHEXT=%PATHEXT%;.PL
于 2010-06-10T13:39:16.130 回答
0

为了完整起见,这里有另外 2 种方法不会使 .pl 脚本成为可执行文件,但您可以使用它们将您的 perl 脚本变成可执行文件。

  • pl2bat假设将您的 .pl 的包装版本创建为可以在 Windows 系统上执行的 .bat 文件。我还没试过这个所以YMMV。
  • pp是我之前使用过的PAR::Packer模块的一部分,它可以很好地将你的 perl 脚本转换为可执行文件。
于 2012-01-22T02:20:09.170 回答