当前位置:编程学习 > C#/ASP.NET >>

c# Main函数 命令行参数长度限制?

我不知道怎么了?

代码大概是这样的

string args=url+","+dir1+","+dir2+","+dir3

我在程序中调用另一个程序传参如下
System.Diagnostics.Process.Start("updsvr.exe", args);

在本机debug 及 Release 版本都是OK的 

但我把release 版本放到另一台电脑上面调用方面是OK的。可updsvr.exe 里收到的参数被截断了哟,
updsvr.exe 的main函数里我是这样写的

static void Main(string[] args)
{
      if(args!=null&&args.Length>0)
       {
            string[] userArgs = args[0].Split(',');
            string ar = "";
            for (int i = 0; i < userArgs.Length; i++)
            {
                    ar += " * "+userArgs[i];
             }

             File.WriteAllText("update.txt", ar);
       }
}

查看update.txt

没换机器的情况下是正常的打出的值为例如:http://forum.csdn.net/PointForum/abc.html,c:\dddd\aaa\bbb,c:\ddd\ccc\ddd\,d:\ddd\sss\aaa\abc

换了机器打出来的是这样的
http://forum.csdn.net/PointForum/abc.html,c:\ddd


这样就不对了。不知道为什么啊?是不是有长度限制啊。不要告诉我用空格分隔参数
有没有知道这种情况的?
--------------------编程问答-------------------- 您好,我是写128Auto条码那个,能把您的使用详细情况跟我说一下么?或者把您发现的错误跟我说一下可以么?
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,