70 lines
1.6 KiB
C#
70 lines
1.6 KiB
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Diagnostics;
|
||
|
||
namespace Installer;
|
||
|
||
internal class Program
|
||
{
|
||
static void Main(String[] args)
|
||
{
|
||
if (args != null)
|
||
Console.WriteLine("args: {0}", String.Join(' ', args));
|
||
|
||
// 分解命令(可能包括多组),逐个执行
|
||
// 如:installer.exe -install StarAgent -start StarAgent
|
||
foreach (var cmd in Command.Parse(args))
|
||
{
|
||
switch (cmd.Name.ToLower())
|
||
{
|
||
case "-install": Install(cmd.Arguments); break;
|
||
case "-uninstall": Uninstall(cmd.Arguments); break;
|
||
case "-reinstall": Reinstall(cmd.Arguments); break;
|
||
case "-start": Start(cmd.Arguments); break;
|
||
case "-stop": Stop(cmd.Arguments); break;
|
||
case "-restart": Restart(cmd.Arguments); break;
|
||
default:
|
||
break;
|
||
}
|
||
}
|
||
|
||
Console.WriteLine("Hello, World!");
|
||
}
|
||
|
||
static void Install(IList<String> args)
|
||
{
|
||
|
||
}
|
||
|
||
static void Uninstall(IList<String> args)
|
||
{
|
||
|
||
}
|
||
|
||
static void Reinstall(IList<String> args)
|
||
{
|
||
|
||
}
|
||
|
||
static void Start(IList<String> args)
|
||
{
|
||
if (args.Count == 0) return;
|
||
|
||
Process.Start("net", $"start {args[0]}");
|
||
}
|
||
|
||
static void Stop(IList<String> args)
|
||
{
|
||
if (args.Count == 0) return;
|
||
|
||
Process.Start("net", $"stop {args[0]}");
|
||
}
|
||
|
||
static void Restart(IList<String> args)
|
||
{
|
||
if (args.Count == 0) return;
|
||
|
||
Process.Start("net", $"start {args[0]}");
|
||
Process.Start("net", $"stop {args[0]}");
|
||
}
|
||
} |