Wie ein Programm als ein Dienst zu installieren, dass Auto beim Booten starten?
Frage
Ich brauche einen PHP-Skript als Dienst in Windows ausgeführt werden.
Gibt es eine einfache Möglichkeit, dies zu tun?
Lösung
Sie müssen sc.exe verwenden. Besuchen Sie http://support.microsoft.com/kb/251192 für die Details. Dann einfach php.exe yourscriptname als Befehlszeile für den Dienst ausführen
Andere Tipps
Wenn Sie nichts dagegen haben die Hände schmutzig mit ein wenig csharp bekommen, ist hier eine URL mit einer Shell-Anwendung, die ein Windows-Dienst ist. Es setzt einen Timer, der alle so viele Sekunden eine Batch-Datei (dh Ihr Skript) ausführt. Würde nur funktionieren, wenn Ihr Skript eine Aufgabe dann verlässt der Fall ist. (Kennzeichnung als Community Wiki, da dies nicht mein Code. Ich bin Kopieren aller Code hier im Falle der verlinkten Seite in Zukunft tot geht.)
http: //www.akchauhan. com / create-windows-service-to-Zeitplan-php-Script-Ausführung /
Hier ist der Code in dem verlinkten Artikel erwähnt wird.
C # für den Service:
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");
}
}
}
Die erforderliche Batch-Datei:
@echo off
cd\
set path=C:\xampp\php;
cd "C:\xampp\htdocs"
php import.php
exit
Dies ist möglicherweise eine Frage für https://superuser.com/ oder http://support.microsoft.com/kb/251192
Es ist schon eine Weile her, seit ich habe mit Windows gearbeitet, aber Sie könnten eine Batch-Datei zum Einrichten der Lage sein, als Dienst ausgeführt werden.