本文介绍了ServiceController.start()和ServiceController.stop()被抛出异常?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

以下code抛出异常。我不明白我在code做什么错误。有人可以帮我弄清楚吧。我认为这是一些安全配股。如果是这样,我怎么可以给安全权限的任何用户或应用程序以编程方式访问这个窗口服务?

The following code is throwing Exception. I don't get what mistake I am making in the code. Can somebody help me figure out please. I think it is of some security rights issue. If so, how can I give the security rights to any user or application to access this windows service programmatically?

Dim sc As New ServiceController
sc.ServiceName = "DataLoad"
If sc.Status = ServiceControllerStatus.Stopped Then
    sc.Start()
Else
    sc.Stop()
End If

例外

System.InvalidOperationException: Cannot open DataLoad service on computer '.'. --->
System.ComponentModel.Win32Exception: Access is denied --- End of inner exception stack trace --- at
System.ServiceProcess.ServiceController.GetServiceHandle(Int32 desiredAccess) at
System.ServiceProcess.ServiceController.Start(String[] args) at
System.ServiceProcess.ServiceController.Start() at
WEBSITE.DataLoad.Submit1_ServerClick(Object sender, EventArgs e) in C:\Inetpub\wwwroot\WEBSITE\a\DataLoad.aspx.vb:line 46

感谢您!

推荐答案

您可以使用 SUBINACL 工具为

SUBINACL /SERVICE \\MachineName\ServiceName /GRANT=[DomainName\]UserName[=Access]

要成为specfic为您的情况:

To be specfic for your case:

subinacl /service DataLoad /GRANT=YOURDOMAIN\[User in appdomain for WEBSITE]=TO

其中,表示结果
   T:启动服务结果
   ○:停止服务

Where TO means
T : Start Service
O : Stop Service

有关[交通]所有的选项是:

all options for [Access] are:

F:完全控制结果
   R:一般性读结果
   W:一般写结果
   X:通用的execute结果
   L:读取控制结果
   问:查询服务配置结果
   小号:查询服务状态结果
   E:枚举从属服务。 -
   C:服务更改配置结果
   T:启动服务结果
   ○:停止服务结果
   p:暂停/继续服务结果
   我:讯问服务结果
   U:服务用户定义的控制命令

F : Full Control
R : Generic Read
W : Generic Write
X : Generic eXecute
L : Read controL
Q : Query Service Configuration
S : Query Service Status
E : Enumerate Dependent Services
C : Service Change Configuration
T : Start Service
O : Stop Service
P : Pause/Continue Service
I : Interrogate Service
U : Service User-Defined Control Commands

请参阅

这篇关于ServiceController.start()和ServiceController.stop()被抛出异常?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-24 13:20