public void KnownServiceFoundByExe()
        {
            // ReSharper disable once StringLiteralTypo
            var allServiceHostInstances = WindowsServiceController.FindInstancesByExe(@"svchost.exe").ToList();

            Assert.IsTrue(allServiceHostInstances.Count > 0);
            Assert.IsTrue(allServiceHostInstances.All(p => File.Exists(p.ExePath)));
        }
示例#2
0
        private void button2_Click(object sender, EventArgs e)
        {
            //WindowsServiceController c = new WindowsServiceController("119.147.144.86", "administrator", "^%$#@!");
            WindowsServiceController c = new WindowsServiceController("localhost", "administrator", "frank");

            c.Connect();
            var list = c.GetServices("");
        }
示例#3
0
        public void RegisterService()
        {
            var serviceDetails = GetWindowsServiceDetails();
            var dependencies   = GetServiceDependencies();

            WindowsServiceController.RegisterNewService(serviceDetails, dependencies.ToArray());

            // Service registered so pull out not configured flag files.
            RemoveFlagFiles();
        }
        public void CreateAService()
        {
            var s = new WindowsServiceDetails
            {
                ImagePath         = @"C:\Program Files (x86)\Particular Software\ServiceControl\ServiceControl.exe  --serviceName=Test.SC",
                DisplayName       = "Test SC",
                Name              = "Test.SC",
                ServiceAccount    = @"NT Authority\NetworkService",
                ServiceAccountPwd = null
            };

            var existing = InstanceFinder.ServiceControlInstances().FirstOrDefault(p => p.Name == s.Name);

            if (existing != null)
            {
                InstanceFinder.ServiceControlInstances().First(p => p.Name == s.Name).Service.Delete();
            }
            WindowsServiceController.RegisterNewService(s);
            InstanceFinder.ServiceControlInstances().First(p => p.Name == s.Name).Service.Delete();
        }
示例#5
0
        public void RegisterService()
        {
            var serviceDetails = new WindowsServiceDetails
            {
                ServiceAccount    = ServiceAccount,
                ServiceAccountPwd = ServiceAccountPwd,
                DisplayName       = DisplayName,
                Name               = Name,
                ImagePath          = $"\"{Path.Combine(InstallPath, Constants.ServiceControlExe)}\" --serviceName={Name}",
                ServiceDescription = ServiceDescription
            };
            var dependencies = new List <string>();

            if (TransportPackage.Equals("MSMQ", StringComparison.OrdinalIgnoreCase))
            {
                dependencies.Add("MSMQ");
            }
            WindowsServiceController.RegisterNewService(serviceDetails, dependencies.ToArray());

            // Service registered so pull out not configured flag files.
            RemoveFlagFiles();
        }
 public ServiceControlInstance(WindowsServiceController service) : base(service)
 {
 }
示例#7
0
        public static ReadOnlyCollection <ServiceControlInstance> ServiceControlInstances()
        {
            var services = WindowsServiceController.FindInstancesByExe(Constants.ServiceControlExe);

            return(new ReadOnlyCollection <ServiceControlInstance>(services.Where(p => File.Exists(p.ExePath)).Select(p => new ServiceControlInstance(p)).ToList()));
        }
示例#8
0
 public MonitoringInstance(WindowsServiceController service)
 {
     Service   = service;
     AppConfig = new AppConfig(this);
     Reload();
 }
 public ServiceControlInstance(WindowsServiceController service)
 {
     Service = service;
     ReadConfiguration();
 }
 protected ServiceControlBaseService(WindowsServiceController service)
 {
     Service   = service;
     AppConfig = CreateAppConfig();
     Reload();
 }
示例#11
0
 public SystemService(string serviceName, string serviceAssemblyPath)
 {
     _controller = new WindowsServiceController(serviceName);
     _installer  = new WindowsSystemServiceInstaller(serviceName, serviceAssemblyPath);
 }
示例#12
0
 private void btnGetServiceInfo_Click(object sender, EventArgs e)
 {
     WindowsServiceController controller = new WindowsServiceController();
     var info = controller.GetServiceInfo("错误数据监视服务");
 }
示例#13
0
 private void btnGetService_Click(object sender, EventArgs e)
 {
     WindowsServiceController controller = new WindowsServiceController();
     var list = controller.GetAllServices();
 }