You could simplify the one line to:

using System.Runttime.InteropServices;
using System.IO;

psi.FileName = Path.Combine(RuntimeEnvironment.GetRunTimeDirectory(), 
"installutil.exe");

--
Keith

-----Original Message-----
From: Paulo Sacramento [mailto:[EMAIL PROTECTED]
Sent: Monday, September 08, 2003 4:56 PM
Subject: Re: Automating Windows Service Installation

I'm not sure this is close to what you want, but here goes anyway. I wrote
it with the same intention as you but with a command-line install.

The parameter "string version" is the runtime version, which will be
something like "v1.0.3705" or "v1.1.4322" (releases 1.0 and 1.1
respectively). It's a bit messy but it works:

private static void RunProcess(string version)

{

    Process p = new Process();

    ProcessStartInfo psi = new ProcessStartInfo();


psi.FileName="\""+Environment.GetEnvironmentVariable("windir")+"\\Microsoft.
Net\\Framework\\"+version+"\\"+"installutil.exe\"";

    psi.Arguments = "BirthdayService.exe"; //replace this by the name of
your service executable

    psi.UseShellExecute = false;

    psi.RedirectStandardOutput=true;

    p.StartInfo = psi;

    p.Start();

    p.WaitForExit();

    Console.WriteLine(p.StandardOutput.ReadToEnd());

}

===================================
This list is hosted by DevelopMentor�  http://www.develop.com
NEW! ASP.NET courses you may be interested in:

2 Days of ASP.NET, 29 Sept 2003, in Redmond
http://www.develop.com/courses/2daspdotnet

Guerrilla ASP.NET, 13 Oct 2003, in Boston
http://www.develop.com/courses/gaspdotnet

View archives and manage your subscription(s) at http://discuss.develop.com

Reply via email to