由于args太长,无法调用窗口服务?

时间:2013-08-14 07:37:01

标签: c# asp.net windows-services

我有一个Windows服务。我用下面的方法称呼它:

public static void StartService(string serviceName, string[] args)
{
     ServiceController service = new ServiceController(serviceName);
     service.Start(args);
}

当我的args [0] =“一个长字符串,组合了很多文件名”我得到错误无法启动服务:异常详细信息:System.ComponentModel.Win32Exception:存根收到错误数据。

首先,我认为拒绝接入,但事实并非如此。如果我更改args [0] =“短字符串,1个文件夹路径”,则服务运行成功。任何人都能解释一下吗?

1 个答案:

答案 0 :(得分:0)

命令行可以包含的字符数有限制。

对于普通命令行,它是8192个字符。对于CreateProcess,限制为32Kb。

参考文献: