如何避免错误“无法在您的计算机上找到服务。拒绝访问” [英] How to avoid error "cannot find service on your computer.access denied"

查看:84
本文介绍了如何避免错误“无法在您的计算机上找到服务。拒绝访问”的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试从按钮单击的C#中的Windows应用程序界面启动Windows服务。它在我的机器上工作正常



但在另一台服务器上我收到错误无法在您的计算机上找到服务.System.ComponentModel.Win32Exception:Access被拒绝 。



我尝试过:



代码如下:

I am trying to start a windows service from a windows application interface in C# on button click. It is working fine on my machine

But on another server I am getting the error "cannot find service on your computer. System.ComponentModel.Win32Exception: Access is denied".

What I have tried:

Code is as below:

#region StartService
    //To start Windows Service exe created and installed in Services.msc
    public bool StartService(string serviceName)
    {

        ServiceController sc = new ServiceController(serviceName);
        Archive AC = new Archive();
        //String ErrorLogPath = System.Configuration.ConfigurationSettings.AppSettings["ErrorLogPath"].ToString();
        string ErrorLogPath = ConfigurationSettings.AppSettings["ErrorLogPath"].ToString();
        string ErrorFilename = ErrorLogPath + "WPS_Archive_ErrorFile" + ".txt";

        try
        {
            if ((sc.Status.Equals(ServiceControllerStatus.Running)))
            {
                // Check whether the service if the current status is Running.

                return true;

            }
            else
            {

                sc.Start();
                return true;

            }


        }
        catch (Exception ex)
        {
            AC.WriteTextFile(ErrorFilename, " Service not started " + Environment.NewLine + ex.ToString());

            //}
            MessageBox.Show("Service not started, " + ex.Message);
        }
        return false;
    }
    #endregion

推荐答案

您需要管理员权限才能安装服务。这意味着用于安装服务的应用程序必须以管理员身份运行。
You need admin permissions to install a service. This means the app being used to install the service must run as administrator.


运行应用程序的用户帐户无权启动服务。您必须以具有该权限的用户身份运行该应用程序。即:以管理员身份运行(可能是您系统中的情况),或者授予特定用户启动服务的权限。
The user account running your application does not have the permission to start services. You have to run the application as a user who does have the permission. That is: Run it as administrator (probably the case on your system) or give a specific user the permission to start services.


这篇关于如何避免错误“无法在您的计算机上找到服务。拒绝访问”的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆