Как я могу отладить службу Windows без Visual Studio?(на машине клиента) - PullRequest
0 голосов
/ 23 сентября 2011

У меня есть служба Windows .net, которую я разработал, и я знаком с тем, как отлаживать ее с помощью Visual Studio и присоединения отладчика к процессу.У меня также есть служба записи в файлы журналов на протяжении всей обработки, чтобы помочь в отладке.Проблема, с которой я сталкиваюсь, заключается в том, что когда некоторые пользователи устанавливают мой сервис и пытаются запустить его, он выдает общую ошибку, которая говорит о том, что он не может запуститься.У меня есть обширный вход в процессы запуска в сервисе, но ни один не записывается, хотя у меня есть один прежде всего.Вот соответствующий код службы:

static void Main(string[] args) 
    {
            ServiceBase.Run(new OSAEService());
    }

public OSAEService()
    {
        AddToLog("Service Starting");
        if (!EventLog.SourceExists("OSAE"))
            EventLog.CreateEventSource("OSAE", "Application");

        this.ServiceName = "OSAE";
        this.EventLog.Source = "OSAE";
        this.EventLog.Log = "Application";

        // These Flags set whether or not to handle that specific
        //  type of event. Set to true if you need it, false otherwise.
        this.CanHandlePowerEvent = true;
        this.CanHandleSessionChangeEvent = true;
        this.CanPauseAndContinue = true;
        this.CanShutdown = true;
        this.CanStop = true;
    }

protected override void OnStart(string[] args)
    {
        AddToLog("OnStart");
        //All the rest of my start up processes
    }

public void AddToLog(string audit)
    {
           lock (logLocker)
           {
               string filePath = _apiPath + "/Logs/" + _parentProcess + ".log";
               System.IO.FileInfo file = new System.IO.FileInfo(filePath);
               file.Directory.Create();
               StreamWriter sw = File.AppendText(filePath);
               sw.WriteLine(System.DateTime.Now.ToString("MM/dd/yyyy hh:mm:ss.fff tt") + " - " + audit);
               sw.Close();

           }

    }

Не записываются ни журналы «Запуск службы», ни «Запуск», и я уверен, что это не проблема с разрешениями для каталога журналов.

Мой вопрос такой.Есть ли другие способы выяснить, что заставляет мой сервис не запускаться?

1 Ответ

0 голосов
/ 23 сентября 2011

Пожалуйста, отметьте Удаленная отладка Microsoft Visual Studio 2010 r, чтобы помочь вам отладить эту службу.

...