2010-03-13 28 views
2

我想从最终用户那里“隐藏”一些Perl程序,以使其更容易。我正在尽我所能让他们远离命令提示符。该程序本身有一个用Perl/Tk设计的GUI,所以他们不必担心命令提示符。如何在Windows下使用批处理文件为Perl程序创建快捷方式?

我能写出来沿的线条进入一个快速批处理文件:

START perl 'C:\[some path here]\myscript.pl' 

与START启动程序,Perl的解释器作为我的计划,我的Perl脚本作为路径/名称参数?

我需要指定在哪里可以找到perl,或者Windows会知道,因为perl在计算机的PATH变量中?

回答

2

你不需要“开始”这个。从您的路径添加perl.exe或指定perl解释器的完整路径。

所以...把这个批处理文件:

c:\program files\perl.exe "c:\whatever\myscript.perl" 

-don

2

如果这个想法是让他们在命令行了,为什么要使用批处理文件呢?为什么不制作一个快捷方式? (如果你不想用手工制作,你可以使用Win32::Shortcut)。

5

我有一个完全邪恶的VBS脚本和批处理文件来处理草莓Perl Portable这种事情。 VBS脚本运行批处理文件而不产生cmd窗口。该批处理文件确定它在哪里,perl.exe是相对于它的位置,并运行perl脚本。在这种情况下,它运行一个Catalyst服务器,但也可以用于其他任何事情。

这里的VBS(战栗):

Set fso = CreateObject("Scripting.FileSystemObject") 
Set WshShell = CreateObject("WScript.Shell") 
WshShell.Run chr(34) & fso.GetParentFolderName(wscript.ScriptFullName) & "\perlshell.bat"& Chr(34), 0 
Set WshShell = Nothing 

而这里的批处理脚本(仅略少不寒而栗):

echo off 
set bindir=%~dp0 
set perlpath=%bindir%perl\bin 
set buildpath=%bindir%\bin 
set PATH=%PATH%;%perlpath%;%buildpath% 
"%perlpath%\wperl.exe" "%bindir%MyPhp\script\myphp_server.pl" -p 35900 
0

这里有一个简单的方法。对于Windows:

Go to the desktop -> right click -> create a shortcut 

让你的目标的样子(即路径perl.exe所在文件),像下面这样 - 我会告诉你什么是我的样子

C:\Strawberry\perl\bin\perl.exe 

在我的案例我有草莓Perl的安装

right click desktop shortcut -> click properties 

在目标输入框,改变它看起来像我的:

C:\Strawberry\perl\bin\perl.exe D:\Developer\CustomTools\login.pl 

其中login.pl从那里你是我的perl脚本

的绝对路径应该创建允许一个Perl脚本的执行的快捷。

万一你可能会感兴趣: 的属性弹出您还可以在Perl脚本在此调用分配给键盘按下按钮并为它指定一个快捷键,以随时发动^ _^

对于我来说,我选择了:

ctrl+alt+i 

代表登录 - 来调用我写的login.pl脚本。 注意默认系统键盘组合

如果您有任何问题,请告诉我!

谢谢你的时间!

相关问题