比较来自世界各地的卖家的域名和 IT 服务价格

新服务 Windows 安装,无法启动: "系统错误 2 ... 系统找不到指定的文件。"

我成功安装了其他几个用户 .Net windows services. 我最近写的新人与他人非常相似,虽然它被安装而没有错误 - 当它开始使用服务控制器时,它无法以错误对话框开始: System error 2 ... system cannot find the file specified.

经过很长一段时间和恐怖,我唯一可以提出的东西,这与这项服务有很大的不同, - 这是路径和可执行文件的名称至少在于 10 符号比我的任何其他服务长。 随着路径的减少和名称 .exe 并重新安装服务工作正常:没有错误! 我只能假设我以前的方式,服务或姓名 .exe 太久了。

此外,我将需要提及我使用一些借来的代码 "service driver", 内置我的。 exe, 用于安装处理/通过调用删除服务控制器上的服务 win API. 这可能会限制隐藏在此服务驱动程序模块中的字符。

我找不到与之相关的文件 windows, 要确认是否存在我超出的路径或服务名称的系统字符限制。 我允许时间挖掘服务驱动程序,我会看到它是否存在问题。 与此同时,我欢迎任何见解。
已邀请:

知食

赞同来自:

我尝试了一些测试服务,发现我的问题不是由任何财产的长度引起的。 /“系统错误 2 ... system 找不到指定的文件“/. 我的内置服务安装程序使用三个属性: ServiceName, ServiceTitle, ServiceDescription. 安装时,我发现它记录了注册表中的完整服务路径,但它不仅仅拍摄实际名称 exe /assembly/, 它使用了一个属性 ServiceName 建立一种方式! 我的问题是那个名字 ServiceName 和 assembly 没有重合,所以找不到文件。 我使用了注册表请求 powershell, 打开路径,最后注意到那里的差异。 当我第一次注意到这个问题时,我没有注意到当我从它的姓名中删除服务的名称时 – 我刚用了这个名字 assembly 没有 .exe, 它实际上纠正了他,而且不仅仅是减少。

三叔

赞同来自:

我对我收到了相同错误的服务有类似的问题。

我去了:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\YourServiceName\ImagePath

我的 'ImagePath' 安装在一个名为的虚拟磁盘上 "W:\", 它存在于 "C:\".

我将此路径替换为磁盘上文件的实际位置 C:\, 然后服务已成功启动

君笑尘

赞同来自:

在我的情况下,我打开了球队 Promt, 性交k。 exe 并从那里安装它。 因此,我没有进入完整的方式。 一旦我使用完整的方式,它就工作了。

因此,您需要以完整的方式设置服务,或添加文件路径 exe 到 PATH 在系统变量中。


SC CREATE "Service-Name" binpath="D:\full-path-to-service\service.exe"


或添加
D:\full-path-to-service\

在 PATH 可变和使用


SC CREATE "Service-Name" binpath="service.exe"



此外,确保方式是正确的。 因为一旦我用错误的方式安装它,它被成功安装了,但是当我试图运行它时,我得到了同样的错误。

窦买办

赞同来自:

我的问题是在团队的帮助下创建服务时 Powershell 跳棋添加到注册表:
<c:\path\to\service\service.exe>

.


Replacing &lt; and &gt; with " fixed it for me.


</c:\path\to\service\service.exe>

石油百科

赞同来自:

我有同样的问题,没有什么解决这个错误,然后我决定了她

不是

使用方式
c:\Windows\System32

要存储可执行服务文件!

涵秋

赞同来自:

在我的情况下,问题是由启动过程中的错误引起的。 DriverEntry /在我的情况下,这是一个司机 kernel-mode/ 返回一个糟糕的状态值。 我认为这种情况适用于用户制度。

要回复问题请先登录注册