كيفية تثبيت برنامج كخدمة تبدأ تلقائيًا عند التشغيل؟

StackOverflow https://stackoverflow.com/questions/2146204

  •  23-09-2019
  •  | 
  •  

سؤال

أحتاج إلى برنامج نصي PHP لتشغيله كخدمة في Windows.

هل هناك طريقة سهلة للقيام بذلك؟

هل كانت مفيدة؟

المحلول

يجب عليك استخدام sc.exe. زيارة http://support.microsoft.com/kb/251192 للحصول على التفاصيل. ثم استخدم php.exe yourscriptname كخط أوامر للخدمة لتنفيذها

نصائح أخرى

إذا كنت لا تمانع في الحصول على يديك قذرة مع القليل من csharp ، فإليك عنوان URL مع تطبيق Shell الذي يعد خدمة Windows. يقوم بتعيين مؤقت ينفذ ملف دفعي (أي ، البرنامج النصي الخاص بك) في كل ثوانٍ عديدة. لن يعمل إلا إذا قام البرنامج النصي بمهمة ثم يخرج. (وضع علامة على ويكي المجتمع لأن هذا ليس رمزًا الخاص بي. أنا أقوم بنسخ كل الرموز هنا في حالة موت الموقع المرتبط في المستقبل.)

http://www.akchauhan.com/create-windows-service-to-schedule-php-script-execution/

إليك الرمز المذكور في المقالة المرتبطة.

ج# للخدمة:

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");
        }  
    }
}

ملف الدُفعة المطلوب:

@echo off  
cd\  
set path=C:\xampp\php;  
cd "C:\xampp\htdocs"  
php import.php  
exit  

ربما هذا سؤال ل https://superuser.com/ أو https://serverfault.com/

قد يقدم هذا بعض المساعدة حول الخدمةhttp://support.microsoft.com/kb/251192

لقد مر بعض الوقت منذ أن عملت مع Windows ، ولكن قد تتمكن من إعداد ملف دفعي لتشغيله كخدمة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top