Cómo instalar un programa como un servicio que se inicia al arranque automático?
Pregunta
necesito un script PHP para funcionar como un servicio de Windows.
¿Hay una manera fácil de hacer esto?
Solución
Debe utilizar sc.exe. Visita http://support.microsoft.com/kb/251192 para los detalles. Entonces sólo tiene que utilizar yourscriptname php.exe como una línea de comandos para ejecutar el servicio a
Otros consejos
Si no le importa ensuciarse las manos con un poco de CSharp, aquí está una URL con una aplicación de shell que es un servicio de Windows. Se establece un temporizador que se ejecuta un archivo por lotes (es decir, la secuencia de comandos) cada tantos segundos. sólo funcionaría si su script hace una tarea luego se cierra. (Marcado como wiki de la comunidad ya que este no es mi código. Estoy copiar todo el código de aquí en caso de que el sitio enlazado se agota en el futuro.)
http: //www.akchauhan. com / Create-windows-servicio-a-agenda-php-script-ejecución /
Aquí está el código mencionado en el artículo enlazado.
C # para el servicio:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using System.Timers;
namespace MyNewService
{
public partial class MyNewService : ServiceBase
{
private Timer syncTimer = null;
public MyNewService()
{
InitializeComponent();
}
protected override void OnStart(string[] args)
{
syncTimer = new Timer();
this.syncTimer.Interval = 180000;
this.syncTimer.Elapsed += new System.Timers.ElapsedEventHandler(this.syncTimer_Tick);
syncTimer.Enabled = true;
}
protected override void OnStop()
{
syncTimer.Enabled = false;
}
private void syncTimer_Tick(object sender, EventArgs e)
{
System.Diagnostics.Process.Start(@"C:\xampp\htdocs\task.bat");
}
}
}
El archivo por lotes requisito:
@echo off
cd\
set path=C:\xampp\php;
cd "C:\xampp\htdocs"
php import.php
exit
Esta es posiblemente una pregunta para https://superuser.com/ o https://serverfault.com/
Esto podría ofrecer algo de ayuda sobre el servicio http://support.microsoft.com/kb/251192
Ha sido un tiempo desde que he trabajado con ventanas, pero que podría ser capaz de configurar un archivo por lotes para ejecutarse como un servicio.