我写了一个小程序,想让它用另一个用户身份启动另一个程序,类似与runas命令,代码如下:
SecureString secureStr =new SecureString();
secureStr.AppendChar('*');
secureStr.AppendChar('*');
Process process = new Process();
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.CreateNoWindow = true;
process.StartInfo.FileName = folder + "****.exe";
process.StartInfo.Domain = "*****";
process.StartInfo.UserName = "****";
process.StartInfo.Password = secureStr;
process.StartInfo.UseShellExecute = false;
process.Start();
但还是启动不了程序,难道这里process.StartInfo.UserName和process.StartInfo.Password
跟windows中runas命令的功能不一样么,我应该怎么实现呢

解决方案 »

  1.   

    process.StartInfo.CreateNoWindow = true; 你确定你的程序没有运行吗?你要运行的程序是不会显示出来的。
      

  2.   

    好像找到原因了,报的异常是句柄错误,我做的是winform程序,把“process.StartInfo.RedirectStandardOutput = true;”这句去掉就可以了,如果是控制台程序加这句好像就没问题