[Solved] System.ComponentModel.Win32Exception: Access is denied Error

I am using C# code to start and stop the window serves but I am getting this error.

System.ComponentModel.Win32Exception: Access is denied

My code:

 public void StartService(string serviceName, int timeoutMilliseconds)
        ServiceController service = new ServiceController(serviceName);
            TimeSpan timeout = TimeSpan.FromMilliseconds(timeoutMilliseconds);

            service.WaitForStatus(ServiceControllerStatus.Running, timeout);
            lblMessage.Text = "Service Started.";
        catch (Exception ex)
            //lblMessage.Text = "Error in Service Starting.";
            lblMessage.Text = ex.ToString();
Enquirer: Mahesh


Solution #1:

Make sure your application pool identity account on your server has permissions to start that service. It works on your ASP.NET Development Server because it runs under your user account (admin)
In a default IIS configuration, this account is Network service or ApplicationPoolIdentity (depending on IIS version) and usually cannot manage services.

So, change the pool account in IIS Manager (Application Pools/NameOfYourYourPool/Advanced Settings).
You can use a built-in account or use one of your domain.


Respondent: Cybermaxs

Solution #2:

Run your VS in administrator mode and load your project.Open developer VS cmd in administrator mode.Give proper username with computer domain name like domainnameusername.Hope it will work.

Respondent: priyesh jaiswal

The answers/resolutions are collected from stackoverflow, are licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0 .

Most Popular

To Top
India and Pakistan’s steroid-soaked rhetoric over Kashmir will come back to haunt them both clenbuterol australia bossier man pleads guilty for leadership role in anabolic steriod distribution conspiracy