Служба C # работает в Windows 8, но не работает в Windows 7 - PullRequest
0 голосов
/ 30 августа 2018

У меня проблема с сервисом C #.

Я написал службу звуковой сигнализации для программного обеспечения SCADA. Я создал установочный файл для этого сервиса. Я установил этот сервис как на ПК с Windows 8, так и на ПК с Windows 7. Служба отлично работает в Windows 8, но не в Windows 7. Я не получаю никаких ошибок при загрузке. Я создал консольное приложение, используя те же коды на ПК с установленной Windows 7. Он отлично работает, когда я запускаю консольное приложение. У кого-нибудь есть идеи? Возможно, я чего-то упускаю. Вы можете найти коды ниже.

using System;
using System.ServiceProcess;
using System.Media;
using System.IO;
using System.Timers;

namespace MS_audible_alarm
{
    public partial class Service1 : ServiceBase
    {
        public static Timer timer;
        public static int counter;
        public Service1()
        {
            InitializeComponent();
        }

        protected override void OnStart(string[] args)
        {
            timer = new Timer();
            timer.Interval = 5000;
            timer.Elapsed += new ElapsedEventHandler(audible_alarm);
            timer.Start();
            counter = 0;
        }

        protected override void OnStop()
        {
            timer.Close();
        }

        private static void audible_alarm(Object source, ElapsedEventArgs e)
        {
            SoundPlayer sp = new SoundPlayer(@"C:\sc\apl\YNY\PICT\DataBase\Alarm_Sesi.wav");

            string fileAddress = @"C:\sc\apl\YNY\PICT\DataBase\audible_alarm.txt";

            FileStream fs = new FileStream(fileAddress, FileMode.Open, FileAccess.Read);

            StreamReader sr = new StreamReader(fs);

            string alarmDurumu = sr.ReadLine();

            if (alarmDurumu == "Alarm" && counter == 0)
            {
                sp.Play();
                counter = 1;
            }
            else if (alarmDurumu == "Normal" && counter == 1)
            {
                sp.Stop();
                counter = 0;
            }

            sr.Close();
            fs.Close();
        }
    }
}

Спасибо за помощь.

С наилучшими пожеланиями.

1 Ответ

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...