what kind of app is "project"? is it a managed program too? the following works form me1. project.cs:using System;class TestProject
{
 public static void Main(string[] args)
 {
foreach (string s in args)
Console.WriteLine(s); Console.ReadLine();
 }
}2. testproject.csusing System;
using System.Diagnostics;class TestProject2
{
  public static void Main()
  {
string run_name="project.exe";
string mes="1111111111111222222222222223333333333333333333334444444444444445555555555aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaxxxx1111111111111222222222222223333333333333333333334444444444444445555555555aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaayyyy1111111111111222222222222223333333333333333333334444444444444445555555555aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaazzzz";Process process=new Process();
process.EnableRaisingEvents=true;
process.StartInfo.FileName=run_name;
process.StartInfo.Arguments=mes;
process.Start();  }
}

解决方案 »

  1.   

    you are right, it seems the limit is 32752, but why are you passing such a long parameter?
      

  2.   

    谢谢!
    project.exe是一个可接受两个参数可执行程序。有Email,我发给你!
      

  3.   

    第一个参数前面播放一段*.wav声音的文件,第二个参数是错误内容。
    若在快捷方式 Project.exe的属性中目标输入:
    D:\wxg\C#\zdfb\zdfb\bin\Debug\Project.exe my.wav  2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
    可以运行,
    但两个参数一后面的放在mes中就不行
    mes="my.wav  aa22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222"
      

  4.   

    try the following and let me know what's your output:
    1. project.cs:using System;class TestProject
    {
     public static void Main(string[] args)
     {
    Console.WriteLine(args.Length);
    foreach (string s in args)
    {
    Console.WriteLine("{0}\nsize:{1}\n\n", s, s.Length);
    //Console.ReadLine();
    }
     }
    }2. testproject.cs:
    using System;
    using System.Diagnostics;
    using System.Text;class TestProject2
    {
      public static void Main()
      {
    string run_name="project.exe";string mes="my.wav  aa22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222";Console.WriteLine(mes.Length);Process process=new Process();process.StartInfo.FileName=run_name;
    process.StartInfo.UseShellExecute = false;
    process.StartInfo.Arguments=mes;
    process.Start();  }
    }3. here is the output on my machine:E:\labs\csharp>
    2
    my.wav
    size:6aa22222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
    size:205
      

  5.   

    project.exe 是一个windows应用程序,用来播放*.awv类型的提示声音和显示内容的
    一个参数是传进的播放wav文件,第二个参数是提示的内容。
      

  6.   

    老大们,灵活一点,编个bat文件你愿意写多少参数就写里面,然后执行它
      

  7.   

    >copy con dell.bat
    del %1
      

  8.   

    谢谢saucer(思归)!
    我找到原因了,是传进的参数有空格分开,当作了后面的第三第四个参数。