Состояние службы C # на удаленной машине

Я опытный программист, поэтому я понятия не имею, что я делаю:)

На серьезном замечании; нет, я ни в коем случае не эксперт. Но у меня есть проблема, и я не знаю, как ее исправить. Хорошо то, что я (думаю, что) знаю, в чем проблема, и надеюсь, что кто-то здесь может помочь.

Вот краткое изложение проблемы. Я создаю форму на C #, которая будет выполнять за меня некоторые задачи по администрированию сервера и базы данных. У меня есть кнопка, которая при нажатии должна возвращать статус службы «x» на сервере «y». Статус выводится на экран в текстовое поле.

Вот мой код:

     private void button2_Click(object sender, EventArgs e)
    {
        string fs = "Service X Status = ";
        string mr = "Service A Status = ";
        string qp = "Service B Status = ";
        string sp = "Spooler Service Status = ";
        ServiceController fssc = new ServiceController("xService", "yServer");
        ServiceController mrsc = new ServiceController("aService", "yServer");
        ServiceController qpsc = new ServiceController("bService", "yServer");
        ServiceController spsc = new ServiceController("Spooler", "yServer");

        try
        {
            txtGtwySts.AppendText(sp + spsc.Status.ToString());
            txtGtwySts.AppendText(Environment.NewLine);
            txtGtwySts.AppendText(fs + fssc.Status.ToString());
            txtGtwySts.AppendText(Environment.NewLine);
            txtGtwySts.AppendText(mr + mrsc.Status.ToString());
            txtGtwySts.AppendText(Environment.NewLine);
            txtGtwySts.AppendText(qp + qpsc.Status.ToString());
        }
        catch (Exception crap)
        {
            string msg = "";
            int i;
            for (i = 0; i < crap.Message.Count(); i++)
            {
                msg += "Error # " + i + " Message: " + crap.Message + "\n";

            }
            MessageBox.Show(msg);
            MessageBox.Show(i.ToString());
        }
    }

Я получаю исключения, в основном говорящие: Невозможно открыть «Службу» на «Сервере». Поскольку это удаленный сервер, я предполагаю, что это проблема с учетными данными / безопасностью. У меня, однако, нет проблем со службой Spooler.

У меня вопрос ... Как я могу передать идентификатор пользователя и пароль этому серверу, чтобы он прошел аутентификацию или запускался, чтобы я мог проверить статус этих служб, вот в чем проблема. Если кто-то не считает, что это проблема, то сообщите мне, где я ошибся :)

5
задан Jason 28 July 2011 в 21:41
поделиться