最近小弟就為了在win32下面要把perl變成像在unxi 環境下可用crontab方式來執行
我用的方法如下:
1.先去http://www.activestate.com下載activeperl最新版,把他裝在你的windows(我是win xp pro)的c:\perl目錄下
2.在去這裡http://www.roth.net/perl/Daemon/下載Win32:Daemon(注意如果你的activeperl是build6XX的請下載daemon_5006.Zip)
3.下載完後用ppm方式安裝...這裡安裝會有問題,但是不要理他,裝完後把daemon.pm檔案copy到C:\Perl\lib
我這有各範例程式,這也是改自Win32::Daemon的範例程式,注意網站的範例和下載的檔案範例都有錯,可能作者很久沒更新了
下面這程式可以每5秒重0~9印出一個數字
use Win32::Daemon;
for ($i=0;$i<10;$i++)
{
print $i;
Win32::Daemon::StartService();
while( SERVICE_STOPPED != ( my $State = Win32::Daemon::State() ) )
{
if( SERVICE_START_PENDING == $State )
{
Win32::Daemon::State( SERVICE_RUNNING );
}
elsif( SERVICE_STOP_PENDING == $State )
{
Win32::Daemon::State( SERVICE_STOPPED );
}
Win32::Sleep( 5000 );
}
Win32::Sleep( 5000 );
Win32::Daemon::StopService();
}