Example #1
0
        public int funIninumber_ID()//启动监控头
        {
            clsINIFileOP op = new clsINIFileOP(Application.StartupPath + "\\Monitor.ini");

            //  ProcessStartInfo psInfo = new ProcessStartInfo(@"E:\IR\变电站无人值守系统\变电站无人值守系统\PTiIRMonitor_MonitorManagerApp\bin\Debug\PTiIRMonitor_MonitorManagerApp.exe");

            try
            {
                Thread.Sleep(4000);
                if ((1 == Convert.ToInt32(op.ReadKeyValue("Device1", "DeviceNumber1"))) && (0 == Convert.ToInt32(op.ReadKeyValue("Device1", "DeviceCondition1")))) //判断一号的监控头是否已经启动
                {
                    op.WriteKeyValue("Device1", "DeviceCondition1", 1.ToString());                                                                                 //给一号监控头写入状态1表示在线0表示下线
                                                                                                                                                                   //Process[] pcs = Process.GetProcesses();
                                                                                                                                                                   //foreach (Process p in pcs)
                                                                                                                                                                   //{
                                                                                                                                                                   //    if (p.ProcessName == "PTiIRMonitor_MonitorManagerApp")
                                                                                                                                                                   //    {
                                                                                                                                                                   //        p.StartInfo = psInfo;
                                                                                                                                                                   //        IntPtr hWnd = p.MainWindowHandle; //获取看门狗.exe主窗口句柄
                                                                                                                                                                   //        int data = Convert.ToInt32(11); //发送11,表示窗口已经打开
                                                                                                                                                                   //        SendMessage(hWnd, 0x0100, (IntPtr)data, (IntPtr)0); //发送消息
                    inID = 1;
                    //        Thread.Sleep(4000);
                    //    }
                    //}
                    return(1);
                }
                else if ((2 == Convert.ToInt32(op.ReadKeyValue("Device1", "DeviceNumber2"))) && (0 == Convert.ToInt32(op.ReadKeyValue("Device1", "DeviceCondition2"))))
                {
                    op.WriteKeyValue("Device1", "DeviceCondition2", 1.ToString()); //给二号监控头写入状态1表示在线0表示下线
                                                                                   //Process[] pcs = Process.GetProcesses();
                                                                                   //foreach (Process p in pcs)
                                                                                   //{
                                                                                   //    if (p.ProcessName == "PTiIRMonitor_MonitorManagerApp")
                                                                                   //    {
                                                                                   //        p.StartInfo = psInfo;
                                                                                   //        IntPtr hWnd = p.MainWindowHandle; //获取看门狗.exe主窗口句柄
                                                                                   //        int data = Convert.ToInt32(13); //发送13,表示二号窗口已经打开
                                                                                   //        SendMessage(hWnd, 0x0100, (IntPtr)data, (IntPtr)0); //发送消息
                    inID = 2;
                    //        Thread.Sleep(4000);
                    //    }
                    //}
                    return(2);
                }
                else if ((3 == Convert.ToInt32(op.ReadKeyValue("Device1", "DeviceNumber3"))) && (0 == Convert.ToInt32(op.ReadKeyValue("Device1", "DeviceCondition3"))))
                {
                    op.WriteKeyValue("Device1", "DeviceCondition3", 1.ToString()); //给三号监控头写入状态1表示在线0表示下线
                                                                                   //Process[] pcs = Process.GetProcesses();
                                                                                   //foreach (Process p in pcs)
                                                                                   //{
                                                                                   //    if (p.ProcessName == "PTiIRMonitor_MonitorManagerApp")
                                                                                   //    {
                                                                                   //        p.StartInfo = psInfo;
                                                                                   //        IntPtr hWnd = p.MainWindowHandle; //获取看门狗.exe主窗口句柄
                                                                                   //        int data = Convert.ToInt32(15); //发送15,表示窗口已经打开
                                                                                   //        SendMessage(hWnd, 0x0100, (IntPtr)data, (IntPtr)0); //发送消息
                    inID = 3;
                    //        Thread.Sleep(4000);
                    //    }
                    //}
                    return(3);
                }
                else if ((4 == Convert.ToInt32(op.ReadKeyValue("Device1", "DeviceNumber4"))) && (0 == Convert.ToInt32(op.ReadKeyValue("Device1", "DeviceCondition4"))))
                {
                    op.WriteKeyValue("Device1", "DeviceCondition4", 1.ToString()); //给四号监控头写入状态1表示在线 0表示下线
                                                                                   //Process[] pcs = Process.GetProcesses();
                                                                                   //foreach (Process p in pcs)
                                                                                   //{
                                                                                   //    if (p.ProcessName == "PTiIRMonitor_MonitorManagerApp")
                                                                                   //    {

                    //        p.StartInfo = psInfo;
                    //        IntPtr hWnd = p.MainWindowHandle; //获取看门狗.exe主窗口句柄
                    //        int data = Convert.ToInt32(17); //发送17,表示窗口已经打开
                    //        SendMessage(hWnd, 0x0100, (IntPtr)data, (IntPtr)0); //发送消息
                    inID = 4;
                    //        Thread.Sleep(4000);
                    //    }
                    //}
                    return(4);
                }
                return(0);
            }
            catch (Exception)
            {
                throw;
            }
        }