title: ProcessStartInfo and Process in PowerShell - Authentication Error
body: <p>I have code that uses ProcessStartInfo and Process to invoke another script, and to return the output of that script.</p>
  
  <p>Unfortunately, I am getting errors, and I am unsure how to troubleshoot them.</p>
  
  <pre><code>#script1.ps1
  
  $abc = $args
  $startInfo = $NULL
  $process = $NULL
  $standardOut = $NULL
  
  &lt;#Previously created password file in C:\Script\cred.txt, read-host -assecurestring | convertfrom-securestring | out-file C:\Script\cred.txt#&gt;
  $password = get-content C:\Script\cred.txt | convertto-securestring
  
  
  $startInfo = New-Object System.Diagnostics.ProcessStartInfo
  $startInfo.FileName = "powershell.exe"
  $startInfo.Arguments = "C:\script\script2.ps1", $abc
  
  $startInfo.RedirectStandardOutput = $true
  $startInfo.UseShellExecute = $false
  $startInfo.CreateNoWindow = $false
  $startInfo.Username = "DOMAIN\Username"
  $startInfo.Password = $password
  
  $process = New-Object System.Diagnostics.Process
  $process.StartInfo = $startInfo
  $process.Start() | Out-Null
  $standardOut = $process.StandardOutput.ReadToEnd()
  $process.WaitForExit()
  
  # $standardOut should contain the results of "C:\script\script2.ps1"
  $standardOut
  </code></pre>
  
  <p>The errors I get are:</p>
  
  <pre><code>Exception calling "Start" with "0" argument(s): "Logon failure: unknown user name or bad password"
  At C:\script\script1.ps1:46 char:15
  + $process.Start &lt;&lt;&lt;&lt; () | Out-Null
      + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
      + FullyQualifiedErrorId : DotNetMethodException
  
  You cannot call a method on a null-valued expression.
  At C:\script\script1.ps1:47 char:49
  + $standardOut = $process.StandardOutput.ReadToEnd &lt;&lt;&lt;&lt; ()
      + CategoryInfo          : InvalidOperation: (ReadToEnd:String) [], RuntimeException
      + FullyQualifiedErrorId : InvokeMethodOnNull
  
  Exception calling "WaitForExit" with "0" argument(s): "No process is associated with this object."
  At C:\script\script1.ps1:48 char:21
  + $process.WaitForExit &lt;&lt;&lt;&lt; ()
      + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
      + FullyQualifiedErrorId : DotNetMethodException
  </code></pre>
  
  <p>How can I fix this problem?</p>