private void MetroWindow_Closed(object sender, EventArgs e) { try { while (Flags.Initializing周辺機器) { ; } Hioki323x.Close(); if (!State.Save個別データ()) { MessageBox.Show("個別データの保存に失敗しました"); } } catch { } }
public static void Init周辺機器()//TODO: { Flags.Initializing周辺機器 = true; //マルチメータの初期化 Task.Run(() => { while (true) { Flags.Hioki3228 = Hioki323x.Init(); if (Flags.Hioki3228) { break; } Thread.Sleep(400); } Hioki323x.SetDcVolt(Hioki323x.DCV_Range.R20V); while (true) { Hioki323x.GetDcVolt(); var data = Hioki323x.VoltData; State.VmTestStatus.VolData = data.ToString("F4") + "V"; if (data >= State.VmTestStatus.VolSpec) { State.VmTestStatus.ColorVol = Brushes.DodgerBlue; } else { State.VmTestStatus.ColorVol = Brushes.HotPink; } //Thread.Sleep(100); } }); //マイクの初期化 Task.Run(() => { Flags.Mic = false; while (true) { Flags.Mic = SpeechRecognition.Init(); if (Flags.Mic) { break; } Thread.Sleep(1000); } }); Task.Run(() => { while (true) { Flags.AllOk周辺機器接続 = (Flags.Hioki3228 && Flags.Mic); if (Flags.AllOk周辺機器接続 || Flags.StopInit周辺機器) { break; } Thread.Sleep(400); } Flags.Initializing周辺機器 = false; }); }