问题标签 [servicecontroller]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
873 浏览

asp.net - 从 IIS 控制远程服务器上的服务

请注意:在下面我描述的每个步骤中,我都以相同的域用户帐户登录。

我有一个 Web 应用程序可以控制远程机器上的服务(通过ServiceController)。当我远程连接到网站并尝试控制服务时,我收到 InvalidOperationException: Access is denied。

我知道它可以工作,因为当我从 Web 服务器连接到网站时(远程桌面进入,以我的域用户身份登录,然后打开网页),它按预期工作。

我已将 IIS 和 ASP.NET 配置为需要 Windows 身份验证和模拟。当此操作失败时,我会记录当前线程的主体,并且无论我是远程连接还是从服务器本身连接,我都会看到该线程以我的身份运行。

我曾尝试强制 IIS 同时使用 Kerberos 身份验证、NTLM 身份验证和两者;我的委托人将其 AuthenticationType 报告为“协商”还是“NTLM”都没有关系。当我远程连接(从我的本地机器)时,它们都不起作用

另一个奇怪的事情是,如果我从本地机器调试/连接到远程服务器,它每次都能正常工作!但我不是在调试,每次都失败!

这里到底发生了什么?

0 投票
1 回答
1380 浏览

.net - ServiceController 所需权限

我正在使用 ServiceController 在远程机器上启动服务。当我想查询该机器上的服务时,出现以下异常:

无法在计算机“机器名”上打开服务控制管理器。此操作可能需要其他权限。

查询/启动/停止远程机器上的服务需要什么权限?

0 投票
1 回答
411 浏览

c# - 检查未注册/缺失的服务

如何使用 ServiceController 告诉我服务是否已注册?在下面的代码片段中,对空 DisplayName 的检查会导致 System.InvalidOperationException。

有没有一种我完全想念的直接方法?

0 投票
3 回答
7779 浏览

c++ - 从 C++ 向服务发送命令

如何从 C++ 向 Windows 服务发送命令?等效的 .NET 代码是:

0 投票
1 回答
811 浏览

windows - 无法使用“servicecontroller”安装窗口服务

我想在远程服务上安装 Windows 服务。在以下博客中,您说过要使用“服务控制器”

使用 MSBuild 和 Microsoft.Sdc.Tasks 安装 win32 服务

但是,在“MSBuild 社区任务”的 .chm 文件中的“ServiceController 成员”中,没有成员可以接受要安装的服务的路径。'c:\myservice.exe'

请建议我如何实现远程安装服务的任务。

谢谢,普拉萨德 M。

0 投票
2 回答
8048 浏览

vb.net - 查看远程机器上运行的服务状态

条件是 - 我没有管理员权限 - 我想查看远程机器(服务器)中的服务状态

我使用以下代码(带有框架 2.0 的 vb.net)来查看状态

运行代码时,InvalidOperationException提出并发现我需要在服务器中拥有管理员权限。

我可以在没有远程机器管理员权限的情况下查找服务状态吗?

0 投票
2 回答
8276 浏览

.net - 如何使用.net 获取 Windows 服务的物理路径?

我必须在 .Net Admin 应用程序中获取 Windows 服务的绝对路径。我正在使用 .Net 的 ServiceController,如下所示。

但是我在这里看不到任何属性来获取服务的 .exe 的绝对路径。反正有没有以编程方式得到这个。

0 投票
1 回答
956 浏览

c# - ServiceController.Stop() 似乎没有停止任何事情

我的开发盒是 Windows 7 (x64) 机器。我有一些代码(C#,.net 2.0),在某些情况下,检查服务是否正在运行,然后停止它。

现在,我可以验证 MyService 确实已安装并正在运行。我可以告诉你我在调试时以管理员身份运行 Visual Studio 2008。我还可以验证,在几个If语句之后,我结束了编程的 .Stop() 和 .WaitForStatus() 部分。我确实知道,如果跳过 .Stop() 调用,服务本身就会继续运行(在服务中查看它,尽管我觉得也许我应该为此找一个更好的工具。我确信有一些 sysinternals 工具可能会给我更多信息)。当我越过 .WaitForStatus() 调用时,我基本上都在等待停止状态。. . 永远。好吧,我昨天(两次)让它在那里坐了超过 15 分钟,但没有任何反应。我们永远不会进入下一行代码。感觉就像鲍伊的太空怪人(你知道我在说的部分)。

MyService 有很多你不知道的事情。你不会明白的事情。你做不到的事情。. . 让我清楚地说明这一点。没有服务依赖于 MyService 并且 MyService 不依赖于其他服务。 附录MyOtherService 和 SonOfMyService 在代码中的这一点上似乎都表现正确。所有这些服务都具有相同的特征(它们是我们自己在秘密实验室中孵化的服务,没有依赖关系)。MyService 安装是否可能有问题?

我确实知道,如果此时我停止调试,MyService 仍被列为在服务中运行(即使在刷新后)。如果我尝试重新启动它(或再次运行我的应用程序并到达这一点),我会收到一条关于它无法接受控制消息的消息。之后,服务显示为已停止,我可以正常启动它。

为什么服务没有停止?这是win 7的怪癖吗?我未能理解 ServiceController 或 Win Services?

0 投票
1 回答
545 浏览

c# - 实例化 ServiceController 有时会花费太多时间

我正在使用远程/本地机器名称和服务名称创建 ServiceController 的实例。当我打字时。像 stackoverflow.com 作为机器名,构造函数会阻塞很长时间并返回异常。

例子:

我怎样才能在这里设置一种超时来取消这个过程?

0 投票
7 回答
58910 浏览

batch-file - 在服务停止完成之前暂停批处理文件?

我正在使用批处理文件来停止 Windows 服务。我正在使用该sc命令,但鉴于以下问题,我对其他想法持开放态度。问题是批处理文件在服务停止时继续进行参数stop似乎sc只是请求停止——它不等待停止)。

如何修改批处理文件以在停止完成之前不继续