C# .NET Выключение компьютера через определенный промежуток времени

Я попытался сделать программу, которая выключает компьютер через определенный промежуток времени. При запуске я создаю таймер, по окончанию которого компьютер должен выключиться, однако при окончании таймера почему-то дублируется процесс моей программы, и компьютер не выключается тоже.

    private int counter = 7200;

    public Form1()
    {
        InitializeComponent();

        timer1 = new Timer();
        timer1.Tick += new EventHandler(timer1_Tick);
        timer1.Interval = 1000;
        timer1.Start();

        Form2 notif = new Form2("2 часа");
        notif.Show();
    }

    private void timer1_Tick(object sender, EventArgs e)
    {
        counter--;
        if (counter == 900)
        {
            Form2 notif = new Form2("15 минут");
            notif.Show();
        }
        else if (counter == 60)
        {
            Form2 notif = new Form2("1 минута");
            notif.Show();
        }
        else if(counter == 0)
        {
            Process.Start("shutdown", "/s /t 0");
            timer1.Stop();
            Environment.Exit(0);
        }
    }

Ответы (0 шт):