123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278 |
- using System;
- using System.Collections.Generic;
- using System.Windows.Forms;
- using System.Threading;
- using System.Diagnostics;
- using Microsoft.Win32;
- using System.IO;
- namespace FPER
- {
-
-
-
- static class Program
- {
-
-
-
- [STAThread]
- static void Main()
- {
-
- if (Process_Excute("fbserver") == false || Process_Excute("fbguard") == false)
- {
- MessageBox.Show("Fire Bird 데이타베이스가 실행되지 않았습니다. 프로그램을 종료합니다.", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
-
-
-
-
- string mode = _Ini.Read_Ini("PROGRAM", "MODE", 1024, Environment.CurrentDirectory + "\\Config.ini");
-
- _Data.Hook_Enable = _Ini.Read_Ini("PROGRAM", "HOOK_ENABLE", 1024, Environment.CurrentDirectory + "\\Config.ini");
- if (mode == "1")
- {
-
- _Data.FireDeskMode = true;
-
- _Data.Site_Name = _Ini.Read_Ini("PROGRAM", "SITE_NAME", 1024, Environment.CurrentDirectory + "\\Config.ini");
-
- _Data.MOBILE_ENABLE = _Ini.Read_Ini("PROGRAM", "MOBILE_ENABLE", 1024, Environment.CurrentDirectory + "\\Config.ini");
- _Data.GCM_ENABLE = _Ini.Read_Ini("PROGRAM", "GCM_ENABLE", 1024, Environment.CurrentDirectory + "\\Config.ini");
- _Data.GCM_API_KEY = _Ini.Read_Ini("PROGRAM", "GCM_API_KEY", 1024, Environment.CurrentDirectory + "\\Config.ini");
- _Data.GCM_TEST_MODE = _Ini.Read_Ini("PROGRAM", "GCM_TEST_MODE", 1024, Environment.CurrentDirectory + "\\Config.ini");
- _Data.GCM_INFO_FIRE = _Ini.Read_Ini("PROGRAM", "GCM_INFO_FIRE", 1024, Environment.CurrentDirectory + "\\Config.ini");
- _Data.GCM_INFO_FACILITY = _Ini.Read_Ini("PROGRAM", "GCM_INFO_FACILITY", 1024, Environment.CurrentDirectory + "\\Config.ini");
- _Data.GCM_INFO_COMERROR = _Ini.Read_Ini("PROGRAM", "GCM_INFO_COMERROR", 1024, Environment.CurrentDirectory + "\\Config.ini");
- _Data.GCM_INFO_BLOCK = _Ini.Read_Ini("PROGRAM", "GCM_INFO_BLOCK", 1024, Environment.CurrentDirectory + "\\Config.ini");
- _Data.GCM_INFO_CUT = _Ini.Read_Ini("PROGRAM", "GCM_INFO_CUT", 1024, Environment.CurrentDirectory + "\\Config.ini");
- _Data.GCM_INFO_CHECK = _Ini.Read_Ini("PROGRAM", "GCM_INFO_CHECK", 1024, Environment.CurrentDirectory + "\\Config.ini");
-
- string Temp_DATABASE_NAME = _Ini.Read_Ini("PROGRAM", "DATABASE_NAME", 1024, Environment.CurrentDirectory + "\\Config.ini");
- _Data.Registry_DATABASE_NAME = Temp_DATABASE_NAME;
- _Data.Registry_DATABASE_NAME_IP = Temp_DATABASE_NAME.Substring(0, Temp_DATABASE_NAME.IndexOf(":"));
- _Data.Registry_DATABASE_NAME_PATH = Temp_DATABASE_NAME.Substring(Temp_DATABASE_NAME.IndexOf(":") + 1);
- }
- else
- {
-
-
-
-
- RegistryKey rk = Registry.LocalMachine.OpenSubKey("SOFTWARE\\I_FPER_COMM_DAEMON", false);
- if (rk == null)
- {
- MessageBox.Show("레지스트리 읽기 실패!", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Warning);
- return;
- }
- else
- {
-
- _Data.Registry_ReceiverID = Convert.ToInt16(rk.GetValue("RECEIVER_ID").ToString());
-
- string Temp_DATABASE_NAME = rk.GetValue("DATABASE_NAME").ToString();
- _Data.Registry_DATABASE_NAME = Temp_DATABASE_NAME;
- _Data.Registry_DATABASE_NAME_IP = Temp_DATABASE_NAME.Substring(0, Temp_DATABASE_NAME.IndexOf(":"));
- _Data.Registry_DATABASE_NAME_PATH = Temp_DATABASE_NAME.Substring(Temp_DATABASE_NAME.IndexOf(":") + 1);
-
- try
- {
- _Data.Registry_MonitorDaemon_Enable = (rk.GetValue("MAIN_MONITOR_ACTIVE").ToString() == "1") ? true : false;
- _Data.Registry_MonitorDaemon_IP = rk.GetValue("MAIN_MONITOR_SERVER_IP").ToString();
- }
- catch
- {
-
-
-
- MessageBox.Show("레지스트리 읽기 실패! 기본값 셋팅 [MAIN_MONITOR_ACTIVE] 합니다. 종료하고 다시 시작해주세요", Application.ProductName, MessageBoxButtons.OK, MessageBoxIcon.Warning);
-
- RegistryKey Set_Rk = Registry.LocalMachine.CreateSubKey("SOFTWARE").CreateSubKey("I_FPER_COMM_DAEMON");
- Set_Rk.SetValue("MAIN_MONITOR_ACTIVE", 0);
- Set_Rk.SetValue("MAIN_MONITOR_SERVER_IP", "192.168.0.1");
- Set_Rk.SetValue("MAIN_MONITOR_SERVER_PORT", 9003);
- Set_Rk.SetValue("MAIN_MONITOR_SERVER_PROCESS_DELAY", 5000);
- Set_Rk.SetValue("MAIN_MONITOR_SERVER_READ_TIMEOUT", 30000);
- return;
- }
-
-
-
-
-
-
-
- _Data.Registry_Project_Directory = rk.GetValue("PROJECT_DIR").ToString();
- }
- }
-
-
-
- bool createdNew;
- Mutex dup = new Mutex(true, "__FIRE_UI_MUTEX__", out createdNew);
- if (createdNew)
- {
- Application.EnableVisualStyles();
- Application.SetCompatibleTextRenderingDefault(false);
- switch (mode)
- {
-
- case "1":
- Application.Run(new FireDesk_BigReceiver());
- break;
-
- default:
- Application.AddMessageFilter(new AltF4Filter());
- Application.Run(new MDIParent(_Data.Registry_ReceiverID, null));
- break;
- }
- dup.ReleaseMutex();
- }
- else
- {
-
- }
- }
- public class AltF4Filter : IMessageFilter
- {
- public bool PreFilterMessage(ref Message m)
- {
- const int WM_SYSKEYDOWN = 0x0104;
- if (m.Msg == WM_SYSKEYDOWN)
- {
- bool alt = ((int)m.LParam & 0x20000000) != 0;
- if (alt && (m.WParam == new IntPtr((int)Keys.F4)))
- Console.WriteLine("ALT+F4 Filtering됨.");
- return true;
- }
- return false;
- }
- }
-
- public static bool Process_Excute(string ProcessName)
- {
- bool result = false;
- Process[] mProcess = Process.GetProcessesByName(ProcessName);
- if (mProcess.Length == 0) result = false;
- else result = true;
- return result;
- }
- }
-
-
-
- public enum UIMode
- {
- input,
- cancel
- }
-
-
-
- public enum QUERYMode
- {
- select, insert, update, delete, InsertAndUpdate
- }
-
-
-
- public enum COMMLOOP
- {
- FrontLoop = 1,
- BackLoop = 2,
- IO = 3,
- KEYPAD = 4,
- BroadCast = 5
- }
-
-
-
- public delegate void dCommandResponse(CmdInfo d);
-
-
-
- public delegate void dCommandFuctionCall(int id);
-
-
-
- public enum MappingStatus
- {
- FireOn = 0,
- AccumulateOn = 1,
- WriteOn = 2,
- FaultOn = 16,
- PhoneOn = 4,
- CommConnectError = 5,
- FireOff = 6,
- WriteOff = 7,
- FaultOff = 17,
- FireRecovery = 9,
- AccumulateOff = 10,
- PhoneOff = 11,
- Normal = 12,
- CommConnectNormal = 13,
- ProgramStart = 14,
- ProgramEnd = 15,
- Log = 16,
- DemonInit = 18,
- }
-
-
-
-
- public struct code_InOutType
- {
- public const String Input = "I";
- public const String Output = "O";
- }
-
-
-
-
- public struct code_processType
- {
- public const String Group = "G";
- public const String Device = "D";
- }
-
-
-
- public enum DB_Result_Filter
- {
- None,
- Device,
- Positon,
- AND
- }
- }
|