예제 #1
0
        //播放键盘音效
        public void KBplaySound(string soundPath, int volume, bool loop)
        {
            KBplayer.URL    = soundPath;
            KBplayer.uiMode = "none";

            KBplayer.settings.volume    = volume;
            KBplayer.settings.playCount = 1;
            KBplayer.settings.setMode("loop", loop);  //循环播放
            KBplayer.play();
        }
예제 #2
0
 public bool Run()
 {
     if (MessageAlert)
     {
         new Thread((x) =>
         {
             KeyValuePair <string, string> ayy = (KeyValuePair <string, string>)x;
             MessageBox.Show(ayy.Value, ayy.Key, MessageBoxButtons.OK, MessageBoxIcon.Information);
         }).Start(new KeyValuePair <string, string>(msgTitle, msgText));
     }
     if (SoundAlert)
     {
         WMPLib.WindowsMediaPlayerClass player = new WMPLib.WindowsMediaPlayerClass();
         player.URL = SoundFile;
         player.play();
     }
     if (RunProcess)
     {
         Process.Start(ProcessFile, ProcessParameters, null, null);
     }
     if (ExecuteBatch)
     {
         Process.Start(batchFile);
     }
     if (execErrDay == -1)
     {
         File.Delete("tasks\\" + TaskID.ToString("X") + ".task");
         return(true);
     }
     return(false);
 }
예제 #3
0
 private void PlayProgram(Models.Program program)
 {
     if (Player != null)
     {
         Player.Pause();
         mplayer.URL         = program.Channel;
         mplayer.MediaError += mplayer_MediaError;
         currentProgram      = program;
         mplayer.play();
         //axWindowsMediaPlayer1.Ctlcontrols.play();
         return;
     }
 }
예제 #4
0
        //keep通信
        public void keep()
        {
            int i = 0;

            while (true)
            {
                Thread.Sleep(25000);
                aaa.KeepSession(UserID, Token);
                i++;
                if (i == 23)
                {
                    //播放webAAA的提示音
                    WMPLib.WindowsMediaPlayerClass player = new WMPLib.WindowsMediaPlayerClass();
                    player.URL                = @"http://aaa.nsu.edu.cn/nsuaaaws/webaaa/notice.wav";
                    player.uiMode             = "None";
                    player.settings.volume    = 100;
                    player.settings.playCount = 1;
                    player.play();

                    //BeepUp.Beep(500, 700);
                    MessageBox.Show("请再次输入验证码!");
                }
            }
        }
예제 #5
0
        private void componentError_timer_Tick(object sender, EventArgs e)  //Fehlergenerator der Elemente auf dem Schaltplan
        {
            #region Fehlerlabel
            if (Statics.TurbineError)   //Wenn Turbine kaputt, Label sichtbar
            {
                Turbine_fehler_label.Visible = true;
            }
            else
            {
                Turbine_fehler_label.Visible = false;
            }

            if (Statics.GeneratorError) //s.o.
            {
                Generator_fehler_label.Visible = true;
            }
            else
            {
                Generator_fehler_label.Visible = false;
            }

            if (Statics.KuhlwasserNachfullPumpeError)    //s.o.
            {
                Kuhlwassernachschub_fehler_label.Visible = true;
            }
            else
            {
                Kuhlwassernachschub_fehler_label.Visible = false;
            }

            #endregion

            #region Kuhlwassernachfüllpumpe Bildchange
            if (Statics.KuhlwasserNachfullPumpeError)   //Wenn Kühlwassernachfüllpumpe defekt, entsprechendes Bild anzeigen..
            {
                kuhlwassernachschubpumpe_picturebox.Image = Properties.Resources.pumpefailurefinal;
            }
            else          //sonst die Pumpenbewegung simulieren
            {
                if (kuhlwassernachschubpumpe_picturebox.Image == Properties.Resources.pumpeworkingfinal1)
                {
                    kuhlwassernachschubpumpe_picturebox.Image = Properties.Resources.pumpeworkingfinal2;
                }
                else
                {
                    kuhlwassernachschubpumpe_picturebox.Image = Properties.Resources.pumpeworkingfinal1;
                }
            }
            #endregion

            #region Filterverschmutzung
            if ((int)Statics.FilterVerstopfung < 100)                                                                            //Wenn Filterverstopfung unter 100%
            {
                if ((int)(Statics.P1l + Statics.P2l + Statics.Epl) > 0 && (int)(Statics.P1l + Statics.P2l + Statics.Epl) <= 100) //Filterverschmutzung anhand Pumpenleistung berechnen
                {
                    Statics.FilterVerstopfung += 0.1;
                }
                if ((int)(Statics.P1l + Statics.P2l + Statics.Epl) > 100 && (int)(Statics.P1l + Statics.P2l + Statics.Epl) <= 200)  //s.o.
                {
                    Statics.FilterVerstopfung += 0.2;
                }
                if ((int)(Statics.P1l + Statics.P2l + Statics.Epl) > 200)   //s.o.
                {
                    Statics.FilterVerstopfung += 0.3;
                }

                filterverschmutzung_label.Text = (int)Statics.FilterVerstopfung + "%"; //Auf dem Label den Verschmutungsgrat anzeigen
                if (Statics.FilterVerstopfung > 65)                                    //Farbe des Labels festlegen
                {
                    filterverschmutzung_label.ForeColor = Color.Orange;
                    if (Statics.FilterVerstopfung > 90)
                    {
                        filterverschmutzung_label.ForeColor = Color.Red;
                    }
                }
                else
                {
                    filterverschmutzung_label.ForeColor = SystemColors.ControlText;
                }
            }
            #endregion

            #region Fehlergenerator Turbine, Generator, Kuhlwassernachfüllpumpe
            Random rnd            = new Random();
            int    ErrorGenerator = 0;
            if (Statics.Istleistung > 0 && Statics.Istleistung <= 500)
            {
                ErrorGenerator = rnd.Next(1, 1300); //Anhand der Reaktorleistung die Fehlerwahrscheinlichkeit festlegen
            }
            if (Statics.Istleistung > 500 && Statics.Istleistung <= 1000)
            {
                ErrorGenerator = rnd.Next(1, 900); //s.o.
            }
            if (Statics.Istleistung > 1000)
            {
                ErrorGenerator = rnd.Next(1, 800);  //s.o.
            }
            switch (ErrorGenerator)
            {
            case 2:
                Statics.TurbineError = true;        //Turbinendefekt generieren
                player.play();
                break;

            case 3:
                Statics.GeneratorError = true;      //Turbinendefekt generieren
                player.play();
                break;
            }
            if (Statics.Fueling)                   //Wenn das Kühlwasserbecken nachgefüllt wird...
            {
                ErrorGenerator = rnd.Next(1, 700); //kann die Kühlwassernachfüllpumpe ausfallen
                if (ErrorGenerator == 2)
                {
                    Statics.KuhlwasserNachfullPumpeError = true;
                    player.play();
                }
            }
            #endregion

            #region RepStopp
            if (Statics.RepStopp)
            {
                turbinerep_btn.Enabled   = true;
                generatorrep_btn.Enabled = true;
                kuhlwassernachfullpumpeRep_btn.Enabled = true;
                filterreinigen_btn.Enabled             = true;

                technikerstatus_panel.Visible = false;
                componentRep_timer.Enabled    = false;
            }
            #endregion
        }