title: Windows Service to run batch file, InstallUtil /i prevents service from starting?
body: <p>I have a simple Windows service that calls a batch file to setup some processes on startup. Most of the batch file is fired correctly but InstallUtil /i fails to run as the Windows Service fails to start. (InstallUtil /u beforehand works though which I find strange) Here's some code for the windows service and the batch file:</p>
  
  <pre><code>namespace RecipopStartupService
  {
  public partial class Service1 : ServiceBase
  {
      public Service1()
      {
          InitializeComponent();
      }
  
      protected override void OnStart(string[] args)
      {
          ProcessBatchFile();
      }
  
  
      public void ProcessBatchFile()
      {
          Process process = new Process();
  
  
          process.StartInfo.WorkingDirectory = "C:\\Webs\\AWS\\";
          process.StartInfo.FileName = "C:\\Webs\\AWS\\setup.bat";
          process.StartInfo.Arguments = "";
          process.StartInfo.Verb = "runas";
          process.StartInfo.UseShellExecute = false;
          process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
  
          process.StartInfo.CreateNoWindow = true;
  
          process.StartInfo.RedirectStandardOutput = false;
  
          process.Start();
  
  
          System.IO.StreamReader myOutput = process.StandardOutput;
          process.WaitForExit(200000);
          if (process.HasExited)
          {
              string results = myOutput.ReadToEnd();
          }
  
  
      }
  
  
      protected override void OnStop()
      {
      }
  }
  }
  </code></pre>
  
  <p>The batch file:</p>
  
  <pre><code>"C:\Program Files (x86)\Subversion\bin\SVN.exe" cleanup "C:\Webs\AWS\webs"
  "C:\Program Files (x86)\Subversion\bin\SVN.exe" cleanup "C:\Webs\AWS\apps"
  
  "C:\Program Files (x86)\Subversion\bin\SVN.exe" update "C:\Webs\AWS\webs"
  
  REM The following directory is for .NET 2.0
  set DOTNETFX2=%SystemRoot%\Microsoft.NET\Framework\v4.0.30319
  set PATH=%PATH%;%DOTNETFX2%
  
  echo Uninstalling MyService...
  echo ---------------------------------------------------
  InstallUtil /u "C:\Webs\AWS\apps\MyService.exe"
  echo ---------------------------------------------------
  echo Done.
  
  "C:\Program Files (x86)\Subversion\bin\SVN.exe" update "C:\Webs\AWS\apps"
  
  REM The following directory is for .NET 2.0
  set DOTNETFX2=%SystemRoot%\Microsoft.NET\Framework\v4.0.30319
  set PATH=%PATH%;%DOTNETFX2%
  
  echo Installing MyService...
  echo ---------------------------------------------------
  InstallUtil /i "C:\Webs\AWS\apps\MyService.exe"
  echo ---------------------------------------------------
  echo Done.
  
  NET START MyService
  </code></pre>
  
  <p>I've commented out various parts to determine what stops the service from starting. It's the InstallUtil /i section as I said previously.</p>
  
  <p>If someone could advise that'd be great.</p>
  
  <p>Thanks,
  Colin</p>