diff --git a/Document/DLL/InModbus.dll b/Document/DLL/InModbus.dll
index 17c332e..74b80b0 100644
Binary files a/Document/DLL/InModbus.dll and b/Document/DLL/InModbus.dll differ
diff --git a/INT89DB_26.suo b/INT89DB_26.suo
index 64b4ae0..72b493e 100644
Binary files a/INT89DB_26.suo and b/INT89DB_26.suo differ
diff --git a/INT89DB_26/DataStore.cs b/INT89DB_26/DataStore.cs
index 1fff49f..71e7cd4 100644
--- a/INT89DB_26/DataStore.cs
+++ b/INT89DB_26/DataStore.cs
@@ -16,6 +16,13 @@ namespace INT89DB_26
Start = 1,
};
+ public enum FeedbackBoardDataTransfer
+ {
+ None,
+ Step1_6203,
+ Step2_6208,
+ }
+
public enum FormStore
{
FormNone = 0,
@@ -44,8 +51,18 @@ namespace INT89DB_26
Czech,
German,
Russian,
+ Japanese,
};
+ public enum MessageBoxIcon
+ {
+ None,
+ Hand,
+ Question,
+ Exclamation,
+ Asterisk,
+ }
+
public enum UserGroup
{
None = 0,
@@ -97,6 +114,7 @@ namespace INT89DB_26
f0_None,
f1_OPT1,
f2_OPT2,
+ f99_Modbus,
}
#endregion
}
@@ -356,6 +374,8 @@ namespace INT89DB_26
private DataStore.FormStore m_CurrentForm;
private User m_CurrentUser;
+ private int m_FeedbackSampleCount;
+ private int m_FeedbackIgnorePackages;
private int m_EthernetLocalPort;
private int m_EthernetServerPort;
private int m_EthernetMode;
@@ -476,6 +496,16 @@ namespace INT89DB_26
set { this.m_CurrentUser = value; }
}
+ public int FeedbackSampleCount
+ {
+ get { return this.m_FeedbackSampleCount; }
+ set { this.m_FeedbackSampleCount = value; }
+ }
+ public int FeedbackIgnorePackages
+ {
+ get { return this.m_FeedbackIgnorePackages; }
+ set { this.m_FeedbackIgnorePackages = value; }
+ }
public bool IsEthernetEnable
{
get
@@ -539,13 +569,15 @@ namespace INT89DB_26
this.InverterQTY = 2;
this.Unit = "g";
- this.SerialNumber = "20B0000";
+ this.SerialNumber = "26A0000";
this.Language = DataStore.LanguageID.Korean;
this.CurrentForm = DataStore.FormStore.FormMainDisplay;
this.CurrentUser = new User();
this.CurrentUser.Group = DataStore.UserGroup.LogOff;
+ this.FeedbackSampleCount = 10;
+ this.FeedbackIgnorePackages = 5;
this.EthernetLocalPort = 5001;
this.EthernetServerPort = 5002;
this.EthernetMode = 0;
@@ -597,8 +629,8 @@ namespace INT89DB_26
public bool DummyBool3;
public bool DummyBool4;
- public int DummyInt1;
- public int DummyInt2;
+ public int FeedbackSampleCount;
+ public int FeedbackIgnorePackages;
public int ModbusTcpStartAddress;
[MarshalAs(UnmanagedType.ByValTStr, SizeConst = 40)]
@@ -1850,4 +1882,104 @@ namespace INT89DB_26
#endregion
}
#endregion
+
+ #region FeedbackItem
+ public class FeedbackConfiguration
+ {
+ #region Field
+ private bool m_IsBootingComplete;
+ private int m_RetryCount;
+
+ private DataStore.FeedbackBoardDataTransfer m_DataTransfer;
+
+ private string m_HighLimit;
+ private string m_LowLimit;
+ private string m_DeadZone;
+ #endregion
+
+ #region Constructor
+ public FeedbackConfiguration()
+ {
+ this.Initialization();
+ this.DefaultSetting();
+ }
+ #endregion
+
+ #region Property
+ public bool IsBootingComplete
+ {
+ get { return this.m_IsBootingComplete; }
+ set { this.m_IsBootingComplete = value; }
+ }
+ public int RetryCount
+ {
+ get { return this.m_RetryCount; }
+ set { this.m_RetryCount = value; }
+ }
+ public DataStore.FeedbackBoardDataTransfer DataTransfer
+ {
+ get { return this.m_DataTransfer; }
+ set { this.m_DataTransfer = value; }
+ }
+
+ public string HighLimit
+ {
+ get { return this.m_HighLimit; }
+ set { this.m_HighLimit = value; }
+ }
+ public string LowLimit
+ {
+ get { return this.m_LowLimit; }
+ set { this.m_LowLimit = value; }
+ }
+ public string DeadZone
+ {
+ get { return this.m_DeadZone; }
+ set { this.m_DeadZone = value; }
+ }
+ #endregion
+
+ #region Method
+ public void Initialization()
+ {
+ this.HighLimit = "3000";
+ this.LowLimit = "1000";
+ this.DeadZone = "0";
+ }
+ private void DefaultSetting()
+ {
+ this.IsBootingComplete = false;
+ this.RetryCount = 0;
+ this.DataTransfer = DataStore.FeedbackBoardDataTransfer.None;
+ }
+ #endregion
+ }
+ #endregion
+ #region Struct FeedbackItem
+ [StructLayout(LayoutKind.Sequential)]
+ public struct StructFeedbackConfiguration
+ {
+ [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 14)]
+ public string HightLimit;
+ [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 14)]
+ public string LowLimit;
+ [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 14)]
+ public string DeadZone;
+
+ public bool DummyBool1;
+ public bool DummyBool2;
+ public bool DummyBool3;
+
+ public int DummyInt1;
+ public int DummyInt2;
+ public int DummyInt3;
+
+ [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 14)]
+ public string DummyString1;
+ [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 14)]
+ public string DummyString2;
+ [MarshalAs(UnmanagedType.ByValTStr, SizeConst = 14)]
+ public string DummyString3;
+ }
+ #endregion
}
diff --git a/INT89DB_26/DialogForms/DialogFormMessage.cs b/INT89DB_26/DialogForms/DialogFormMessage.cs
index 8619b8d..edd9882 100644
--- a/INT89DB_26/DialogForms/DialogFormMessage.cs
+++ b/INT89DB_26/DialogForms/DialogFormMessage.cs
@@ -53,6 +53,979 @@ namespace INT89DB_26.DialogForms
}
}
+ public DialogFormMessage(int code, DataStore.LanguageID language)
+ {
+ InitializeComponent();
+
+ this.labelErrorCode.Text = "";
+ this.labelMessage1.Text = "";
+ this.labelMessage2.Text = "";
+
+ switch (language)
+ {
+ case DataStore.LanguageID.Korean:
+ #region 한글
+ switch (code)
+ {
+ case 1:
+ this.labelErrorCode.Text = "Error 01";
+ this.labelMessage1.Text = "입력범위를 확인하세요.";
+ break;
+ case 2:
+ this.labelErrorCode.Text = "Error 02";
+ this.labelMessage1.Text = "최신 프로그램입니다.";
+ break;
+ case 3:
+ this.labelErrorCode.Text = "Error 03";
+ this.labelMessage1.Text = "연속으로 불량이 발생했습니다";
+ break;
+ case 4:
+ this.labelErrorCode.Text = "Error 04";
+ this.labelMessage1.Text = "백업할 파일이 없습니다";
+ break;
+ case 5:
+ this.labelErrorCode.Text = "Error 05";
+ this.labelMessage1.Text = "USB메모리가 장착되지 않았습니다";
+ break;
+ case 6:
+ this.labelErrorCode.Text = "Error 06";
+ this.labelMessage1.Text = "제조사에 문의하세요";
+ break;
+ case 7:
+ this.labelErrorCode.Text = "Error 07";
+ this.labelMessage1.Text = "USB에 업데이트 할 파일이 없습니다";
+ break;
+ case 8:
+ this.labelErrorCode.Text = "Error 08";
+ this.labelMessage1.Text = "업데이트 할 실행파일 개수가 많습니다";
+ break;
+ case 9:
+ this.labelErrorCode.Text = "Error 09";
+ this.labelMessage1.Text = "USB에 업데이트 폴더가 없습니다";
+ break;
+ case 10:
+ this.labelErrorCode.Text = "Error 10";
+ this.labelMessage1.Text = "해당 메모리가 장착되지 않았습니다";
+ break;
+ case 11:
+ this.labelErrorCode.Text = "Error 11";
+ this.labelMessage1.Text = "입력센서 에러에 의해 정지하였습니다";
+ break;
+ case 12:
+ this.labelErrorCode.Text = "Warning 12";
+ this.labelMessage1.Text = "피드백 설정 확인하세요!";
+ this.labelMessage2.Text = "DeadZone Range";
+ break;
+ case 13:
+ this.labelErrorCode.Text = "Error 13";
+ this.labelMessage1.Text = "이 파일은 지원이 되지 않습니다";
+ break;
+ case 14:
+ this.labelErrorCode.Text = "Warning 14";
+ this.labelMessage1.Text = "피드백 설정 확인하세요!";
+ this.labelMessage2.Text = "High Limit Range";
+ break;
+ case 15:
+ this.labelErrorCode.Text = "Warning 15";
+ this.labelMessage1.Text = "피드백 설정 확인하세요!";
+ this.labelMessage2.Text = "Low Limit Range";
+ break;
+ case 16:
+ this.labelErrorCode.Text = "Error 16";
+ this.labelMessage1.Text = "현재 Modbus는 Client만 지원됩니다.";
+ this.labelMessage2.Text = "Client 모드로 전환됩니다.";
+ break;
+ case 17:
+ this.labelErrorCode.Text = "Error 17";
+ this.labelMessage1.Text = "초기화를 실행해 주세요";
+ break;
+ case 18:
+ this.labelErrorCode.Text = "Info 18";
+ this.labelMessage1.Text = "전원을 끄고 다시 켜주세요";
+ break;
+ case 19:
+ break;
+ case 20:
+ break;
+ case 31:
+ this.labelErrorCode.Text = "Error 31";
+ this.labelMessage1.Text = "유저 파일 에러";
+ this.labelMessage2.Text = "";
+ break;
+ case 32:
+ this.labelErrorCode.Text = "Error 32";
+ this.labelMessage1.Text = "ID 확인하세요";
+ this.labelMessage2.Text = "";
+ break;
+ case 33:
+ this.labelErrorCode.Text = "Error 33";
+ this.labelMessage1.Text = "Password 확인하세요";
+ this.labelMessage2.Text = "";
+ break;
+ case 34:
+ this.labelErrorCode.Text = "Error 34";
+ this.labelMessage1.Text = "ID : 동일한 ID가 있습니다";
+ this.labelMessage2.Text = "";
+ break;
+ case 35:
+ this.labelErrorCode.Text = "Error 35";
+ this.labelMessage1.Text = "ID : 6~20자 입력 하세요";
+ this.labelMessage2.Text = "";
+ break;
+ case 36:
+ this.labelErrorCode.Text = "Error 36";
+ this.labelMessage1.Text = "ID : 동일한 문자(111,222,aaa...)를";
+ this.labelMessage2.Text = "3번 이상 사용할 수 없습니다";
+ break;
+ case 37:
+ this.labelErrorCode.Text = "Error 37";
+ this.labelMessage1.Text = "ID : 연속된 문자(123,321,abc,cba...)를";
+ this.labelMessage2.Text = "사용할 수 없습니다";
+ break;
+ case 38:
+ this.labelErrorCode.Text = "Error 38";
+ this.labelMessage1.Text = "PASSWORD : 6~20자 입력 하세요";
+ this.labelMessage2.Text = "";
+ break;
+ case 39:
+ this.labelErrorCode.Text = "Error 39";
+ this.labelMessage1.Text = "PASSWORD : 동일한 문자(111,222,aaa...)를";
+ this.labelMessage2.Text = "3번 이상 사용할 수 없습니다";
+ break;
+ case 40:
+ this.labelErrorCode.Text = "Error 40";
+ this.labelMessage1.Text = "PASSWORD : 연속된 문자(123,321,abc,cba...)를";
+ this.labelMessage2.Text = "사용할 수 없습니다";
+ break;
+ case 41:
+ this.labelErrorCode.Text = "Error 41";
+ this.labelMessage1.Text = "PASSWORD : 영문1이상, 숫자1이상, 특수문자1이상";
+ this.labelMessage2.Text = "포함하여 주십시오";
+ break;
+ case 42:
+ this.labelErrorCode.Text = "Error 42";
+ this.labelMessage1.Text = "PASSWORD : 이전에 설정한 패스워드입니다";
+ this.labelMessage2.Text = "";
+ break;
+ case 43:
+ this.labelErrorCode.Text = "Notice 43";
+ this.labelMessage1.Text = "자동 로그아웃 됩니다";
+ this.labelMessage2.Text = "";
+ break;
+ default:
+ this.labelErrorCode.Text = "Error 99";
+ this.labelMessage1.Text = "제조사에 문의하세요";
+ break;
+ }
+ #endregion
+ break;
+ case DataStore.LanguageID.English:
+ #region 영문
+ switch (code)
+ {
+ case 1:
+ this.labelErrorCode.Text = "Error 01";
+ this.labelMessage1.Text = "Confirm input range";
+ break;
+ case 2:
+ this.labelErrorCode.Text = "Error 02";
+ this.labelMessage1.Text = "Application is the lastest";
+ break;
+ case 3:
+ this.labelErrorCode.Text = "Error 03";
+ this.labelMessage1.Text = "Detect Continuous N.G !!";
+ break;
+ case 4:
+ this.labelErrorCode.Text = "Error 04";
+ this.labelMessage1.Text = "There are no Backup files";
+ break;
+ case 5:
+ this.labelErrorCode.Text = "Error 05";
+ this.labelMessage1.Text = "No USB Memory";
+ break;
+ case 6:
+ this.labelErrorCode.Text = "Error 06";
+ this.labelMessage1.Text = "Please contact a manufacturer";
+ break;
+ case 7:
+ this.labelErrorCode.Text = "Error 07";
+ this.labelMessage1.Text = "There are no update files in USB";
+ break;
+ case 8:
+ this.labelErrorCode.Text = "Error 08";
+ this.labelMessage1.Text = "Too much file for update";
+ break;
+ case 9:
+ this.labelErrorCode.Text = "Error 09";
+ this.labelMessage1.Text = "There is no folder has update files in USB";
+ break;
+ case 10:
+ this.labelErrorCode.Text = "Error 10";
+ this.labelMessage1.Text = "There is no MEMORY";
+ break;
+ case 11:
+ this.labelErrorCode.Text = "Error 11";
+ this.labelMessage1.Text = "Emergency stop due to entry sensor error";
+ break;
+ case 12:
+ this.labelErrorCode.Text = "Warning 12";
+ this.labelMessage1.Text = "Check your feedback settings!";
+ this.labelMessage2.Text = "DeadZone Range";
+ break;
+ case 13:
+ this.labelErrorCode.Text = "Error 13";
+ this.labelMessage1.Text = "This file is not supported";
+ break;
+ case 14:
+ this.labelErrorCode.Text = "Warning 14";
+ this.labelMessage1.Text = "Check your feedback settings!";
+ this.labelMessage2.Text = "High Limit Range";
+ break;
+ case 15:
+ this.labelErrorCode.Text = "Warning 15";
+ this.labelMessage1.Text = "Check your feedback settings!";
+ this.labelMessage2.Text = "Low Limit Range";
+ break;
+ case 16:
+ this.labelErrorCode.Text = "Error 16";
+ this.labelMessage1.Text = "Currently, only the 'Client' is supported for Modbus.";
+ this.labelMessage2.Text = "Switches to 'Client' mode.";
+ break;
+ case 17:
+ this.labelErrorCode.Text = "Error 17";
+ this.labelMessage1.Text = "Please run the initialization";
+ break;
+ case 18:
+ this.labelErrorCode.Text = "Error 18";
+ this.labelMessage1.Text = "Turn the power off and back on.";
+ break;
+ case 19:
+ break;
+ case 20:
+ break;
+ case 31:
+ this.labelErrorCode.Text = "Error 31";
+ this.labelMessage1.Text = "User files error";
+ this.labelMessage2.Text = "";
+ break;
+ case 32:
+ this.labelErrorCode.Text = "Error 32";
+ this.labelMessage1.Text = "Check the ID";
+ this.labelMessage2.Text = "";
+ break;
+ case 33:
+ this.labelErrorCode.Text = "Error 33";
+ this.labelMessage1.Text = "Check the password";
+ this.labelMessage2.Text = "";
+ break;
+ case 34:
+ this.labelErrorCode.Text = "Error 34";
+ this.labelMessage1.Text = "The system already has the same ID";
+ this.labelMessage2.Text = "";
+ break;
+ case 35:
+ this.labelErrorCode.Text = "Error 35";
+ this.labelMessage1.Text = "Please enter 4-10 characters";
+ this.labelMessage2.Text = "";
+ break;
+ case 36:
+ this.labelErrorCode.Text = "Error 36";
+ this.labelMessage1.Text = "ID: The same character (111,222,aaa...)";
+ this.labelMessage2.Text = "cannot be used more than 3 times";
+ break;
+ case 37:
+ this.labelErrorCode.Text = "Error 37";
+ this.labelMessage1.Text = "ID: Consecutive characters (123,321,abc,cba...)";
+ this.labelMessage2.Text = "cannot be used";
+ break;
+ case 38:
+ this.labelErrorCode.Text = "Error 38";
+ this.labelMessage1.Text = "PASSWORD: Enter 6~20 characters";
+ this.labelMessage2.Text = "";
+ break;
+ case 39:
+ this.labelErrorCode.Text = "Error 39";
+ this.labelMessage1.Text = "PASSWORD: The same character (111,222,aaa...)";
+ this.labelMessage2.Text = "cannot be used more than 3 times";
+ break;
+ case 40:
+ this.labelErrorCode.Text = "Error 40";
+ this.labelMessage1.Text = "PASSWORD: Consecutive characters";
+ this.labelMessage2.Text = "(123,321,abc,cba...) cannot be used";
+ break;
+ case 41:
+ this.labelErrorCode.Text = "Error 41";
+ this.labelMessage1.Text = "PASSWORD: Include at least 1 English letter,";
+ this.labelMessage2.Text = "at least 1 number, and at least 1 special character";
+ break;
+ case 42:
+ this.labelErrorCode.Text = "Error 42";
+ this.labelMessage1.Text = "PASSWORD: This is the password you set previously";
+ this.labelMessage2.Text = "";
+ break;
+ case 43:
+ this.labelErrorCode.Text = "Notice 43";
+ this.labelMessage1.Text = "You will be automatically logged out";
+ this.labelMessage2.Text = "";
+ break;
+ default:
+ this.labelErrorCode.Text = "Error 99";
+ this.labelMessage1.Text = "Please contact a manufacturer";
+ break;
+ }
+ #endregion
+ break;
+ case DataStore.LanguageID.Chinese:
+ #region 중문
+ this.buttonOK.Text = "好";
+
+ switch (code)
+ {
+ case 1:
+ this.labelErrorCode.Text = "錯誤 01";
+ this.labelMessage1.Text = "确认输入范围";
+ break;
+ case 2:
+ this.labelErrorCode.Text = "錯誤 02";
+ this.labelMessage1.Text = "最近应用";
+ break;
+ case 3:
+ this.labelErrorCode.Text = "錯誤 03";
+ this.labelMessage1.Text = "测试连续NG";
+ break;
+ case 4:
+ this.labelErrorCode.Text = "錯誤 04";
+ this.labelMessage1.Text = "无支持文件";
+ break;
+ case 5:
+ this.labelErrorCode.Text = "錯誤 05";
+ this.labelMessage1.Text = "无USB存储卡";
+ break;
+ case 6:
+ this.labelErrorCode.Text = "錯誤 06";
+ this.labelMessage1.Text = "请联系厂商";
+ break;
+ case 7:
+ this.labelErrorCode.Text = "錯誤 07";
+ this.labelMessage1.Text = "USB无更新文件";
+ break;
+ case 8:
+ this.labelErrorCode.Text = "錯誤 08";
+ this.labelMessage1.Text = "太多文件需更新";
+ break;
+ case 9:
+ this.labelErrorCode.Text = "錯誤 09";
+ this.labelMessage1.Text = "USB没有文件夹需要更新文件다";
+ break;
+ case 10:
+ this.labelErrorCode.Text = "錯誤 10";
+ this.labelMessage1.Text = "无存储";
+ break;
+ case 11:
+ this.labelErrorCode.Text = "錯誤 11";
+ this.labelMessage1.Text = "由于入口传感器错误导致紧急停止";
+ break;
+ case 12:
+ this.labelErrorCode.Text = "注意 12";
+ this.labelMessage1.Text = "检查您的反馈设置!死区范围";
+ this.labelMessage2.Text = "";
+ break;
+ case 13:
+ this.labelErrorCode.Text = "錯誤 13";
+ this.labelMessage1.Text = "不支援这个档案";
+ break;
+ case 14:
+ this.labelErrorCode.Text = "注意 14";
+ this.labelMessage1.Text = "检查您的反馈设置!上限范围";
+ this.labelMessage2.Text = "";
+ break;
+ case 15:
+ this.labelErrorCode.Text = "注意 15";
+ this.labelMessage1.Text = "检查您的反馈设置!下限范围";
+ this.labelMessage2.Text = "";
+ break;
+ case 16:
+ this.labelErrorCode.Text = "錯誤 16";
+ this.labelMessage1.Text = "目前,Modbus 仅支持“客户端”。";
+ this.labelMessage2.Text = "切换到“客户端”模式。";
+ break;
+ case 17:
+ this.labelErrorCode.Text = "錯誤 17";
+ this.labelMessage1.Text = "运行初始化";
+ break;
+ case 18:
+ this.labelErrorCode.Text = "錯誤 18";
+ this.labelMessage1.Text = "关掉电源,然后在打开电源";
+ break;
+ case 19:
+ break;
+ case 20:
+ break;
+ case 31:
+ this.labelErrorCode.Text = "錯誤 31";
+ this.labelMessage1.Text = "用户文件错误";
+ this.labelMessage2.Text = "";
+ break;
+ case 32:
+ this.labelErrorCode.Text = "錯誤 32";
+ this.labelMessage1.Text = "检查身份证";
+ this.labelMessage2.Text = "";
+ break;
+ case 33:
+ this.labelErrorCode.Text = "錯誤 33";
+ this.labelMessage1.Text = "检查密码";
+ this.labelMessage2.Text = "";
+ break;
+ case 34:
+ this.labelErrorCode.Text = "錯誤 34";
+ this.labelMessage1.Text = "系统已具有相同的ID";
+ this.labelMessage2.Text = "";
+ break;
+ case 35:
+ this.labelErrorCode.Text = "錯誤 35";
+ this.labelMessage1.Text = "请输入4-10个字符";
+ this.labelMessage2.Text = "";
+ break;
+ case 36:
+ this.labelErrorCode.Text = "錯誤 36";
+ this.labelMessage1.Text = "ID:相同字符(111、222、aaa……)不能使用超过3次";
+ this.labelMessage2.Text = "";
+ break;
+ case 37:
+ this.labelErrorCode.Text = "錯誤 37";
+ this.labelMessage1.Text = "ID:连续字符(123、321、abc、cba……)不能使用";
+ this.labelMessage2.Text = "";
+ break;
+ case 38:
+ this.labelErrorCode.Text = "錯誤 38";
+ this.labelMessage1.Text = "密码:请输入6至20个字符";
+ this.labelMessage2.Text = "";
+ break;
+ case 39:
+ this.labelErrorCode.Text = "錯誤 39";
+ this.labelMessage1.Text = "密码:相同字符(111、222、aaa……)不能使用超过3次";
+ this.labelMessage2.Text = "";
+ break;
+ case 40:
+ this.labelErrorCode.Text = "錯誤 40";
+ this.labelMessage1.Text = "密码:连续字符(123、321、abc、cba……)不能使用";
+ this.labelMessage2.Text = "";
+ break;
+ case 41:
+ this.labelErrorCode.Text = "錯誤 41";
+ this.labelMessage1.Text = "密码:至少包含1个英文字母、1个数字和1个特殊字符";
+ this.labelMessage2.Text = "";
+ break;
+ case 42:
+ this.labelErrorCode.Text = "錯誤 42";
+ this.labelMessage1.Text = "密码:这是您之前设置的密码";
+ this.labelMessage2.Text = "";
+ break;
+ case 43:
+ this.labelErrorCode.Text = "注意 43";
+ this.labelMessage1.Text = "您将自动退出";
+ this.labelMessage2.Text = "";
+ break;
+ default:
+ this.labelErrorCode.Text = "錯誤 99";
+ this.labelMessage1.Text = "请联系厂商";
+ break;
+ }
+ #endregion
+ break;
+ case DataStore.LanguageID.Czech:
+ #region 체코어
+ switch (code)
+ {
+ case 1:
+ this.labelErrorCode.Text = "Chyba 01";
+ this.labelMessage1.Text = "Potvrďte zadanou hodnotu";
+ this.labelMessage2.Text = "";
+ break;
+ case 2:
+ this.labelErrorCode.Text = "Chyba 02";
+ this.labelMessage1.Text = "Software je aktuální";
+ this.labelMessage2.Text = "";
+ break;
+ case 3:
+ this.labelErrorCode.Text = "Chyba 03";
+ this.labelMessage1.Text = "Detekovat neustále chybějící produkt";
+ this.labelMessage2.Text = "";
+ break;
+ case 4:
+ this.labelErrorCode.Text = "Chyba 04";
+ this.labelMessage1.Text = "Chybí zálohové soubory";
+ this.labelMessage2.Text = "";
+ break;
+ case 5:
+ this.labelErrorCode.Text = "Chyba 05";
+ this.labelMessage1.Text = "USB nepřipojeno";
+ this.labelMessage2.Text = "";
+ break;
+ case 6:
+ this.labelErrorCode.Text = "Chyba 06";
+ this.labelMessage1.Text = "Kontaktujte výrobce";
+ this.labelMessage2.Text = "";
+ break;
+ case 7:
+ this.labelErrorCode.Text = "Chyba 07";
+ this.labelMessage1.Text = "Na USB chybí aktualizační soubory";
+ this.labelMessage2.Text = "";
+ break;
+ case 8:
+ this.labelErrorCode.Text = "Chyba 08";
+ this.labelMessage1.Text = "Příliš mnoho souboru k aktualizaci";
+ this.labelMessage2.Text = "";
+ break;
+ case 9:
+ this.labelErrorCode.Text = "Chyba 09";
+ this.labelMessage1.Text = "Na USB disku není žádná složka s aktualizačními soubory.";
+ this.labelMessage2.Text = "";
+ break;
+ case 10:
+ this.labelErrorCode.Text = "Chyba 10";
+ this.labelMessage1.Text = "Chybí paměť";
+ this.labelMessage2.Text = "";
+ break;
+ case 11:
+ this.labelErrorCode.Text = "Chyba 11";
+ this.labelMessage1.Text = "Nouzové zastavení z důvodu chyby vstupního senzoru";
+ break;
+ case 12:
+ this.labelErrorCode.Text = "Varování 12";
+ this.labelMessage1.Text = "Zkontrolujte nastavení zpětné vazby!";
+ this.labelMessage2.Text = "Rozsah mrtvé zóny";
+ break;
+ case 13:
+ this.labelErrorCode.Text = "Chybě 13";
+ this.labelMessage1.Text = "Tento soubor není podporován";
+ break;
+ case 14:
+ this.labelErrorCode.Text = "Varování 14";
+ this.labelMessage1.Text = "Zkontrolujte nastavení zpětné vazby!";
+ this.labelMessage2.Text = "Rozsah horního limitu";
+ break;
+ case 15:
+ this.labelErrorCode.Text = "Varování 15";
+ this.labelMessage1.Text = "Zkontrolujte nastavení zpětné vazby!";
+ this.labelMessage2.Text = "Rozsah dolního limitu";
+ break;
+ case 16:
+ this.labelErrorCode.Text = "Chyba 16";
+ this.labelMessage1.Text = "V současné době je pro Modbus podporován";
+ this.labelMessage2.Text = "pouze režim „Klient“. Přepne do režimu „Klient“.";
+ break;
+ case 17:
+ this.labelErrorCode.Text = "Chybě 17";
+ this.labelMessage1.Text = "Prosím proveďte spuštění";
+ this.labelMessage2.Text = "";
+ break;
+ case 18:
+ this.labelErrorCode.Text = "Chybě 18";
+ this.labelMessage1.Text = "Vypněte a zapněte hlavním vypínačem";
+ this.labelMessage2.Text = "";
+ break;
+ case 19:
+ break;
+ case 20:
+ break;
+ case 31:
+ this.labelErrorCode.Text = "Chybě 31";
+ this.labelMessage1.Text = "Chyba souborů uživatele";
+ this.labelMessage2.Text = "";
+ break;
+ case 32:
+ this.labelErrorCode.Text = "Chybě 32";
+ this.labelMessage1.Text = "Zkontrolujte ID";
+ this.labelMessage2.Text = "";
+ break;
+ case 33:
+ this.labelErrorCode.Text = "Chybě 33";
+ this.labelMessage1.Text = "Zkontrolujte heslo";
+ this.labelMessage2.Text = "";
+ break;
+ case 34:
+ this.labelErrorCode.Text = "Chybě 34";
+ this.labelMessage1.Text = "Systém již má stejné ID";
+ this.labelMessage2.Text = "";
+ break;
+ case 35:
+ this.labelErrorCode.Text = "Chybě 35";
+ this.labelMessage1.Text = "Zadejte 4–10 znaků";
+ this.labelMessage2.Text = "";
+ break;
+ case 36:
+ this.labelErrorCode.Text = "Chybě 36";
+ this.labelMessage1.Text = "ID: Stejný znak (111, 222, aaa...) nelze použít více";
+ this.labelMessage2.Text = "než 3krát";
+ break;
+ case 37:
+ this.labelErrorCode.Text = "Chybě 37";
+ this.labelMessage1.Text = "ID: Nelze použít po sobě jdoucí znaky";
+ this.labelMessage2.Text = "(123, 321, abc, cba...)";
+ break;
+ case 38:
+ this.labelErrorCode.Text = "Chybě 38";
+ this.labelMessage1.Text = "HESLO: Zadejte 6–20 znaků";
+ this.labelMessage2.Text = "";
+ break;
+ case 39:
+ this.labelErrorCode.Text = "Chybě 39";
+ this.labelMessage1.Text = "HESLO: Stejný znak (111, 222, aaa...)";
+ this.labelMessage2.Text = "nelze použít více než 3krát";
+ break;
+ case 40:
+ this.labelErrorCode.Text = "Chybě 40";
+ this.labelMessage1.Text = "HESLO: Nelze použít po sobě jdoucí znaky";
+ this.labelMessage2.Text = "(123, 321, abc, cba...)";
+ break;
+ case 41:
+ this.labelErrorCode.Text = "Chybě 41";
+ this.labelMessage1.Text = "HESLO: Obsahuje alespoň 1 anglické písmeno,";
+ this.labelMessage2.Text = "alespoň 1 číslici a alespoň 1 speciální znak";
+ break;
+ case 42:
+ this.labelErrorCode.Text = "Chybě 42";
+ this.labelMessage1.Text = "HESLO: Toto je heslo, které jste si nastavili dříve";
+ this.labelMessage2.Text = "";
+ break;
+ case 43:
+ this.labelErrorCode.Text = "Upozornění 43";
+ this.labelMessage1.Text = "Budete automaticky odhlášeni";
+ this.labelMessage2.Text = "";
+ break;
+ default:
+ this.labelErrorCode.Text = "Chybě 99";
+ this.labelMessage1.Text = "Kontaktujte výrobce";
+ this.labelMessage2.Text = "";
+ break;
+ }
+ #endregion
+ break;
+ case DataStore.LanguageID.German:
+ #region 독일어
+ switch (code)
+ {
+ case 1:
+ this.labelErrorCode.Text = "Fehler 01";
+ this.labelMessage1.Text = "Den eingegebenen Wert bestätigen";
+ break;
+ case 2:
+ this.labelErrorCode.Text = "Fehler 02";
+ this.labelMessage1.Text = "Software ist up-to-date";
+ break;
+ case 3:
+ this.labelErrorCode.Text = "Fehler 03";
+ this.labelMessage1.Text = "Fehlendes Produkt dauerhaft detektieren";
+ break;
+ case 4:
+ this.labelErrorCode.Text = "Fehler 04";
+ this.labelMessage1.Text = "Sicherungsdateien fehlen";
+ break;
+ case 5:
+ this.labelErrorCode.Text = "Fehler 05";
+ this.labelMessage1.Text = "USB nicht angeschlossen";
+ break;
+ case 6:
+ this.labelErrorCode.Text = "Fehler 06";
+ this.labelMessage1.Text = "Hersteller kontaktieren";
+ break;
+ case 7:
+ this.labelErrorCode.Text = "Fehler 07";
+ this.labelMessage1.Text = "Auf USB fehlen Aktualisierungsdateien";
+ break;
+ case 8:
+ this.labelErrorCode.Text = "Fehler 08";
+ this.labelMessage1.Text = "Zu viele ausführbare Dateien";
+ this.labelMessage2.Text = "zum Aktualisieren";
+ break;
+ case 9:
+ this.labelErrorCode.Text = "Fehler 09";
+ this.labelMessage1.Text = "Ordner mit den Aktualisierungsdateien";
+ this.labelMessage2.Text = "fehlt auf dem USB";
+ break;
+ case 10:
+ this.labelErrorCode.Text = "Fehler 10";
+ this.labelMessage1.Text = "Speicher/ Datenspeicher fehlt";
+ break;
+ case 11:
+ this.labelErrorCode.Text = "Fehler 11";
+ this.labelMessage1.Text = "Notstopp aufgrund eines Eingangssensorfehlers";
+ break;
+ case 12:
+ this.labelErrorCode.Text = "Warnung 12";
+ this.labelMessage1.Text = "Überprüfen Sie Ihre Feedback-Einstellungen!";
+ this.labelMessage2.Text = "Totzonenbereich";
+ break;
+ case 13:
+ this.labelErrorCode.Text = "Fehler 13";
+ this.labelMessage1.Text = "Diese Datei wird nicht unterstützt";
+ break;
+ case 14:
+ this.labelErrorCode.Text = "Warnung 14";
+ this.labelMessage1.Text = "Überprüfen Sie Ihre Feedback-Einstellungen!";
+ this.labelMessage2.Text = "Oberer Grenzwertbereich";
+ break;
+ case 15:
+ this.labelErrorCode.Text = "Warnung 15";
+ this.labelMessage1.Text = "Überprüfen Sie Ihre Feedback-Einstellungen!";
+ this.labelMessage2.Text = "Unterer Grenzwertbereich";
+ break;
+ case 16:
+ this.labelErrorCode.Text = "Fehler 16";
+ this.labelMessage1.Text = "Derzeit wird nur der „Client“-Modus für Modbus unterstützt.";
+ this.labelMessage2.Text = "Wechselt in den „Client“-Modus.";
+ break;
+ case 17:
+ this.labelErrorCode.Text = "Fehler 17";
+ this.labelMessage1.Text = "Bitte starten";
+ break;
+ case 18:
+ this.labelErrorCode.Text = "Fehler 18";
+ this.labelMessage1.Text = "Mit dem Hauptschalter";
+ this.labelMessage2.Text = "aus- und einschalten";
+ break;
+ case 19:
+ break;
+ case 20:
+ break;
+ case 31:
+ this.labelErrorCode.Text = "Fehler 31";
+ this.labelMessage1.Text = "Fehler der Benutzerdateien";
+ this.labelMessage2.Text = "";
+ break;
+ case 32:
+ this.labelErrorCode.Text = "Fehler 32";
+ this.labelMessage1.Text = "Überprüfen Sie die ID";
+ this.labelMessage2.Text = "";
+ break;
+ case 33:
+ this.labelErrorCode.Text = "Fehler 33";
+ this.labelMessage1.Text = "Überprüfen Sie das Passwort";
+ this.labelMessage2.Text = "";
+ break;
+ case 34:
+ this.labelErrorCode.Text = "Fehler 34";
+ this.labelMessage1.Text = "Das System hat bereits die gleiche ID";
+ this.labelMessage2.Text = "";
+ break;
+ case 35:
+ this.labelErrorCode.Text = "Fehler 35";
+ this.labelMessage1.Text = "Bitte geben Sie 4-10 Zeichen ein";
+ this.labelMessage2.Text = "";
+ break;
+ case 36:
+ this.labelErrorCode.Text = "Fehler 36";
+ this.labelMessage1.Text = "ID: Dasselbe Zeichen (111, 222, aaa…) darf";
+ this.labelMessage2.Text = "maximal dreimal verwendet werden.";
+ break;
+ case 37:
+ this.labelErrorCode.Text = "Fehler 37";
+ this.labelMessage1.Text = "ID: Aufeinanderfolgende Zeichen (123, 321, abc, cba…)";
+ this.labelMessage2.Text = "dürfen nicht verwendet werden.";
+ break;
+ case 38:
+ this.labelErrorCode.Text = "Fehler 38";
+ this.labelMessage1.Text = "PASSWORT: Geben Sie 6–20 Zeichen ein.";
+ this.labelMessage2.Text = "";
+ break;
+ case 39:
+ this.labelErrorCode.Text = "Fehler 39";
+ this.labelMessage1.Text = "PASSWORT: Dasselbe Zeichen (111, 222, aaa…)";
+ this.labelMessage2.Text = "darf maximal dreimal verwendet werden.";
+ break;
+ case 40:
+ this.labelErrorCode.Text = "Fehler 40";
+ this.labelMessage1.Text = "PASSWORT: Aufeinanderfolgende Zeichen";
+ this.labelMessage2.Text = "(123, 321, abc, cba…) dürfen nicht verwendet werden.";
+ break;
+ case 41:
+ this.labelErrorCode.Text = "Fehler 41";
+ this.labelMessage1.Text = "PASSWORT: Mindestens ein englischer Buchstabe,";
+ this.labelMessage2.Text = "mindestens eine Zahl und mindestens ein Sonderzeichen.";
+ break;
+ case 42:
+ this.labelErrorCode.Text = "Fehler 42";
+ this.labelMessage1.Text = "PASSWORT: Dies ist das zuvor von Ihnen festgelegte";
+ this.labelMessage2.Text = "Passwort.";
+ break;
+ case 43:
+ this.labelErrorCode.Text = "Hinweis 43";
+ this.labelMessage1.Text = "Sie werden automatisch abgemeldet.";
+ this.labelMessage2.Text = "";
+ break;
+ default:
+ this.labelErrorCode.Text = "Fehler 99";
+ this.labelMessage1.Text = "Hersteller kontaktieren";
+ break;
+ }
+ #endregion
+ break;
+ case DataStore.LanguageID.Japanese:
+ #region Japanese
+ switch (code)
+ {
+ case 1:
+ this.labelErrorCode.Text = "エラㅡ 01";
+ this.labelMessage1.Text = "入力範囲を確認する";
+ break;
+ case 2:
+ this.labelErrorCode.Text = "エラㅡ 02";
+ this.labelMessage1.Text = "アプリケㅡションは最新である";
+ break;
+ case 3:
+ this.labelErrorCode.Text = "エラㅡ 03";
+ this.labelMessage1.Text = "連続NGを検出する";
+ break;
+ case 4:
+ this.labelErrorCode.Text = "エラㅡ 04";
+ this.labelMessage1.Text = "バックアップファイルがない";
+ break;
+ case 5:
+ this.labelErrorCode.Text = "エラㅡ 05";
+ this.labelMessage1.Text = "USBメモリなし";
+ break;
+ case 6:
+ this.labelErrorCode.Text = "エラㅡ 06";
+ this.labelMessage1.Text = "メㅡカㅡにお問い合わせください";
+ break;
+ case 7:
+ this.labelErrorCode.Text = "エラㅡ 07";
+ this.labelMessage1.Text = "USBに更新ファイルがない";
+ break;
+ case 8:
+ this.labelErrorCode.Text = "エラㅡ 08";
+ this.labelMessage1.Text = "更新用ファイルが多すぎる";
+ break;
+ case 9:
+ this.labelErrorCode.Text = "エラㅡ 09";
+ this.labelMessage1.Text = "USBに更新ファイルが入ったフォルダㅡがない";
+ break;
+ case 10:
+ this.labelErrorCode.Text = "エラㅡ 10";
+ this.labelMessage1.Text = "メモリㅡがない";
+ break;
+ case 11:
+ this.labelErrorCode.Text = "注意 11";
+ this.labelMessage1.Text = "重量制限設定を確認してください!";
+ break;
+ case 12:
+ this.labelErrorCode.Text = "警告 12";
+ this.labelMessage1.Text = "フィードバック設定を確認してください!";
+ this.labelMessage2.Text = "デッドゾーン範囲";
+ break;
+ case 13:
+ this.labelErrorCode.Text = "エラㅡ 13";
+ this.labelMessage1.Text = "このファイルはサポートされていません";
+ break;
+ case 14:
+ this.labelErrorCode.Text = "警告 14";
+ this.labelMessage1.Text = "フィードバック設定を確認してください!";
+ this.labelMessage2.Text = "上限範囲";
+ break;
+ case 15:
+ this.labelErrorCode.Text = "警告 15";
+ this.labelMessage1.Text = "フィードバック設定を確認してください!";
+ this.labelMessage2.Text = "下限範囲";
+ break;
+ case 16:
+ this.labelErrorCode.Text = "エラㅡ 16";
+ this.labelMessage1.Text = "現在、ModbusはClientのみサポートされています。";
+ this.labelMessage2.Text = "Client モードに切り替わります。";
+ break;
+ case 17:
+ this.labelErrorCode.Text = "エラㅡ 17";
+ this.labelMessage1.Text = "初期化を実行してください";
+ break;
+ case 18:
+ this.labelErrorCode.Text = "注意 18";
+ this.labelMessage1.Text = "電源をOFFにしてから電源をONにする";
+ break;
+ case 19:
+ break;
+ case 20:
+ break;
+ case 23:
+ this.labelErrorCode.Text = "エラㅡ 23";
+ this.labelMessage1.Text = "通信接続状態を確認する";
+ this.labelMessage2.Text = "";
+ break;
+ case 31:
+ this.labelErrorCode.Text = "エラㅡ 31";
+ this.labelMessage1.Text = "ユㅡザㅡファイルエラㅡ";
+ this.labelMessage2.Text = "";
+ break;
+ case 32:
+ this.labelErrorCode.Text = "エラㅡ 32";
+ this.labelMessage1.Text = "IDを確認する";
+ this.labelMessage2.Text = "";
+ break;
+ case 33:
+ this.labelErrorCode.Text = "エラㅡ 33";
+ this.labelMessage1.Text = "パスワㅡドを確認する";
+ this.labelMessage2.Text = "";
+ break;
+ case 34:
+ this.labelErrorCode.Text = "エラㅡ 34";
+ this.labelMessage1.Text = "システムに既に同じIDがある";
+ this.labelMessage2.Text = "";
+ break;
+ case 35:
+ this.labelErrorCode.Text = "エラㅡ 35";
+ this.labelMessage1.Text = "4~10文字を入力してください";
+ this.labelMessage2.Text = "";
+ break;
+ case 36:
+ this.labelErrorCode.Text = "エラㅡ 36";
+ this.labelMessage1.Text = "ID: 同じ文字 (111,222,aaa...) は3回以上";
+ this.labelMessage2.Text = "使用できません";
+ break;
+ case 37:
+ this.labelErrorCode.Text = "エラㅡ 37";
+ this.labelMessage1.Text = "ID: 連続する文字 (123,321,abc,cba...) は";
+ this.labelMessage2.Text = "使用できません";
+ break;
+ case 38:
+ this.labelErrorCode.Text = "エラㅡ 38";
+ this.labelMessage1.Text = "パスワード: 6~20文字を入力してください";
+ this.labelMessage2.Text = "";
+ break;
+ case 39:
+ this.labelErrorCode.Text = "エラㅡ 39";
+ this.labelMessage1.Text = "パスワード: 同じ文字 (111,222,aaa...) は";
+ this.labelMessage2.Text = "3回以上使用できません";
+ break;
+ case 40:
+ this.labelErrorCode.Text = "エラㅡ 40";
+ this.labelMessage1.Text = "パスワード: 連続する文字 (123,321,abc,cba...) は";
+ this.labelMessage2.Text = "使用できません";
+ break;
+ case 41:
+ this.labelErrorCode.Text = "エラㅡ 41";
+ this.labelMessage1.Text = "パスワード: 英字、数字、特殊文字を";
+ this.labelMessage2.Text = "それぞれ1文字以上含めてください";
+ break;
+ case 42:
+ this.labelErrorCode.Text = "エラㅡ 42";
+ this.labelMessage1.Text = "パスワード: 以前に設定したパスワードです";
+ this.labelMessage2.Text = "";
+ break;
+ case 43:
+ this.labelErrorCode.Text = "お知らせ 43";
+ this.labelMessage1.Text = "自動的にログアウトされます";
+ this.labelMessage2.Text = "";
+ break;
+ default:
+ this.labelErrorCode.Text = "エラㅡ 99";
+ this.labelMessage1.Text = "メㅡカㅡにお問い合わせください";
+ break;
+ }
+ #endregion
+ break;
+ default:
+ break;
+ }
+ }
public DialogFormMessage(int code, DataStore.LanguageID language, string msg)
{
InitializeComponent();
@@ -465,6 +1438,499 @@ namespace INT89DB_26.DialogForms
}
}
+ public DialogFormMessage(object dll, int code, DataStore.LanguageID language)
+ {
+ InitializeComponent();
+
+ this.labelErrorCode.Text = "";
+ this.labelMessage1.Text = "";
+ this.labelMessage2.Text = "";
+
+ switch (language)
+ {
+ case DataStore.LanguageID.Korean:
+ #region 한글
+ switch (code)
+ {
+ case 1:
+ this.labelErrorCode.Text = "Error 04_01";
+ this.labelMessage1.Text = "ID를 찾을 수 없습니다";
+ break;
+ case 2:
+ this.labelErrorCode.Text = "Error 04_02";
+ this.labelMessage1.Text = "ID : 동일한 ID가 있습니다";
+ break;
+ case 3:
+ this.labelErrorCode.Text = "Error 04_03";
+ this.labelMessage1.Text = "ID : 6~20자 입력하세요";
+ break;
+ case 4:
+ this.labelErrorCode.Text = "Error 04_04";
+ this.labelMessage1.Text = "ID : 6~20자 입력하세요";
+ break;
+ case 5:
+ this.labelErrorCode.Text = "Error 04_05";
+ this.labelMessage1.Text = "ID : 연속된 문자(123,321,abc,cba...)또는";
+ this.labelMessage2.Text = "동일한 문자(111,222,aaa...) 사용 할 수 없습니다";
+ break;
+ case 6:
+ this.labelErrorCode.Text = "Error 04_06";
+ this.labelMessage1.Text = "ID : 사용할 수 없는 문자가 포함되어 있습니다";
+ break;
+ case 7:
+ this.labelErrorCode.Text = "Error 04_07";
+ this.labelMessage1.Text = "ID : 사용자 계정이 만료 되었습니다";
+ break;
+ case 8:
+ this.labelErrorCode.Text = "Error 04_08";
+ this.labelMessage1.Text = "PASSWORD : 이전 패스워드 입니다";
+ break;
+ case 9:
+ this.labelErrorCode.Text = "Error 04_09";
+ this.labelMessage1.Text = "PASSWORD : 6~20자 입력하세요";
+ break;
+ case 10:
+ this.labelErrorCode.Text = "Error 04_10";
+ this.labelMessage1.Text = "PASSWORD : 6~20자 입력하세요";
+ break;
+ case 11:
+ this.labelErrorCode.Text = "Error 04_11";
+ this.labelMessage1.Text = "PASSWORD : 연속된 문자(123,321,abc,cba...)또는";
+ this.labelMessage2.Text = "동일한 문자(111,222,aaa...) 사용 할 수 없습니다";
+ break;
+ case 12:
+ this.labelErrorCode.Text = "Error 04_12";
+ this.labelMessage1.Text = "PASSWORD : 사용할 수 없는 문자가 포함되어 있습니다";
+ this.labelMessage2.Text = "사용 가능 특수문자 : !@#$%^&*+-.";
+ break;
+ case 13:
+ this.labelErrorCode.Text = "Error 04_13";
+ this.labelMessage1.Text = "PASSWORD : 영문1이상, 숫자1이상, 특수문자1이상";
+ this.labelMessage2.Text = "포함하여 주십시오";
+ break;
+ case 14:
+ this.labelErrorCode.Text = "Error 04_14";
+ this.labelMessage1.Text = "비밀번호를 확인하세요";
+ break;
+ case 15:
+ this.labelErrorCode.Text = "Error 04_15";
+ this.labelMessage1.Text = "PASSWORD : 비밀번호가 만료 되었습니다";
+ break;
+ case 16:
+ this.labelErrorCode.Text = "Error 04_16";
+ this.labelMessage1.Text = "";
+ break;
+ case 17:
+ this.labelErrorCode.Text = "Error 04_17";
+ this.labelMessage1.Text = "";
+ break;
+ case 18:
+ this.labelErrorCode.Text = "Error 04_18";
+ this.labelMessage1.Text = "";
+ break;
+ default:
+ this.labelErrorCode.Text = "Error 04_99";
+ this.labelMessage1.Text = "제조사에 문의하세요";
+ break;
+ }
+ #endregion
+ break;
+ case DataStore.LanguageID.English:
+ #region 영문
+ switch (code)
+ {
+ case 1:
+ this.labelErrorCode.Text = "Error 04_01";
+ this.labelMessage1.Text = "ID not found";
+ break;
+ case 2:
+ this.labelErrorCode.Text = "Error 04_02";
+ this.labelMessage1.Text = "ID : ID already exists";
+ break;
+ case 3:
+ this.labelErrorCode.Text = "Error 04_03";
+ this.labelMessage1.Text = "ID : Please enter 6~20 characters";
+ break;
+ case 4:
+ this.labelErrorCode.Text = "Error 04_04";
+ this.labelMessage1.Text = "ID : Please enter 6~20 characters";
+ break;
+ case 5:
+ this.labelErrorCode.Text = "Error 04_05";
+ this.labelMessage1.Text = "ID : Consecutive(123,321,abc,cba...) or";
+ this.labelMessage2.Text = "identical(111,222,aaa...) characters cannot be used.";
+ break;
+ case 6:
+ this.labelErrorCode.Text = "Error 04_06";
+ this.labelMessage1.Text = "ID : Contains invalid characters";
+ break;
+ case 7:
+ this.labelErrorCode.Text = "Error 04_07";
+ this.labelMessage1.Text = "ID : User account has expired";
+ break;
+ case 8:
+ this.labelErrorCode.Text = "Error 04_08";
+ this.labelMessage1.Text = "PASSWORD : This is the old password";
+ break;
+ case 9:
+ this.labelErrorCode.Text = "Error 04_09";
+ this.labelMessage1.Text = "PASSWORD : Please enter 6~20 characters";
+ break;
+ case 10:
+ this.labelErrorCode.Text = "Error 04_10";
+ this.labelMessage1.Text = "PASSWORD : Please enter 6~20 characters";
+ break;
+ case 11:
+ this.labelErrorCode.Text = "Error 04_11";
+ this.labelMessage1.Text = "PASSWORD : Consecutive(123,321,abc,cba...) or";
+ this.labelMessage2.Text = "identical(111,222,aaa...) characters cannot be used.";
+ break;
+ case 12:
+ this.labelErrorCode.Text = "Error 04_12";
+ this.labelMessage1.Text = "PASSWORD : Contains invalid characters";
+ this.labelMessage2.Text = "Special characters allowed : !@#$%^&*+-.";
+ break;
+ case 13:
+ this.labelErrorCode.Text = "Error 04_13";
+ this.labelMessage1.Text = "PASSWORD : Please include at least one English letter,";
+ this.labelMessage2.Text = "at least one number, and at least one special character";
+ break;
+ case 14:
+ this.labelErrorCode.Text = "Error 04_14";
+ this.labelMessage1.Text = "Check your password";
+ break;
+ case 15:
+ this.labelErrorCode.Text = "Error 04_15";
+ this.labelMessage1.Text = "PASSWORD : Password has expired";
+ break;
+ case 16:
+ this.labelErrorCode.Text = "Error 04_16";
+ this.labelMessage1.Text = "";
+ break;
+ case 17:
+ this.labelErrorCode.Text = "Error 04_17";
+ this.labelMessage1.Text = "";
+ break;
+ case 18:
+ this.labelErrorCode.Text = "Error 04_18";
+ this.labelMessage1.Text = "";
+ break;
+ default:
+ this.labelErrorCode.Text = "Error 04_99";
+ this.labelMessage1.Text = "Please contact a manufacturer";
+ break;
+ }
+ #endregion
+ break;
+ case DataStore.LanguageID.Chinese:
+ #region 중문
+ this.buttonOK.Text = "确认";
+
+ switch (code)
+ {
+ case 1:
+ this.labelErrorCode.Text = "错误 04_01";
+ this.labelMessage1.Text = "未找到 ID";
+ break;
+ case 2:
+ this.labelErrorCode.Text = "错误 04_02";
+ this.labelMessage1.Text = "ID : ID已存在";
+ break;
+ case 3:
+ this.labelErrorCode.Text = "错误 04_03";
+ this.labelMessage1.Text = "ID : 请输入6~20个字符";
+ break;
+ case 4:
+ this.labelErrorCode.Text = "错误 04_04";
+ this.labelMessage1.Text = "ID : 请输入6~20个字符";
+ break;
+ case 5:
+ this.labelErrorCode.Text = "错误 04_05";
+ this.labelMessage1.Text = "ID : 不能使用连续的 (123,321,abc,cba...)";
+ this.labelMessage2.Text = "或相同的 (111,222,aaa...) 字符。";
+ break;
+ case 6:
+ this.labelErrorCode.Text = "错误 04_06";
+ this.labelMessage1.Text = "ID : 它包含无效字符";
+ break;
+ case 7:
+ this.labelErrorCode.Text = "错误 04_07";
+ this.labelMessage1.Text = "ID : 用户帐号已过期";
+ break;
+ case 8:
+ this.labelErrorCode.Text = "错误 04_08";
+ this.labelMessage1.Text = "密码 : 这是旧密码";
+ break;
+ case 9:
+ this.labelErrorCode.Text = "错误 04_09";
+ this.labelMessage1.Text = "密码 : 请输入6~20个字符";
+ break;
+ case 10:
+ this.labelErrorCode.Text = "错误 04_10";
+ this.labelMessage1.Text = "密码 : 请输入6~20个字符";
+ break;
+ case 11:
+ this.labelErrorCode.Text = "错误 04_11";
+ this.labelMessage1.Text = "密码 : 不能使用连续的 (123,321,abc,cba...)";
+ this.labelMessage2.Text = "或相同的 (111,222,aaa...) 字符。";
+ break;
+ case 12:
+ this.labelErrorCode.Text = "错误 04_12";
+ this.labelMessage1.Text = "密码 : 它包含无效字符";
+ this.labelMessage2.Text = "允许使用特殊字符 : !@#$%^&*+-.";
+ break;
+ case 13:
+ this.labelErrorCode.Text = "错误 04_13";
+ this.labelMessage1.Text = "密码 : 请至少包含一个英文字母,";
+ this.labelMessage2.Text = "至少一个数字,至少一个特殊字符";
+ break;
+ case 14:
+ this.labelErrorCode.Text = "错误 04_14";
+ this.labelMessage1.Text = "检查您的密码";
+ break;
+ case 15:
+ this.labelErrorCode.Text = "错误 04_15";
+ this.labelMessage1.Text = "密码 : 密码已过期";
+ break;
+ case 16:
+ this.labelErrorCode.Text = "错误 04_16";
+ this.labelMessage1.Text = "";
+ break;
+ case 17:
+ this.labelErrorCode.Text = "错误 04_17";
+ this.labelMessage1.Text = "";
+ break;
+ case 18:
+ this.labelErrorCode.Text = "错误 04_18";
+ this.labelMessage1.Text = "";
+ break;
+ default:
+ this.labelErrorCode.Text = "错误 04_99";
+ this.labelMessage1.Text = "请联系制造商";
+ break;
+ }
+ #endregion
+ break;
+ case DataStore.LanguageID.Czech:
+ #region 체코어
+ switch (code)
+ {
+ case 1:
+ this.labelErrorCode.Text = "Chybě 04_01";
+ this.labelMessage1.Text = "";
+ break;
+ case 2:
+ this.labelErrorCode.Text = "Chybě 04_02";
+ this.labelMessage1.Text = "";
+ break;
+ case 3:
+ this.labelErrorCode.Text = "Chybě 04_03";
+ this.labelMessage1.Text = "";
+ break;
+ case 4:
+ this.labelErrorCode.Text = "Chybě 04_04";
+ this.labelMessage1.Text = "";
+ break;
+ case 5:
+ this.labelErrorCode.Text = "Chybě 04_05";
+ this.labelMessage1.Text = "";
+ break;
+ case 6:
+ this.labelErrorCode.Text = "Chybě 04_06";
+ this.labelMessage1.Text = "";
+ break;
+ case 7:
+ this.labelErrorCode.Text = "Chybě 04_07";
+ this.labelMessage1.Text = "";
+ break;
+ case 8:
+ this.labelErrorCode.Text = "Chybě 04_08";
+ this.labelMessage1.Text = "";
+ break;
+ case 9:
+ this.labelErrorCode.Text = "Chybě 04_09";
+ this.labelMessage1.Text = "";
+ break;
+ case 10:
+ this.labelErrorCode.Text = "Chybě 04_10";
+ this.labelMessage1.Text = "";
+ break;
+ case 11:
+ this.labelErrorCode.Text = "Chybě 04_11";
+ this.labelMessage1.Text = "";
+ break;
+ case 12:
+ this.labelErrorCode.Text = "Chybě 04_12";
+ this.labelMessage1.Text = "";
+ break;
+ case 13:
+ this.labelErrorCode.Text = "Chybě 04_13";
+ this.labelMessage1.Text = "";
+ break;
+ case 14:
+ this.labelErrorCode.Text = "Chybě 04_14";
+ this.labelMessage1.Text = "";
+ break;
+ case 15:
+ this.labelErrorCode.Text = "Chybě 04_15";
+ this.labelMessage1.Text = "";
+ break;
+ case 16:
+ this.labelErrorCode.Text = "Chybě 04_16";
+ this.labelMessage1.Text = "";
+ break;
+ case 17:
+ this.labelErrorCode.Text = "Chybě 04_17";
+ this.labelMessage1.Text = "";
+ break;
+ case 18:
+ this.labelErrorCode.Text = "Chybě 04_18";
+ this.labelMessage1.Text = "";
+ break;
+ default:
+ this.labelErrorCode.Text = "Chybě 04_99";
+ this.labelMessage1.Text = "Kontaktujte výrobce";
+ this.labelMessage2.Text = "";
+ break;
+ }
+ #endregion
+ break;
+ case DataStore.LanguageID.German:
+ #region 독일어
+ this.buttonOK.Text = "Bestätigen";
+
+ switch (code)
+ {
+ case 1:
+ this.labelErrorCode.Text = "Fehler 04_01";
+ this.labelMessage1.Text = "ID nicht gefunden";
+ break;
+ case 2:
+ this.labelErrorCode.Text = "Fehler 04_02";
+ this.labelMessage1.Text = "ID : ID existiert bereits";
+ break;
+ case 3:
+ this.labelErrorCode.Text = "Fehler 04_03";
+ this.labelMessage1.Text = "ID : Bitte geben Sie 6~20 Zeichen ein";
+ break;
+ case 4:
+ this.labelErrorCode.Text = "Fehler 04_04";
+ this.labelMessage1.Text = "ID : Bitte geben Sie 6~20 Zeichen ein";
+ break;
+ case 5:
+ this.labelErrorCode.Text = "Fehler 04_05";
+ this.labelMessage1.Text = "ID : Aufeinanderfolgende (123,321,abc,cba...)";
+ this.labelMessage2.Text = "oder identische (111,222,aaa...) Zeichen können nicht verwendet werden.";
+ break;
+ case 6:
+ this.labelErrorCode.Text = "Fehler 04_06";
+ this.labelMessage1.Text = "ID : Es enthält ungültige Zeichen";
+ break;
+ case 7:
+ this.labelErrorCode.Text = "Fehler 04_07";
+ this.labelMessage1.Text = "ID : Benutzerkonto ist abgelaufen";
+ break;
+ case 8:
+ this.labelErrorCode.Text = "Fehler 04_08";
+ this.labelMessage1.Text = "Passwort : Dies ist das alte Passwort";
+ break;
+ case 9:
+ this.labelErrorCode.Text = "Fehler 04_09";
+ this.labelMessage1.Text = "Passwort : Bitte geben Sie 6~20 Zeichen ein";
+ break;
+ case 10:
+ this.labelErrorCode.Text = "Fehler 04_10";
+ this.labelMessage1.Text = "Passwort : Bitte geben Sie 6~20 Zeichen ein";
+ break;
+ case 11:
+ this.labelErrorCode.Text = "Fehler 04_11";
+ this.labelMessage1.Text = "Passwort : Aufeinanderfolgende (123,321,abc,cba...)";
+ this.labelMessage2.Text = "oder identische (111,222,aaa...) Zeichen können nicht verwendet werden.";
+ break;
+ case 12:
+ this.labelErrorCode.Text = "Fehler 04_12";
+ this.labelMessage1.Text = "Passwort : Es enthält ungültige Zeichen";
+ this.labelMessage2.Text = "Sonderzeichen erlaubt : !@#$%^&*+-.";
+ break;
+ case 13:
+ this.labelErrorCode.Text = "Fehler 04_13";
+ this.labelMessage1.Text = "Passwort : Bitte geben Sie mindestens einen";
+ this.labelMessage2.Text = "englischen Buchstaben, mindestens eine Ziffer und mindestens ein Sonderzeichen an";
+ break;
+ case 14:
+ this.labelErrorCode.Text = "Fehler 04_14";
+ this.labelMessage1.Text = "Überprüfen Sie Ihr Passwort";
+ break;
+ case 15:
+ this.labelErrorCode.Text = "Fehler 04_15";
+ this.labelMessage1.Text = "Passwort : Passwort ist abgelaufen";
+ break;
+ case 16:
+ this.labelErrorCode.Text = "Fehler 04_16";
+ this.labelMessage1.Text = "";
+ break;
+ case 17:
+ this.labelErrorCode.Text = "Fehler 04_17";
+ this.labelMessage1.Text = "";
+ break;
+ case 18:
+ this.labelErrorCode.Text = "Fehler 04_18";
+ this.labelMessage1.Text = "";
+ break;
+ default:
+ this.labelErrorCode.Text = "Fehler 04_99";
+ this.labelMessage1.Text = "Bitte wenden Sie sich an einen Hersteller";
+ break;
+ }
+ #endregion
+ break;
+ default:
+ break;
+ }
+ }
+ public DialogFormMessage(DataStore.MessageBoxIcon icon, string code, string message1, string message2, int autoClose_sec)
+ {
+ InitializeComponent();
+
+ this.timerAutoClose.Enabled = false;
+
+ this.pictureBoxAsterisk.Visible = false;
+ this.pictureBoxExclamation.Visible = false;
+ this.pictureBoxHand.Visible = false;
+ this.pictureBoxQuestion.Visible = false;
+
+ switch (icon)
+ {
+ case DataStore.MessageBoxIcon.Hand:
+ this.pictureBoxHand.Visible = true;
+ this.pictureBoxHand.BringToFront();
+ break;
+ case DataStore.MessageBoxIcon.Question:
+ this.pictureBoxQuestion.Visible = true;
+ this.pictureBoxQuestion.BringToFront();
+ break;
+ case DataStore.MessageBoxIcon.Exclamation:
+ this.pictureBoxExclamation.Visible = true;
+ this.pictureBoxExclamation.BringToFront();
+ break;
+ case DataStore.MessageBoxIcon.Asterisk:
+ this.pictureBoxAsterisk.Visible = true;
+ this.pictureBoxAsterisk.BringToFront();
+ break;
+ default:
+ break;
+ }
+
+ this.labelErrorCode.Text = code;
+ this.labelMessage1.Text = message1;
+ this.labelMessage2.Text = message2;
+
+ if (autoClose_sec != 0)
+ {
+ this.timerAutoClose.Interval = autoClose_sec * 1000;
+ this.timerAutoClose.Enabled = true;
+ }
+ }
#endregion
#region Property
@@ -500,6 +1966,12 @@ namespace INT89DB_26.DialogForms
this.DialogResult = DialogResult.OK;
this.Close();
}
+ private void timerAutoClose_Tick(object sender, EventArgs e)
+ {
+ this.timerAutoClose.Enabled = false;
+ this.DialogResult = DialogResult.OK;
+ this.Close();
+ }
#endregion
}
}
\ No newline at end of file
diff --git a/INT89DB_26/DialogForms/DialogFormMessage.designer.cs b/INT89DB_26/DialogForms/DialogFormMessage.designer.cs
index ddbc34f..fe2ebec 100644
--- a/INT89DB_26/DialogForms/DialogFormMessage.designer.cs
+++ b/INT89DB_26/DialogForms/DialogFormMessage.designer.cs
@@ -29,53 +29,24 @@
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DialogFormMessage));
- this.panel1 = new System.Windows.Forms.Panel();
- this.pictureBox1 = new System.Windows.Forms.PictureBox();
- this.labelMessage2 = new System.Windows.Forms.Label();
- this.labelMessage1 = new System.Windows.Forms.Label();
this.buttonOK = new System.Windows.Forms.Button();
- this.labelErrorCode = new System.Windows.Forms.Label();
- this.panel1.SuspendLayout();
+ this.smartForm1 = new SmartX.SmartForm();
+ this.labelErrorCode = new SmartX.SmartLabel();
+ this.pictureBoxAsterisk = new System.Windows.Forms.PictureBox();
+ this.pictureBoxHand = new System.Windows.Forms.PictureBox();
+ this.pictureBoxExclamation = new System.Windows.Forms.PictureBox();
+ this.labelMessage2 = new SmartX.SmartLabel();
+ this.labelMessage1 = new SmartX.SmartLabel();
+ this.pictureBoxQuestion = new System.Windows.Forms.PictureBox();
+ this.timerAutoClose = new System.Windows.Forms.Timer();
+ ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit();
this.SuspendLayout();
//
- // panel1
- //
- this.panel1.BackColor = System.Drawing.Color.White;
- this.panel1.Controls.Add(this.pictureBox1);
- this.panel1.Controls.Add(this.labelMessage2);
- this.panel1.Controls.Add(this.labelMessage1);
- this.panel1.Location = new System.Drawing.Point(15, 34);
- this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(420, 95);
- //
- // pictureBox1
- //
- this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));
- this.pictureBox1.Location = new System.Drawing.Point(11, 20);
- this.pictureBox1.Name = "pictureBox1";
- this.pictureBox1.Size = new System.Drawing.Size(50, 50);
- //
- // labelMessage2
- //
- this.labelMessage2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
- this.labelMessage2.Location = new System.Drawing.Point(67, 51);
- this.labelMessage2.Name = "labelMessage2";
- this.labelMessage2.Size = new System.Drawing.Size(350, 20);
- this.labelMessage2.Text = "COM2 port problem. Please contact a manufacturer.";
- //
- // labelMessage1
- //
- this.labelMessage1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
- this.labelMessage1.Location = new System.Drawing.Point(67, 20);
- this.labelMessage1.Name = "labelMessage1";
- this.labelMessage1.Size = new System.Drawing.Size(350, 20);
- this.labelMessage1.Text = "COM2 port problem. Please contact a manufacturer.";
- //
// buttonOK
//
- this.buttonOK.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
- this.buttonOK.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
- this.buttonOK.ForeColor = System.Drawing.Color.White;
+ this.buttonOK.BackColor = System.Drawing.Color.WhiteSmoke;
+ this.buttonOK.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
+ this.buttonOK.ForeColor = System.Drawing.Color.Black;
this.buttonOK.Location = new System.Drawing.Point(335, 135);
this.buttonOK.Name = "buttonOK";
this.buttonOK.Size = new System.Drawing.Size(100, 25);
@@ -84,13 +55,117 @@
this.buttonOK.Text = "OK";
this.buttonOK.Click += new System.EventHandler(this.buttonOK_Click);
//
+ // smartForm1
+ //
+ this.smartForm1.CenterLocation = false;
+ this.smartForm1.Image = ((System.Drawing.Image)(resources.GetObject("smartForm1.Image")));
+ this.smartForm1.LCDDirection = SmartX.SmartForm.LCDDIRECTIONS.HORIZONTAL;
+ this.smartForm1.LCDSize = SmartX.SmartForm.LCDRESOLUTION.CUSTOMIZING;
+ this.smartForm1.Location = new System.Drawing.Point(0, 0);
+ this.smartForm1.MainForm = null;
+ this.smartForm1.Mode = SmartX.SmartForm.RUNMODE.RUNTIME;
+ this.smartForm1.MouseCursor = SmartX.SmartForm.OnOff.OFF;
+ this.smartForm1.Name = "smartForm1";
+ this.smartForm1.Size = new System.Drawing.Size(450, 170);
+ this.smartForm1.SpecialFunctionClickPointSize = 100;
+ this.smartForm1.SuspendLayoutInterval = 1;
+ //
// labelErrorCode
//
- this.labelErrorCode.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
- this.labelErrorCode.Location = new System.Drawing.Point(15, 11);
+ this.labelErrorCode.BackColor = System.Drawing.Color.Gainsboro;
+ this.labelErrorCode.BackPictureBox = this.smartForm1;
+ this.labelErrorCode.BackPictureBox1 = null;
+ this.labelErrorCode.BackPictureBox2 = null;
+ this.labelErrorCode.BorderColor = System.Drawing.Color.Black;
+ this.labelErrorCode.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.labelErrorCode.InitVisible = true;
+ this.labelErrorCode.LineSpacing = 0F;
+ this.labelErrorCode.Location = new System.Drawing.Point(12, 0);
this.labelErrorCode.Name = "labelErrorCode";
- this.labelErrorCode.Size = new System.Drawing.Size(350, 20);
- this.labelErrorCode.Text = "Error 0";
+ this.labelErrorCode.Size = new System.Drawing.Size(438, 32);
+ this.labelErrorCode.TabIndex = 10;
+ this.labelErrorCode.Text = " Error 0";
+ this.labelErrorCode.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left;
+ this.labelErrorCode.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
+ this.labelErrorCode.Wordwrap = false;
+ //
+ // pictureBoxAsterisk
+ //
+ this.pictureBoxAsterisk.BackColor = System.Drawing.Color.Silver;
+ this.pictureBoxAsterisk.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxAsterisk.Image")));
+ this.pictureBoxAsterisk.Location = new System.Drawing.Point(22, 60);
+ this.pictureBoxAsterisk.Name = "pictureBoxAsterisk";
+ this.pictureBoxAsterisk.Size = new System.Drawing.Size(50, 50);
+ this.pictureBoxAsterisk.Visible = false;
+ //
+ // pictureBoxHand
+ //
+ this.pictureBoxHand.BackColor = System.Drawing.Color.Silver;
+ this.pictureBoxHand.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxHand.Image")));
+ this.pictureBoxHand.Location = new System.Drawing.Point(22, 60);
+ this.pictureBoxHand.Name = "pictureBoxHand";
+ this.pictureBoxHand.Size = new System.Drawing.Size(50, 50);
+ this.pictureBoxHand.Visible = false;
+ //
+ // pictureBoxExclamation
+ //
+ this.pictureBoxExclamation.BackColor = System.Drawing.Color.Silver;
+ this.pictureBoxExclamation.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxExclamation.Image")));
+ this.pictureBoxExclamation.Location = new System.Drawing.Point(22, 60);
+ this.pictureBoxExclamation.Name = "pictureBoxExclamation";
+ this.pictureBoxExclamation.Size = new System.Drawing.Size(50, 50);
+ //
+ // labelMessage2
+ //
+ this.labelMessage2.BackPictureBox = this.smartForm1;
+ this.labelMessage2.BackPictureBox1 = null;
+ this.labelMessage2.BackPictureBox2 = null;
+ this.labelMessage2.BorderColor = System.Drawing.Color.Black;
+ this.labelMessage2.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.labelMessage2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
+ this.labelMessage2.InitVisible = true;
+ this.labelMessage2.LineSpacing = 0F;
+ this.labelMessage2.Location = new System.Drawing.Point(78, 90);
+ this.labelMessage2.Name = "labelMessage2";
+ this.labelMessage2.Size = new System.Drawing.Size(350, 20);
+ this.labelMessage2.TabIndex = 35;
+ this.labelMessage2.Text = "COM2 port problem. Please contact a manufacturer.";
+ this.labelMessage2.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left;
+ this.labelMessage2.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
+ this.labelMessage2.Wordwrap = false;
+ //
+ // labelMessage1
+ //
+ this.labelMessage1.BackPictureBox = this.smartForm1;
+ this.labelMessage1.BackPictureBox1 = null;
+ this.labelMessage1.BackPictureBox2 = null;
+ this.labelMessage1.BorderColor = System.Drawing.Color.Black;
+ this.labelMessage1.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.labelMessage1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
+ this.labelMessage1.InitVisible = true;
+ this.labelMessage1.LineSpacing = 0F;
+ this.labelMessage1.Location = new System.Drawing.Point(78, 60);
+ this.labelMessage1.Name = "labelMessage1";
+ this.labelMessage1.Size = new System.Drawing.Size(350, 20);
+ this.labelMessage1.TabIndex = 34;
+ this.labelMessage1.Text = "COM2 port problem. Please contact a manufacturer.";
+ this.labelMessage1.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left;
+ this.labelMessage1.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
+ this.labelMessage1.Wordwrap = false;
+ //
+ // pictureBoxQuestion
+ //
+ this.pictureBoxQuestion.BackColor = System.Drawing.Color.Silver;
+ this.pictureBoxQuestion.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxQuestion.Image")));
+ this.pictureBoxQuestion.Location = new System.Drawing.Point(22, 60);
+ this.pictureBoxQuestion.Name = "pictureBoxQuestion";
+ this.pictureBoxQuestion.Size = new System.Drawing.Size(50, 50);
+ this.pictureBoxQuestion.Visible = false;
+ //
+ // timerAutoClose
+ //
+ this.timerAutoClose.Interval = 1000;
+ this.timerAutoClose.Tick += new System.EventHandler(this.timerAutoClose_Tick);
//
// DialogFormMessage
//
@@ -99,24 +174,34 @@
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(130)))), ((int)(((byte)(200)))), ((int)(((byte)(250)))));
this.ClientSize = new System.Drawing.Size(450, 170);
this.ControlBox = false;
- this.Controls.Add(this.panel1);
- this.Controls.Add(this.buttonOK);
+ this.Controls.Add(this.pictureBoxAsterisk);
+ this.Controls.Add(this.pictureBoxHand);
+ this.Controls.Add(this.pictureBoxExclamation);
+ this.Controls.Add(this.labelMessage2);
+ this.Controls.Add(this.labelMessage1);
+ this.Controls.Add(this.pictureBoxQuestion);
this.Controls.Add(this.labelErrorCode);
+ this.Controls.Add(this.buttonOK);
+ this.Controls.Add(this.smartForm1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.Name = "DialogFormMessage";
this.Text = "DialogFormMessage1";
- this.panel1.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).EndInit();
this.ResumeLayout(false);
}
#endregion
- private System.Windows.Forms.Panel panel1;
- private System.Windows.Forms.PictureBox pictureBox1;
- private System.Windows.Forms.Label labelMessage2;
- private System.Windows.Forms.Label labelMessage1;
private System.Windows.Forms.Button buttonOK;
- private System.Windows.Forms.Label labelErrorCode;
+ private SmartX.SmartForm smartForm1;
+ private SmartX.SmartLabel labelErrorCode;
+ private System.Windows.Forms.PictureBox pictureBoxAsterisk;
+ private System.Windows.Forms.PictureBox pictureBoxHand;
+ private System.Windows.Forms.PictureBox pictureBoxExclamation;
+ private SmartX.SmartLabel labelMessage2;
+ private SmartX.SmartLabel labelMessage1;
+ private System.Windows.Forms.PictureBox pictureBoxQuestion;
+ private System.Windows.Forms.Timer timerAutoClose;
}
}
\ No newline at end of file
diff --git a/INT89DB_26/DialogForms/DialogFormMessage.resx b/INT89DB_26/DialogForms/DialogFormMessage.resx
index bd0aa44..6a4bbad 100644
--- a/INT89DB_26/DialogForms/DialogFormMessage.resx
+++ b/INT89DB_26/DialogForms/DialogFormMessage.resx
@@ -118,75 +118,376 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
+
+ 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
+ gg==
+
+
+
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
- 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
+ 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
+ 0AAAAABJRU5ErkJggg==
+
+
+
+
+ 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
+ AAAAAElFTkSuQmCC
+
+
+
+ 17, 17
+
WEBPAD
diff --git a/INT89DB_26/DialogForms/DialogFormNumKeyPad.designer.cs b/INT89DB_26/DialogForms/DialogFormNumKeyPad.designer.cs
index 094548c..5e0099c 100644
--- a/INT89DB_26/DialogForms/DialogFormNumKeyPad.designer.cs
+++ b/INT89DB_26/DialogForms/DialogFormNumKeyPad.designer.cs
@@ -28,6 +28,7 @@
///
private void InitializeComponent()
{
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DialogFormNumKeyPad));
this.labelScreen = new System.Windows.Forms.Label();
this.buttonEnter = new System.Windows.Forms.Button();
this.buttonCancel = new System.Windows.Forms.Button();
@@ -43,6 +44,8 @@
this.buttonNumber4 = new System.Windows.Forms.Button();
this.buttonNumber1 = new System.Windows.Forms.Button();
this.label1 = new System.Windows.Forms.Label();
+ this.smartForm1 = new SmartX.SmartForm();
+ ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit();
this.SuspendLayout();
//
// labelScreen
@@ -226,13 +229,29 @@
//
// label1
//
+ this.label1.BackColor = System.Drawing.Color.Silver;
this.label1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.label1.Location = new System.Drawing.Point(3, 3);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(100, 20);
this.label1.Text = "keypad";
//
- // DialogFormNumKeyPad1
+ // smartForm1
+ //
+ this.smartForm1.CenterLocation = false;
+ this.smartForm1.Image = ((System.Drawing.Image)(resources.GetObject("smartForm1.Image")));
+ this.smartForm1.LCDDirection = SmartX.SmartForm.LCDDIRECTIONS.HORIZONTAL;
+ this.smartForm1.LCDSize = SmartX.SmartForm.LCDRESOLUTION.CUSTOMIZING;
+ this.smartForm1.Location = new System.Drawing.Point(0, 0);
+ this.smartForm1.MainForm = null;
+ this.smartForm1.Mode = SmartX.SmartForm.RUNMODE.RUNTIME;
+ this.smartForm1.MouseCursor = SmartX.SmartForm.OnOff.OFF;
+ this.smartForm1.Name = "smartForm1";
+ this.smartForm1.Size = new System.Drawing.Size(250, 443);
+ this.smartForm1.SpecialFunctionClickPointSize = 100;
+ this.smartForm1.SuspendLayoutInterval = 1;
+ //
+ // DialogFormNumKeyPad
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Dpi;
@@ -254,9 +273,11 @@
this.Controls.Add(this.buttonNumber4);
this.Controls.Add(this.buttonNumber1);
this.Controls.Add(this.label1);
+ this.Controls.Add(this.smartForm1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
- this.Name = "DialogFormNumKeyPad1";
+ this.Name = "DialogFormNumKeyPad";
this.Text = "DialogFormNumKeyPad1";
+ ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).EndInit();
this.ResumeLayout(false);
}
@@ -278,5 +299,6 @@
private System.Windows.Forms.Button buttonNumber4;
private System.Windows.Forms.Button buttonNumber1;
private System.Windows.Forms.Label label1;
+ private SmartX.SmartForm smartForm1;
}
}
\ No newline at end of file
diff --git a/INT89DB_26/DialogForms/DialogFormNumKeyPad.resx b/INT89DB_26/DialogForms/DialogFormNumKeyPad.resx
index a721046..d34edcc 100644
--- a/INT89DB_26/DialogForms/DialogFormNumKeyPad.resx
+++ b/INT89DB_26/DialogForms/DialogFormNumKeyPad.resx
@@ -117,6 +117,88 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+
+ iVBORw0KGgoAAAANSUhEUgAAAPoAAAG7CAIAAABl/R8XAAAABGdBTUEAALGOfPtRkwAAACBjSFJNAACH
+ DwAAjA8AAP1SAACBQAAAfXkAAOmLAAA85QAAGcxzPIV3AAAKOWlDQ1BQaG90b3Nob3AgSUNDIHByb2Zp
+ bGUAAEjHnZZ3VFTXFofPvXd6oc0w0hl6ky4wgPQuIB0EURhmBhjKAMMMTWyIqEBEEREBRZCggAGjoUis
+ iGIhKKhgD0gQUGIwiqioZEbWSnx5ee/l5ffHvd/aZ+9z99l7n7UuACRPHy4vBZYCIJkn4Ad6ONNXhUfQ
+ sf0ABniAAaYAMFnpqb5B7sFAJC83F3q6yAn8i94MAUj8vmXo6U+ng/9P0qxUvgAAyF/E5mxOOkvE+SJO
+ yhSkiu0zIqbGJIoZRomZL0pQxHJijlvkpZ99FtlRzOxkHlvE4pxT2clsMfeIeHuGkCNixEfEBRlcTqaI
+ b4tYM0mYzBXxW3FsMoeZDgCKJLYLOKx4EZuImMQPDnQR8XIAcKS4LzjmCxZwsgTiQ7mkpGbzuXHxArou
+ S49uam3NoHtyMpM4AoGhP5OVyOSz6S4pyalMXjYAi2f+LBlxbemiIluaWltaGpoZmX5RqP+6+Dcl7u0i
+ vQr43DOI1veH7a/8UuoAYMyKarPrD1vMfgA6tgIgd/8Pm+YhACRFfWu/8cV5aOJ5iRcIUm2MjTMzM424
+ HJaRuKC/6386/A198T0j8Xa/l4fuyollCpMEdHHdWClJKUI+PT2VyeLQDf88xP848K/zWBrIieXwOTxR
+ RKhoyri8OFG7eWyugJvCo3N5/6mJ/zDsT1qca5Eo9Z8ANcoISN2gAuTnPoCiEAESeVDc9d/75oMPBeKb
+ F6Y6sTj3nwX9+65wifiRzo37HOcSGExnCfkZi2viawnQgAAkARXIAxWgAXSBITADVsAWOAI3sAL4gWAQ
+ DtYCFogHyYAPMkEu2AwKQBHYBfaCSlAD6kEjaAEnQAc4DS6Ay+A6uAnugAdgBIyD52AGvAHzEARhITJE
+ geQhVUgLMoDMIAZkD7lBPlAgFA5FQ3EQDxJCudAWqAgqhSqhWqgR+hY6BV2ArkID0D1oFJqCfoXewwhM
+ gqmwMqwNG8MM2An2hoPhNXAcnAbnwPnwTrgCroOPwe3wBfg6fAcegZ/DswhAiAgNUUMMEQbigvghEUgs
+ wkc2IIVIOVKHtCBdSC9yCxlBppF3KAyKgqKjDFG2KE9UCIqFSkNtQBWjKlFHUe2oHtQt1ChqBvUJTUYr
+ oQ3QNmgv9Cp0HDoTXYAuRzeg29CX0HfQ4+g3GAyGhtHBWGE8MeGYBMw6TDHmAKYVcx4zgBnDzGKxWHms
+ AdYO64dlYgXYAux+7DHsOewgdhz7FkfEqeLMcO64CBwPl4crxzXhzuIGcRO4ebwUXgtvg/fDs/HZ+BJ8
+ Pb4LfwM/jp8nSBN0CHaEYEICYTOhgtBCuER4SHhFJBLVidbEACKXuIlYQTxOvEIcJb4jyZD0SS6kSJKQ
+ tJN0hHSedI/0ikwma5MdyRFkAXknuZF8kfyY/FaCImEk4SXBltgoUSXRLjEo8UISL6kl6SS5VjJHslzy
+ pOQNyWkpvJS2lIsUU2qDVJXUKalhqVlpirSptJ90snSxdJP0VelJGayMtoybDFsmX+awzEWZMQpC0aC4
+ UFiULZR6yiXKOBVD1aF6UROoRdRvqP3UGVkZ2WWyobJZslWyZ2RHaAhNm+ZFS6KV0E7QhmjvlygvcVrC
+ WbJjScuSwSVzcopyjnIcuUK5Vrk7cu/l6fJu8onyu+U75B8poBT0FQIUMhUOKlxSmFakKtoqshQLFU8o
+ 3leClfSVApXWKR1W6lOaVVZR9lBOVd6vfFF5WoWm4qiSoFKmclZlSpWiaq/KVS1TPaf6jC5Ld6In0Svo
+ PfQZNSU1TzWhWq1av9q8uo56iHqeeqv6Iw2CBkMjVqNMo1tjRlNV01czV7NZ874WXouhFa+1T6tXa05b
+ RztMe5t2h/akjpyOl06OTrPOQ12yroNumm6d7m09jB5DL1HvgN5NfVjfQj9ev0r/hgFsYGnANThgMLAU
+ vdR6KW9p3dJhQ5Khk2GGYbPhqBHNyMcoz6jD6IWxpnGE8W7jXuNPJhYmSSb1Jg9MZUxXmOaZdpn+aqZv
+ xjKrMrttTjZ3N99o3mn+cpnBMs6yg8vuWlAsfC22WXRbfLS0suRbtlhOWWlaRVtVWw0zqAx/RjHjijXa
+ 2tl6o/Vp63c2ljYCmxM2v9ga2ibaNtlOLtdZzllev3zMTt2OaVdrN2JPt4+2P2Q/4qDmwHSoc3jiqOHI
+ dmxwnHDSc0pwOub0wtnEme/c5jznYuOy3uW8K+Lq4Vro2u8m4xbiVun22F3dPc692X3Gw8Jjncd5T7Sn
+ t+duz2EvZS+WV6PXzAqrFetX9HiTvIO8K72f+Oj78H26fGHfFb57fB+u1FrJW9nhB/y8/Pb4PfLX8U/z
+ /z4AE+AfUBXwNNA0MDewN4gSFBXUFPQm2Dm4JPhBiG6IMKQ7VDI0MrQxdC7MNaw0bGSV8ar1q66HK4Rz
+ wzsjsBGhEQ0Rs6vdVu9dPR5pEVkQObRGZ03WmqtrFdYmrT0TJRnFjDoZjY4Oi26K/sD0Y9YxZ2O8Yqpj
+ ZlgurH2s52xHdhl7imPHKeVMxNrFlsZOxtnF7YmbineIL4+f5rpwK7kvEzwTahLmEv0SjyQuJIUltSbj
+ kqOTT/FkeIm8nhSVlKyUgVSD1ILUkTSbtL1pM3xvfkM6lL4mvVNAFf1M9Ql1hVuFoxn2GVUZbzNDM09m
+ SWfxsvqy9bN3ZE/kuOd8vQ61jrWuO1ctd3Pu6Hqn9bUboA0xG7o3amzM3zi+yWPT0c2EzYmbf8gzySvN
+ e70lbEtXvnL+pvyxrR5bmwskCvgFw9tst9VsR23nbu/fYb5j/45PhezCa0UmReVFH4pZxde+Mv2q4quF
+ nbE7+0ssSw7uwuzi7Rra7bD7aKl0aU7p2B7fPe1l9LLCstd7o/ZeLV9WXrOPsE+4b6TCp6Jzv+b+Xfs/
+ VMZX3qlyrmqtVqreUT13gH1g8KDjwZYa5ZqimveHuIfu1nrUttdp15UfxhzOOPy0PrS+92vG140NCg1F
+ DR+P8I6MHA082tNo1djYpNRU0gw3C5unjkUeu/mN6zedLYYtta201qLj4Ljw+LNvo78dOuF9ovsk42TL
+ d1rfVbdR2grbofbs9pmO+I6RzvDOgVMrTnV32Xa1fW/0/ZHTaqerzsieKTlLOJt/duFczrnZ86nnpy/E
+ XRjrjup+cHHVxds9AT39l7wvXbnsfvlir1PvuSt2V05ftbl66hrjWsd1y+vtfRZ9bT9Y/NDWb9nffsPq
+ RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
+ lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
+ f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
+ j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAABwVJREFUeF7t0kEBgDAA
+ xDCETxzSeNxU0ERDngMZuhNyu7/wa3uuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXt+u0OB7mSc8wEowgfcz9GVkAAAAABJRU5E
+ rkJggg==
+
+
WEBPAD
diff --git a/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.designer.cs b/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.designer.cs
index ba01e0d..fe60f8e 100644
--- a/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.designer.cs
+++ b/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.designer.cs
@@ -28,6 +28,7 @@
///
private void InitializeComponent()
{
+ System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DialogFormPasswordKeyPad1));
this.labelScreen = new System.Windows.Forms.Label();
this.buttonEnter = new System.Windows.Forms.Button();
this.buttonNumber9 = new System.Windows.Forms.Button();
@@ -42,6 +43,8 @@
this.buttonNumber4 = new System.Windows.Forms.Button();
this.buttonNumber1 = new System.Windows.Forms.Button();
this.labelSubject = new System.Windows.Forms.Label();
+ this.smartForm1 = new SmartX.SmartForm();
+ ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit();
this.SuspendLayout();
//
// labelScreen
@@ -212,12 +215,28 @@
//
// labelSubject
//
+ this.labelSubject.BackColor = System.Drawing.Color.Silver;
this.labelSubject.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.labelSubject.Location = new System.Drawing.Point(3, 3);
this.labelSubject.Name = "labelSubject";
this.labelSubject.Size = new System.Drawing.Size(100, 20);
this.labelSubject.Text = "Password";
//
+ // smartForm1
+ //
+ this.smartForm1.CenterLocation = false;
+ this.smartForm1.Image = ((System.Drawing.Image)(resources.GetObject("smartForm1.Image")));
+ this.smartForm1.LCDDirection = SmartX.SmartForm.LCDDIRECTIONS.HORIZONTAL;
+ this.smartForm1.LCDSize = SmartX.SmartForm.LCDRESOLUTION.CUSTOMIZING;
+ this.smartForm1.Location = new System.Drawing.Point(0, 0);
+ this.smartForm1.MainForm = null;
+ this.smartForm1.Mode = SmartX.SmartForm.RUNMODE.RUNTIME;
+ this.smartForm1.MouseCursor = SmartX.SmartForm.OnOff.OFF;
+ this.smartForm1.Name = "smartForm1";
+ this.smartForm1.Size = new System.Drawing.Size(250, 390);
+ this.smartForm1.SpecialFunctionClickPointSize = 100;
+ this.smartForm1.SuspendLayoutInterval = 1;
+ //
// DialogFormPasswordKeyPad1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
@@ -239,9 +258,11 @@
this.Controls.Add(this.buttonNumber4);
this.Controls.Add(this.buttonNumber1);
this.Controls.Add(this.labelSubject);
+ this.Controls.Add(this.smartForm1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.Name = "DialogFormPasswordKeyPad1";
this.Text = "DialogFormPasswordKeyPad1";
+ ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).EndInit();
this.ResumeLayout(false);
}
@@ -262,5 +283,6 @@
private System.Windows.Forms.Button buttonNumber4;
private System.Windows.Forms.Button buttonNumber1;
private System.Windows.Forms.Label labelSubject;
+ private SmartX.SmartForm smartForm1;
}
}
\ No newline at end of file
diff --git a/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.resx b/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.resx
index a721046..142d49b 100644
--- a/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.resx
+++ b/INT89DB_26/DialogForms/DialogFormPasswordKeyPad1.resx
@@ -117,6 +117,84 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+
+ 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
+ j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAABjFJREFUeF7t0kEBgDAA
+ xDCETxzSeNxU0ERDngMZuhNyu7/wa3uuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuuOwl7rjsJe647CXuu
+ Owl7frtDge5knPMB9Ug1gPIHoDoAAAAASUVORK5CYII=
+
+
WEBPAD
diff --git a/INT89DB_26/DialogForms/DialogFormYesNo.designer.cs b/INT89DB_26/DialogForms/DialogFormYesNo.designer.cs
index 1ef4000..4d3012e 100644
--- a/INT89DB_26/DialogForms/DialogFormYesNo.designer.cs
+++ b/INT89DB_26/DialogForms/DialogFormYesNo.designer.cs
@@ -30,20 +30,23 @@
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(DialogFormYesNo));
this.buttonNo = new System.Windows.Forms.Button();
- this.labelErrorCode = new System.Windows.Forms.Label();
- this.pictureBox1 = new System.Windows.Forms.PictureBox();
- this.panel1 = new System.Windows.Forms.Panel();
this.buttonYes = new System.Windows.Forms.Button();
- this.labelMessage2 = new System.Windows.Forms.Label();
- this.labelMessage1 = new System.Windows.Forms.Label();
- this.panel1.SuspendLayout();
+ this.pictureBoxAsterisk = new System.Windows.Forms.PictureBox();
+ this.pictureBoxExclamation = new System.Windows.Forms.PictureBox();
+ this.pictureBoxHand = new System.Windows.Forms.PictureBox();
+ this.labelMessage2 = new SmartX.SmartLabel();
+ this.smartForm1 = new SmartX.SmartForm();
+ this.labelMessage1 = new SmartX.SmartLabel();
+ this.pictureBoxQuestion = new System.Windows.Forms.PictureBox();
+ this.labelErrorCode = new SmartX.SmartLabel();
+ ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit();
this.SuspendLayout();
//
// buttonNo
//
- this.buttonNo.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
- this.buttonNo.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
- this.buttonNo.ForeColor = System.Drawing.Color.White;
+ this.buttonNo.BackColor = System.Drawing.Color.WhiteSmoke;
+ this.buttonNo.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
+ this.buttonNo.ForeColor = System.Drawing.Color.Black;
this.buttonNo.Location = new System.Drawing.Point(335, 135);
this.buttonNo.Name = "buttonNo";
this.buttonNo.Size = new System.Drawing.Size(100, 25);
@@ -52,36 +55,11 @@
this.buttonNo.Text = "No";
this.buttonNo.Click += new System.EventHandler(this.buttonNo_Click);
//
- // labelErrorCode
- //
- this.labelErrorCode.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
- this.labelErrorCode.Location = new System.Drawing.Point(15, 11);
- this.labelErrorCode.Name = "labelErrorCode";
- this.labelErrorCode.Size = new System.Drawing.Size(350, 20);
- this.labelErrorCode.Text = "Error 0";
- //
- // pictureBox1
- //
- this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));
- this.pictureBox1.Location = new System.Drawing.Point(11, 20);
- this.pictureBox1.Name = "pictureBox1";
- this.pictureBox1.Size = new System.Drawing.Size(50, 50);
- //
- // panel1
- //
- this.panel1.BackColor = System.Drawing.Color.White;
- this.panel1.Controls.Add(this.labelMessage2);
- this.panel1.Controls.Add(this.labelMessage1);
- this.panel1.Controls.Add(this.pictureBox1);
- this.panel1.Location = new System.Drawing.Point(15, 34);
- this.panel1.Name = "panel1";
- this.panel1.Size = new System.Drawing.Size(420, 95);
- //
// buttonYes
//
- this.buttonYes.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
- this.buttonYes.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
- this.buttonYes.ForeColor = System.Drawing.Color.White;
+ this.buttonYes.BackColor = System.Drawing.Color.WhiteSmoke;
+ this.buttonYes.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
+ this.buttonYes.ForeColor = System.Drawing.Color.Black;
this.buttonYes.Location = new System.Drawing.Point(229, 135);
this.buttonYes.Name = "buttonYes";
this.buttonYes.Size = new System.Drawing.Size(100, 25);
@@ -90,21 +68,112 @@
this.buttonYes.Text = "Yes";
this.buttonYes.Click += new System.EventHandler(this.buttonYes_Click);
//
+ // pictureBoxAsterisk
+ //
+ this.pictureBoxAsterisk.BackColor = System.Drawing.Color.Silver;
+ this.pictureBoxAsterisk.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxAsterisk.Image")));
+ this.pictureBoxAsterisk.Location = new System.Drawing.Point(22, 60);
+ this.pictureBoxAsterisk.Name = "pictureBoxAsterisk";
+ this.pictureBoxAsterisk.Size = new System.Drawing.Size(50, 50);
+ this.pictureBoxAsterisk.Visible = false;
+ //
+ // pictureBoxExclamation
+ //
+ this.pictureBoxExclamation.BackColor = System.Drawing.Color.Silver;
+ this.pictureBoxExclamation.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxExclamation.Image")));
+ this.pictureBoxExclamation.Location = new System.Drawing.Point(22, 60);
+ this.pictureBoxExclamation.Name = "pictureBoxExclamation";
+ this.pictureBoxExclamation.Size = new System.Drawing.Size(50, 50);
+ //
+ // pictureBoxHand
+ //
+ this.pictureBoxHand.BackColor = System.Drawing.Color.Silver;
+ this.pictureBoxHand.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxHand.Image")));
+ this.pictureBoxHand.Location = new System.Drawing.Point(22, 60);
+ this.pictureBoxHand.Name = "pictureBoxHand";
+ this.pictureBoxHand.Size = new System.Drawing.Size(50, 50);
+ this.pictureBoxHand.Visible = false;
+ //
// labelMessage2
//
- this.labelMessage2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
- this.labelMessage2.Location = new System.Drawing.Point(67, 50);
+ this.labelMessage2.BackPictureBox = this.smartForm1;
+ this.labelMessage2.BackPictureBox1 = null;
+ this.labelMessage2.BackPictureBox2 = null;
+ this.labelMessage2.BorderColor = System.Drawing.Color.Black;
+ this.labelMessage2.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.labelMessage2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
+ this.labelMessage2.InitVisible = true;
+ this.labelMessage2.LineSpacing = 0F;
+ this.labelMessage2.Location = new System.Drawing.Point(78, 90);
this.labelMessage2.Name = "labelMessage2";
this.labelMessage2.Size = new System.Drawing.Size(350, 20);
+ this.labelMessage2.TabIndex = 45;
this.labelMessage2.Text = "COM2 port problem. Please contact a manufacturer.";
+ this.labelMessage2.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left;
+ this.labelMessage2.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
+ this.labelMessage2.Wordwrap = false;
+ //
+ // smartForm1
+ //
+ this.smartForm1.CenterLocation = false;
+ this.smartForm1.Image = ((System.Drawing.Image)(resources.GetObject("smartForm1.Image")));
+ this.smartForm1.LCDDirection = SmartX.SmartForm.LCDDIRECTIONS.HORIZONTAL;
+ this.smartForm1.LCDSize = SmartX.SmartForm.LCDRESOLUTION.CUSTOMIZING;
+ this.smartForm1.Location = new System.Drawing.Point(0, 0);
+ this.smartForm1.MainForm = null;
+ this.smartForm1.Mode = SmartX.SmartForm.RUNMODE.RUNTIME;
+ this.smartForm1.MouseCursor = SmartX.SmartForm.OnOff.OFF;
+ this.smartForm1.Name = "smartForm1";
+ this.smartForm1.Size = new System.Drawing.Size(450, 170);
+ this.smartForm1.SpecialFunctionClickPointSize = 100;
+ this.smartForm1.SuspendLayoutInterval = 1;
//
// labelMessage1
//
- this.labelMessage1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
- this.labelMessage1.Location = new System.Drawing.Point(67, 20);
+ this.labelMessage1.BackPictureBox = this.smartForm1;
+ this.labelMessage1.BackPictureBox1 = null;
+ this.labelMessage1.BackPictureBox2 = null;
+ this.labelMessage1.BorderColor = System.Drawing.Color.Black;
+ this.labelMessage1.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.labelMessage1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
+ this.labelMessage1.InitVisible = true;
+ this.labelMessage1.LineSpacing = 0F;
+ this.labelMessage1.Location = new System.Drawing.Point(78, 60);
this.labelMessage1.Name = "labelMessage1";
this.labelMessage1.Size = new System.Drawing.Size(350, 20);
+ this.labelMessage1.TabIndex = 44;
this.labelMessage1.Text = "COM2 port problem. Please contact a manufacturer.";
+ this.labelMessage1.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left;
+ this.labelMessage1.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
+ this.labelMessage1.Wordwrap = false;
+ //
+ // pictureBoxQuestion
+ //
+ this.pictureBoxQuestion.BackColor = System.Drawing.Color.Silver;
+ this.pictureBoxQuestion.Image = ((System.Drawing.Image)(resources.GetObject("pictureBoxQuestion.Image")));
+ this.pictureBoxQuestion.Location = new System.Drawing.Point(22, 60);
+ this.pictureBoxQuestion.Name = "pictureBoxQuestion";
+ this.pictureBoxQuestion.Size = new System.Drawing.Size(50, 50);
+ this.pictureBoxQuestion.Visible = false;
+ //
+ // labelErrorCode
+ //
+ this.labelErrorCode.BackColor = System.Drawing.Color.Gainsboro;
+ this.labelErrorCode.BackPictureBox = this.smartForm1;
+ this.labelErrorCode.BackPictureBox1 = null;
+ this.labelErrorCode.BackPictureBox2 = null;
+ this.labelErrorCode.BorderColor = System.Drawing.Color.Black;
+ this.labelErrorCode.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.labelErrorCode.InitVisible = true;
+ this.labelErrorCode.LineSpacing = 0F;
+ this.labelErrorCode.Location = new System.Drawing.Point(12, 0);
+ this.labelErrorCode.Name = "labelErrorCode";
+ this.labelErrorCode.Size = new System.Drawing.Size(438, 32);
+ this.labelErrorCode.TabIndex = 43;
+ this.labelErrorCode.Text = " Error 0";
+ this.labelErrorCode.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left;
+ this.labelErrorCode.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
+ this.labelErrorCode.Wordwrap = false;
//
// DialogFormYesNo
//
@@ -113,14 +182,20 @@
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(130)))), ((int)(((byte)(200)))), ((int)(((byte)(250)))));
this.ClientSize = new System.Drawing.Size(450, 170);
this.ControlBox = false;
- this.Controls.Add(this.buttonNo);
+ this.Controls.Add(this.pictureBoxAsterisk);
+ this.Controls.Add(this.pictureBoxExclamation);
+ this.Controls.Add(this.pictureBoxHand);
+ this.Controls.Add(this.labelMessage2);
+ this.Controls.Add(this.labelMessage1);
+ this.Controls.Add(this.pictureBoxQuestion);
this.Controls.Add(this.labelErrorCode);
- this.Controls.Add(this.panel1);
+ this.Controls.Add(this.buttonNo);
this.Controls.Add(this.buttonYes);
+ this.Controls.Add(this.smartForm1);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.Name = "DialogFormYesNo";
this.Text = "DialogFormYesNo1";
- this.panel1.ResumeLayout(false);
+ ((System.ComponentModel.ISupportInitialize)(this.smartForm1)).EndInit();
this.ResumeLayout(false);
}
@@ -128,11 +203,14 @@
#endregion
private System.Windows.Forms.Button buttonNo;
- private System.Windows.Forms.Label labelErrorCode;
- private System.Windows.Forms.PictureBox pictureBox1;
- private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Button buttonYes;
- private System.Windows.Forms.Label labelMessage2;
- private System.Windows.Forms.Label labelMessage1;
+ private System.Windows.Forms.PictureBox pictureBoxAsterisk;
+ private System.Windows.Forms.PictureBox pictureBoxExclamation;
+ private System.Windows.Forms.PictureBox pictureBoxHand;
+ private SmartX.SmartLabel labelMessage2;
+ private SmartX.SmartForm smartForm1;
+ private SmartX.SmartLabel labelMessage1;
+ private System.Windows.Forms.PictureBox pictureBoxQuestion;
+ private SmartX.SmartLabel labelErrorCode;
}
}
\ No newline at end of file
diff --git a/INT89DB_26/DialogForms/DialogFormYesNo.resx b/INT89DB_26/DialogForms/DialogFormYesNo.resx
index bd0aa44..989d493 100644
--- a/INT89DB_26/DialogForms/DialogFormYesNo.resx
+++ b/INT89DB_26/DialogForms/DialogFormYesNo.resx
@@ -118,73 +118,371 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
-
+
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
- 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
+ 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
+ 0AAAAABJRU5ErkJggg==
+
+
+
+
+ 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
+ gg==
+
+
+
+
+ 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
+ AAAAAElFTkSuQmCC
diff --git a/INT89DB_26/Forms/FormCommunication.cs b/INT89DB_26/Forms/FormCommunication.cs
index 3db6e38..668a8c4 100644
--- a/INT89DB_26/Forms/FormCommunication.cs
+++ b/INT89DB_26/Forms/FormCommunication.cs
@@ -292,6 +292,25 @@ namespace INT89DB_26.Forms
}
}
+ private void UpdateDisplaySettingData(int index)
+ {
+ switch (index)
+ {
+ case 99: // Modbus
+ if (this.ParentForm.SystemConfig.EthernetOperationMode == 2) // Client일 때만 Start Address 사용
+ {
+ this.labelTitleStartAddress.Visible = true;
+ this.labelStartAddress.Visible = true;
+ this.labelStartAddress.Text = this.ParentForm.SystemConfig.ModbusTcpStartAddress.ToString();
+ }
+ break;
+ default:
+ this.labelTitleStartAddress.Visible = false;
+ this.labelStartAddress.Visible = false;
+ break;
+ }
+ }
+
private void ConnectedIPStatusOut(string value)
{
this.labelConnectedIP.Text = value;
@@ -409,7 +428,7 @@ namespace INT89DB_26.Forms
this.comboBoxMode.SelectedIndexChanged -= new EventHandler(this.comboBoxMode_SelectedIndexChanged);
this.comboBoxOperationMode.SelectedIndexChanged -= new EventHandler(this.comboBoxOperationMode_SelectedIndexChanged);
- if (this.ParentForm.SystemConfig.EthernetMode == 99)
+ if (this.ParentForm.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus)
this.comboBoxMode.SelectedText = "Modbus";
else
this.comboBoxMode.SelectedIndex = this.ParentForm.SystemConfig.EthernetMode;
@@ -580,10 +599,12 @@ namespace INT89DB_26.Forms
private void comboBoxMode_SelectedIndexChanged(object sender, EventArgs e)
{
if (this.comboBoxMode.SelectedText == "Modbus")
- this.ParentForm.SystemConfig.EquipmentMode = 99;
+ this.ParentForm.SystemConfig.EthernetMode = (int)DataStore.CommunicationMode.f99_Modbus;
else
this.ParentForm.SystemConfig.EthernetMode = this.comboBoxMode.SelectedIndex;
+ this.UpdateDisplaySettingData(this.ParentForm.SystemConfig.EthernetMode);
+
this.ParentForm.SaveSystemConfigurationFile(this.ParentForm.SystemConfig);
this.UpdateProtocolDescriptionEthernet();
}
@@ -840,6 +861,32 @@ namespace INT89DB_26.Forms
}
}
}
+ private void labelStartAddress_Click(object sender, EventArgs e)
+ {
+ string before = "", after = "";
+
+ before = this.labelStartAddress.Text;
+
+ DialogFormNumKeyPad myKeyPad = new DialogFormNumKeyPad(this.labelStartAddress.Text, 5, 0, false, this.ParentForm.SystemConfig.Language);
+
+ if (myKeyPad.ShowDialog() == DialogResult.OK)
+ {
+ if (myKeyPad.doubleValue < 0 || myKeyPad.doubleValue > 65535)
+ {
+ // 입력범위를 확인하세요
+ DialogFormMessage myMsg = new DialogFormMessage(1, this.ParentForm.SystemConfig.Language);
+ myMsg.ShowDialog();
+ }
+ else
+ {
+ this.labelStartAddress.Text = myKeyPad.StringValue;
+ this.ParentForm.SystemConfig.ModbusTcpStartAddress = myKeyPad.IntValue;
+ after = this.labelStartAddress.Text;
+
+ this.ParentForm.SaveSystemConfigurationFile(this.ParentForm.SystemConfig);
+ }
+ }
+ }
private void buttonTcpSave1_Click(object sender, EventArgs e)
{
this.buttonTcpSave1.Enabled = false;
diff --git a/INT89DB_26/Forms/FormCommunication.designer.cs b/INT89DB_26/Forms/FormCommunication.designer.cs
index f7ab948..697891a 100644
--- a/INT89DB_26/Forms/FormCommunication.designer.cs
+++ b/INT89DB_26/Forms/FormCommunication.designer.cs
@@ -44,6 +44,8 @@
this.smartLabel4 = new SmartX.SmartLabel();
this.labelStaticBaudrate = new SmartX.SmartLabel();
this.groupBoxEthernet = new SmartX.SmartGroupBox();
+ this.labelStartAddress = new SmartX.SmartLabel();
+ this.labelTitleStartAddress = new SmartX.SmartLabel();
this.buttonEthernetSend = new System.Windows.Forms.Button();
this.buttonEthernetStop = new System.Windows.Forms.Button();
this.buttonEthernetStart = new System.Windows.Forms.Button();
@@ -87,8 +89,6 @@
this.labelHostIP4 = new SmartX.SmartLabel();
this.labelTitleClientServerPort = new SmartX.SmartLabel();
this.timerServer = new System.Windows.Forms.Timer();
- this.labelStartAddress = new SmartX.SmartLabel();
- this.labelTitleStartAddress = new SmartX.SmartLabel();
((System.ComponentModel.ISupportInitialize)(this.smartForm1)).BeginInit();
this.groupBoxSerial.SuspendLayout();
this.groupBoxEthernet.SuspendLayout();
@@ -156,7 +156,7 @@
this.labelTitle.BackPictureBox2 = null;
this.labelTitle.BorderColor = System.Drawing.Color.Black;
this.labelTitle.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelTitle.Font = new System.Drawing.Font("New Gulim", 23F, System.Drawing.FontStyle.Bold);
+ this.labelTitle.Font = new System.Drawing.Font("새굴림", 23F, System.Drawing.FontStyle.Bold);
this.labelTitle.ForeColor = System.Drawing.Color.White;
this.labelTitle.InitVisible = true;
this.labelTitle.LineSpacing = 0F;
@@ -182,7 +182,7 @@
this.groupBoxSerial.Controls.Add(this.comboBoxSerial3BaudRate);
this.groupBoxSerial.Controls.Add(this.smartLabel4);
this.groupBoxSerial.Controls.Add(this.labelStaticBaudrate);
- this.groupBoxSerial.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.groupBoxSerial.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.groupBoxSerial.FrameLineColor1 = System.Drawing.Color.Black;
this.groupBoxSerial.FrameLineColor2 = System.Drawing.Color.Black;
this.groupBoxSerial.FrameLineThickness = 1;
@@ -200,7 +200,7 @@
// buttonSerialSend
//
this.buttonSerialSend.Enabled = false;
- this.buttonSerialSend.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
+ this.buttonSerialSend.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.buttonSerialSend.Location = new System.Drawing.Point(203, 127);
this.buttonSerialSend.Name = "buttonSerialSend";
this.buttonSerialSend.Size = new System.Drawing.Size(165, 30);
@@ -215,7 +215,7 @@
this.labelProtocolDescriptionCOM3_2.BackPictureBox2 = null;
this.labelProtocolDescriptionCOM3_2.BorderColor = System.Drawing.Color.Black;
this.labelProtocolDescriptionCOM3_2.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelProtocolDescriptionCOM3_2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
+ this.labelProtocolDescriptionCOM3_2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelProtocolDescriptionCOM3_2.InitVisible = true;
this.labelProtocolDescriptionCOM3_2.LineSpacing = 0F;
this.labelProtocolDescriptionCOM3_2.Location = new System.Drawing.Point(26, 103);
@@ -234,7 +234,7 @@
this.labelProtocolDescriptionCOM3_1.BackPictureBox2 = null;
this.labelProtocolDescriptionCOM3_1.BorderColor = System.Drawing.Color.Black;
this.labelProtocolDescriptionCOM3_1.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelProtocolDescriptionCOM3_1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Bold);
+ this.labelProtocolDescriptionCOM3_1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Bold);
this.labelProtocolDescriptionCOM3_1.InitVisible = true;
this.labelProtocolDescriptionCOM3_1.LineSpacing = 0F;
this.labelProtocolDescriptionCOM3_1.Location = new System.Drawing.Point(26, 79);
@@ -268,7 +268,7 @@
// buttonSave2
//
this.buttonSave2.Enabled = false;
- this.buttonSave2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
+ this.buttonSave2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.buttonSave2.Location = new System.Drawing.Point(26, 127);
this.buttonSave2.Name = "buttonSave2";
this.buttonSave2.Size = new System.Drawing.Size(165, 30);
@@ -278,7 +278,7 @@
//
// comboBoxSerial3Mode
//
- this.comboBoxSerial3Mode.Font = new System.Drawing.Font("New Gulim", 15F, System.Drawing.FontStyle.Bold);
+ this.comboBoxSerial3Mode.Font = new System.Drawing.Font("새굴림", 15F, System.Drawing.FontStyle.Bold);
this.comboBoxSerial3Mode.Location = new System.Drawing.Point(198, 46);
this.comboBoxSerial3Mode.Name = "comboBoxSerial3Mode";
this.comboBoxSerial3Mode.Size = new System.Drawing.Size(170, 29);
@@ -287,7 +287,7 @@
//
// comboBoxSerial3BaudRate
//
- this.comboBoxSerial3BaudRate.Font = new System.Drawing.Font("New Gulim", 15F, System.Drawing.FontStyle.Bold);
+ this.comboBoxSerial3BaudRate.Font = new System.Drawing.Font("새굴림", 15F, System.Drawing.FontStyle.Bold);
this.comboBoxSerial3BaudRate.Location = new System.Drawing.Point(91, 46);
this.comboBoxSerial3BaudRate.Name = "comboBoxSerial3BaudRate";
this.comboBoxSerial3BaudRate.Size = new System.Drawing.Size(100, 29);
@@ -301,7 +301,7 @@
this.smartLabel4.BackPictureBox2 = null;
this.smartLabel4.BorderColor = System.Drawing.Color.Black;
this.smartLabel4.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.smartLabel4.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.smartLabel4.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.smartLabel4.InitVisible = true;
this.smartLabel4.LineSpacing = 0F;
this.smartLabel4.Location = new System.Drawing.Point(198, 20);
@@ -320,7 +320,7 @@
this.labelStaticBaudrate.BackPictureBox2 = null;
this.labelStaticBaudrate.BorderColor = System.Drawing.Color.Black;
this.labelStaticBaudrate.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelStaticBaudrate.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.labelStaticBaudrate.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.labelStaticBaudrate.InitVisible = true;
this.labelStaticBaudrate.LineSpacing = 0F;
this.labelStaticBaudrate.Location = new System.Drawing.Point(92, 21);
@@ -364,7 +364,7 @@
this.groupBoxEthernet.Controls.Add(this.labelStaticTcpOperationMode);
this.groupBoxEthernet.Controls.Add(this.comboBoxOperationMode);
this.groupBoxEthernet.Controls.Add(this.comboBoxMode);
- this.groupBoxEthernet.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.groupBoxEthernet.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.groupBoxEthernet.FrameLineColor1 = System.Drawing.Color.Black;
this.groupBoxEthernet.FrameLineColor2 = System.Drawing.Color.Black;
this.groupBoxEthernet.FrameLineThickness = 1;
@@ -379,10 +379,53 @@
this.groupBoxEthernet.Text = "TCP_Local";
this.groupBoxEthernet.TextColor = System.Drawing.Color.Black;
//
+ // labelStartAddress
+ //
+ this.labelStartAddress.BackColor = System.Drawing.SystemColors.Window;
+ this.labelStartAddress.BackPictureBox = null;
+ this.labelStartAddress.BackPictureBox1 = null;
+ this.labelStartAddress.BackPictureBox2 = null;
+ this.labelStartAddress.BorderColor = System.Drawing.Color.Black;
+ this.labelStartAddress.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+ this.labelStartAddress.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
+ this.labelStartAddress.InitVisible = true;
+ this.labelStartAddress.LineSpacing = 0F;
+ this.labelStartAddress.Location = new System.Drawing.Point(166, 261);
+ this.labelStartAddress.Name = "labelStartAddress";
+ this.labelStartAddress.Size = new System.Drawing.Size(106, 28);
+ this.labelStartAddress.TabIndex = 266;
+ this.labelStartAddress.Text = "100";
+ this.labelStartAddress.TextHAlign = SmartX.SmartLabel.TextHorAlign.Right;
+ this.labelStartAddress.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
+ this.labelStartAddress.Visible = false;
+ this.labelStartAddress.Wordwrap = false;
+ this.labelStartAddress.Click += new System.EventHandler(this.labelStartAddress_Click);
+ //
+ // labelTitleStartAddress
+ //
+ this.labelTitleStartAddress.BackPictureBox = this.smartForm1;
+ this.labelTitleStartAddress.BackPictureBox1 = null;
+ this.labelTitleStartAddress.BackPictureBox2 = null;
+ this.labelTitleStartAddress.BorderColor = System.Drawing.Color.Black;
+ this.labelTitleStartAddress.BorderStyle = System.Windows.Forms.BorderStyle.None;
+ this.labelTitleStartAddress.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
+ this.labelTitleStartAddress.ForeColor = System.Drawing.Color.Black;
+ this.labelTitleStartAddress.InitVisible = true;
+ this.labelTitleStartAddress.LineSpacing = 0F;
+ this.labelTitleStartAddress.Location = new System.Drawing.Point(20, 261);
+ this.labelTitleStartAddress.Name = "labelTitleStartAddress";
+ this.labelTitleStartAddress.Size = new System.Drawing.Size(140, 28);
+ this.labelTitleStartAddress.TabIndex = 265;
+ this.labelTitleStartAddress.Text = "Start Address";
+ this.labelTitleStartAddress.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle;
+ this.labelTitleStartAddress.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
+ this.labelTitleStartAddress.Visible = false;
+ this.labelTitleStartAddress.Wordwrap = false;
+ //
// buttonEthernetSend
//
this.buttonEthernetSend.Enabled = false;
- this.buttonEthernetSend.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
+ this.buttonEthernetSend.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.buttonEthernetSend.Location = new System.Drawing.Point(260, 400);
this.buttonEthernetSend.Name = "buttonEthernetSend";
this.buttonEthernetSend.Size = new System.Drawing.Size(100, 30);
@@ -393,7 +436,7 @@
// buttonEthernetStop
//
this.buttonEthernetStop.Enabled = false;
- this.buttonEthernetStop.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
+ this.buttonEthernetStop.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.buttonEthernetStop.Location = new System.Drawing.Point(154, 400);
this.buttonEthernetStop.Name = "buttonEthernetStop";
this.buttonEthernetStop.Size = new System.Drawing.Size(100, 30);
@@ -404,7 +447,7 @@
// buttonEthernetStart
//
this.buttonEthernetStart.Enabled = false;
- this.buttonEthernetStart.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
+ this.buttonEthernetStart.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.buttonEthernetStart.Location = new System.Drawing.Point(48, 400);
this.buttonEthernetStart.Name = "buttonEthernetStart";
this.buttonEthernetStart.Size = new System.Drawing.Size(100, 30);
@@ -419,7 +462,7 @@
this.labelProtocolDescriptionEthernet_2.BackPictureBox2 = null;
this.labelProtocolDescriptionEthernet_2.BorderColor = System.Drawing.Color.Black;
this.labelProtocolDescriptionEthernet_2.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelProtocolDescriptionEthernet_2.Font = new System.Drawing.Font("New Gulim", 9F, System.Drawing.FontStyle.Bold);
+ this.labelProtocolDescriptionEthernet_2.Font = new System.Drawing.Font("새굴림", 9F, System.Drawing.FontStyle.Bold);
this.labelProtocolDescriptionEthernet_2.InitVisible = true;
this.labelProtocolDescriptionEthernet_2.LineSpacing = 0F;
this.labelProtocolDescriptionEthernet_2.Location = new System.Drawing.Point(53, 131);
@@ -438,7 +481,7 @@
this.labelProtocolDescriptionEthernet_1.BackPictureBox2 = null;
this.labelProtocolDescriptionEthernet_1.BorderColor = System.Drawing.Color.Black;
this.labelProtocolDescriptionEthernet_1.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelProtocolDescriptionEthernet_1.Font = new System.Drawing.Font("New Gulim", 9F, System.Drawing.FontStyle.Bold);
+ this.labelProtocolDescriptionEthernet_1.Font = new System.Drawing.Font("새굴림", 9F, System.Drawing.FontStyle.Bold);
this.labelProtocolDescriptionEthernet_1.InitVisible = true;
this.labelProtocolDescriptionEthernet_1.LineSpacing = 0F;
this.labelProtocolDescriptionEthernet_1.Location = new System.Drawing.Point(53, 105);
@@ -452,8 +495,8 @@
//
// buttonTcpSave1
//
- this.buttonTcpSave1.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
- this.buttonTcpSave1.Location = new System.Drawing.Point(285, 291);
+ this.buttonTcpSave1.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
+ this.buttonTcpSave1.Location = new System.Drawing.Point(278, 261);
this.buttonTcpSave1.Name = "buttonTcpSave1";
this.buttonTcpSave1.Size = new System.Drawing.Size(106, 28);
this.buttonTcpSave1.TabIndex = 254;
@@ -467,13 +510,13 @@
this.labelHelp.BackPictureBox2 = null;
this.labelHelp.BorderColor = System.Drawing.Color.Black;
this.labelHelp.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelHelp.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.labelHelp.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.labelHelp.ForeColor = System.Drawing.Color.Red;
this.labelHelp.InitVisible = true;
this.labelHelp.LineSpacing = 0F;
- this.labelHelp.Location = new System.Drawing.Point(28, 325);
+ this.labelHelp.Location = new System.Drawing.Point(27, 306);
this.labelHelp.Name = "labelHelp";
- this.labelHelp.Size = new System.Drawing.Size(363, 60);
+ this.labelHelp.Size = new System.Drawing.Size(357, 60);
this.labelHelp.TabIndex = 253;
this.labelHelp.Text = "※ IP Configuration 변경 시, 재부팅 후 정상적으로 연결됩니다.";
this.labelHelp.TextHAlign = SmartX.SmartLabel.TextHorAlign.Left;
@@ -491,7 +534,7 @@
this.labelLocalSubnetMask4.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalSubnetMask4.InitVisible = true;
this.labelLocalSubnetMask4.LineSpacing = 0F;
- this.labelLocalSubnetMask4.Location = new System.Drawing.Point(341, 223);
+ this.labelLocalSubnetMask4.Location = new System.Drawing.Point(334, 193);
this.labelLocalSubnetMask4.Name = "labelLocalSubnetMask4";
this.labelLocalSubnetMask4.Size = new System.Drawing.Size(50, 28);
this.labelLocalSubnetMask4.TabIndex = 251;
@@ -512,7 +555,7 @@
this.labelLocalSubnetMask3.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalSubnetMask3.InitVisible = true;
this.labelLocalSubnetMask3.LineSpacing = 0F;
- this.labelLocalSubnetMask3.Location = new System.Drawing.Point(285, 223);
+ this.labelLocalSubnetMask3.Location = new System.Drawing.Point(278, 193);
this.labelLocalSubnetMask3.Name = "labelLocalSubnetMask3";
this.labelLocalSubnetMask3.Size = new System.Drawing.Size(50, 28);
this.labelLocalSubnetMask3.TabIndex = 250;
@@ -533,7 +576,7 @@
this.labelLocalSubnetMask2.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalSubnetMask2.InitVisible = true;
this.labelLocalSubnetMask2.LineSpacing = 0F;
- this.labelLocalSubnetMask2.Location = new System.Drawing.Point(229, 223);
+ this.labelLocalSubnetMask2.Location = new System.Drawing.Point(222, 193);
this.labelLocalSubnetMask2.Name = "labelLocalSubnetMask2";
this.labelLocalSubnetMask2.Size = new System.Drawing.Size(50, 28);
this.labelLocalSubnetMask2.TabIndex = 249;
@@ -554,7 +597,7 @@
this.labelLocalSubnetMask1.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalSubnetMask1.InitVisible = true;
this.labelLocalSubnetMask1.LineSpacing = 0F;
- this.labelLocalSubnetMask1.Location = new System.Drawing.Point(173, 223);
+ this.labelLocalSubnetMask1.Location = new System.Drawing.Point(166, 193);
this.labelLocalSubnetMask1.Name = "labelLocalSubnetMask1";
this.labelLocalSubnetMask1.Size = new System.Drawing.Size(50, 28);
this.labelLocalSubnetMask1.TabIndex = 248;
@@ -571,11 +614,11 @@
this.labelTitleSubnetMask.BackPictureBox2 = null;
this.labelTitleSubnetMask.BorderColor = System.Drawing.Color.Black;
this.labelTitleSubnetMask.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelTitleSubnetMask.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.labelTitleSubnetMask.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.labelTitleSubnetMask.ForeColor = System.Drawing.Color.Black;
this.labelTitleSubnetMask.InitVisible = true;
this.labelTitleSubnetMask.LineSpacing = 0F;
- this.labelTitleSubnetMask.Location = new System.Drawing.Point(27, 223);
+ this.labelTitleSubnetMask.Location = new System.Drawing.Point(20, 193);
this.labelTitleSubnetMask.Name = "labelTitleSubnetMask";
this.labelTitleSubnetMask.Size = new System.Drawing.Size(140, 28);
this.labelTitleSubnetMask.TabIndex = 247;
@@ -595,7 +638,7 @@
this.labelLocalGateway4.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalGateway4.InitVisible = true;
this.labelLocalGateway4.LineSpacing = 0F;
- this.labelLocalGateway4.Location = new System.Drawing.Point(341, 257);
+ this.labelLocalGateway4.Location = new System.Drawing.Point(334, 227);
this.labelLocalGateway4.Name = "labelLocalGateway4";
this.labelLocalGateway4.Size = new System.Drawing.Size(50, 28);
this.labelLocalGateway4.TabIndex = 246;
@@ -616,7 +659,7 @@
this.labelLocalGateway3.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalGateway3.InitVisible = true;
this.labelLocalGateway3.LineSpacing = 0F;
- this.labelLocalGateway3.Location = new System.Drawing.Point(285, 257);
+ this.labelLocalGateway3.Location = new System.Drawing.Point(278, 227);
this.labelLocalGateway3.Name = "labelLocalGateway3";
this.labelLocalGateway3.Size = new System.Drawing.Size(50, 28);
this.labelLocalGateway3.TabIndex = 245;
@@ -637,7 +680,7 @@
this.labelLocalGateway2.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalGateway2.InitVisible = true;
this.labelLocalGateway2.LineSpacing = 0F;
- this.labelLocalGateway2.Location = new System.Drawing.Point(229, 257);
+ this.labelLocalGateway2.Location = new System.Drawing.Point(222, 227);
this.labelLocalGateway2.Name = "labelLocalGateway2";
this.labelLocalGateway2.Size = new System.Drawing.Size(50, 28);
this.labelLocalGateway2.TabIndex = 244;
@@ -658,7 +701,7 @@
this.labelLocalGateway1.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalGateway1.InitVisible = true;
this.labelLocalGateway1.LineSpacing = 0F;
- this.labelLocalGateway1.Location = new System.Drawing.Point(173, 257);
+ this.labelLocalGateway1.Location = new System.Drawing.Point(166, 227);
this.labelLocalGateway1.Name = "labelLocalGateway1";
this.labelLocalGateway1.Size = new System.Drawing.Size(50, 28);
this.labelLocalGateway1.TabIndex = 243;
@@ -675,11 +718,11 @@
this.labelTitleGateway.BackPictureBox2 = null;
this.labelTitleGateway.BorderColor = System.Drawing.Color.Black;
this.labelTitleGateway.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelTitleGateway.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.labelTitleGateway.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.labelTitleGateway.ForeColor = System.Drawing.Color.Black;
this.labelTitleGateway.InitVisible = true;
this.labelTitleGateway.LineSpacing = 0F;
- this.labelTitleGateway.Location = new System.Drawing.Point(27, 257);
+ this.labelTitleGateway.Location = new System.Drawing.Point(20, 227);
this.labelTitleGateway.Name = "labelTitleGateway";
this.labelTitleGateway.Size = new System.Drawing.Size(140, 28);
this.labelTitleGateway.TabIndex = 242;
@@ -699,7 +742,7 @@
this.labelLocalIP4.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalIP4.InitVisible = true;
this.labelLocalIP4.LineSpacing = 0F;
- this.labelLocalIP4.Location = new System.Drawing.Point(341, 189);
+ this.labelLocalIP4.Location = new System.Drawing.Point(334, 159);
this.labelLocalIP4.Name = "labelLocalIP4";
this.labelLocalIP4.Size = new System.Drawing.Size(50, 28);
this.labelLocalIP4.TabIndex = 241;
@@ -720,7 +763,7 @@
this.labelLocalIP3.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalIP3.InitVisible = true;
this.labelLocalIP3.LineSpacing = 0F;
- this.labelLocalIP3.Location = new System.Drawing.Point(285, 189);
+ this.labelLocalIP3.Location = new System.Drawing.Point(278, 159);
this.labelLocalIP3.Name = "labelLocalIP3";
this.labelLocalIP3.Size = new System.Drawing.Size(50, 28);
this.labelLocalIP3.TabIndex = 240;
@@ -741,7 +784,7 @@
this.labelLocalIP2.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalIP2.InitVisible = true;
this.labelLocalIP2.LineSpacing = 0F;
- this.labelLocalIP2.Location = new System.Drawing.Point(229, 189);
+ this.labelLocalIP2.Location = new System.Drawing.Point(222, 159);
this.labelLocalIP2.Name = "labelLocalIP2";
this.labelLocalIP2.Size = new System.Drawing.Size(50, 28);
this.labelLocalIP2.TabIndex = 239;
@@ -762,7 +805,7 @@
this.labelLocalIP1.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
this.labelLocalIP1.InitVisible = true;
this.labelLocalIP1.LineSpacing = 0F;
- this.labelLocalIP1.Location = new System.Drawing.Point(173, 189);
+ this.labelLocalIP1.Location = new System.Drawing.Point(166, 159);
this.labelLocalIP1.Name = "labelLocalIP1";
this.labelLocalIP1.Size = new System.Drawing.Size(50, 28);
this.labelLocalIP1.TabIndex = 238;
@@ -779,11 +822,11 @@
this.labelTitleIPAddress.BackPictureBox2 = null;
this.labelTitleIPAddress.BorderColor = System.Drawing.Color.Black;
this.labelTitleIPAddress.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelTitleIPAddress.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.labelTitleIPAddress.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.labelTitleIPAddress.ForeColor = System.Drawing.Color.Black;
this.labelTitleIPAddress.InitVisible = true;
this.labelTitleIPAddress.LineSpacing = 0F;
- this.labelTitleIPAddress.Location = new System.Drawing.Point(27, 189);
+ this.labelTitleIPAddress.Location = new System.Drawing.Point(20, 159);
this.labelTitleIPAddress.Name = "labelTitleIPAddress";
this.labelTitleIPAddress.Size = new System.Drawing.Size(140, 28);
this.labelTitleIPAddress.TabIndex = 237;
@@ -799,7 +842,7 @@
this.labelStaticTcpMode.BackPictureBox2 = null;
this.labelStaticTcpMode.BorderColor = System.Drawing.Color.Black;
this.labelStaticTcpMode.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelStaticTcpMode.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.labelStaticTcpMode.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.labelStaticTcpMode.InitVisible = true;
this.labelStaticTcpMode.LineSpacing = 0F;
this.labelStaticTcpMode.Location = new System.Drawing.Point(27, 69);
@@ -818,7 +861,7 @@
this.labelStaticTcpOperationMode.BackPictureBox2 = null;
this.labelStaticTcpOperationMode.BorderColor = System.Drawing.Color.Black;
this.labelStaticTcpOperationMode.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelStaticTcpOperationMode.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.labelStaticTcpOperationMode.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.labelStaticTcpOperationMode.InitVisible = true;
this.labelStaticTcpOperationMode.LineSpacing = 0F;
this.labelStaticTcpOperationMode.Location = new System.Drawing.Point(27, 33);
@@ -857,7 +900,7 @@
this.groupBoxServer.Controls.Add(this.labelLocalPort);
this.groupBoxServer.Controls.Add(this.labelTitleServerPort);
this.groupBoxServer.Controls.Add(this.labelServerStatus);
- this.groupBoxServer.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.groupBoxServer.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.groupBoxServer.FrameLineColor1 = System.Drawing.Color.Black;
this.groupBoxServer.FrameLineColor2 = System.Drawing.Color.Black;
this.groupBoxServer.FrameLineThickness = 1;
@@ -900,7 +943,7 @@
this.labelTitleConnectedIP.BackPictureBox2 = null;
this.labelTitleConnectedIP.BorderColor = System.Drawing.Color.Black;
this.labelTitleConnectedIP.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelTitleConnectedIP.Font = new System.Drawing.Font("New Gulim", 11F, System.Drawing.FontStyle.Bold);
+ this.labelTitleConnectedIP.Font = new System.Drawing.Font("새굴림", 11F, System.Drawing.FontStyle.Bold);
this.labelTitleConnectedIP.ForeColor = System.Drawing.Color.Black;
this.labelTitleConnectedIP.InitVisible = true;
this.labelTitleConnectedIP.LineSpacing = 0F;
@@ -942,7 +985,7 @@
this.labelTitleServerPort.BackPictureBox2 = null;
this.labelTitleServerPort.BorderColor = System.Drawing.Color.Black;
this.labelTitleServerPort.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelTitleServerPort.Font = new System.Drawing.Font("New Gulim", 11F, System.Drawing.FontStyle.Bold);
+ this.labelTitleServerPort.Font = new System.Drawing.Font("새굴림", 11F, System.Drawing.FontStyle.Bold);
this.labelTitleServerPort.ForeColor = System.Drawing.Color.Black;
this.labelTitleServerPort.InitVisible = true;
this.labelTitleServerPort.LineSpacing = 0F;
@@ -988,7 +1031,7 @@
this.groupBoxClient.Controls.Add(this.labelHostPort);
this.groupBoxClient.Controls.Add(this.labelHostIP4);
this.groupBoxClient.Controls.Add(this.labelTitleClientServerPort);
- this.groupBoxClient.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
+ this.groupBoxClient.Font = new System.Drawing.Font("새굴림", 12F, System.Drawing.FontStyle.Bold);
this.groupBoxClient.FrameLineColor1 = System.Drawing.Color.Black;
this.groupBoxClient.FrameLineColor2 = System.Drawing.Color.Black;
this.groupBoxClient.FrameLineThickness = 1;
@@ -1005,7 +1048,7 @@
//
// buttonTcpSave2
//
- this.buttonTcpSave2.Font = new System.Drawing.Font("New Gulim", 10F, System.Drawing.FontStyle.Regular);
+ this.buttonTcpSave2.Font = new System.Drawing.Font("새굴림", 10F, System.Drawing.FontStyle.Regular);
this.buttonTcpSave2.Location = new System.Drawing.Point(274, 90);
this.buttonTcpSave2.Name = "buttonTcpSave2";
this.buttonTcpSave2.Size = new System.Drawing.Size(100, 28);
@@ -1041,7 +1084,7 @@
this.labelTitleClientServerIP.BackPictureBox2 = null;
this.labelTitleClientServerIP.BorderColor = System.Drawing.Color.Black;
this.labelTitleClientServerIP.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelTitleClientServerIP.Font = new System.Drawing.Font("New Gulim", 11F, System.Drawing.FontStyle.Bold);
+ this.labelTitleClientServerIP.Font = new System.Drawing.Font("새굴림", 11F, System.Drawing.FontStyle.Bold);
this.labelTitleClientServerIP.ForeColor = System.Drawing.Color.Black;
this.labelTitleClientServerIP.InitVisible = true;
this.labelTitleClientServerIP.LineSpacing = 0F;
@@ -1167,7 +1210,7 @@
this.labelTitleClientServerPort.BackPictureBox2 = null;
this.labelTitleClientServerPort.BorderColor = System.Drawing.Color.Black;
this.labelTitleClientServerPort.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelTitleClientServerPort.Font = new System.Drawing.Font("New Gulim", 11F, System.Drawing.FontStyle.Bold);
+ this.labelTitleClientServerPort.Font = new System.Drawing.Font("새굴림", 11F, System.Drawing.FontStyle.Bold);
this.labelTitleClientServerPort.ForeColor = System.Drawing.Color.Black;
this.labelTitleClientServerPort.InitVisible = true;
this.labelTitleClientServerPort.LineSpacing = 0F;
@@ -1185,46 +1228,6 @@
this.timerServer.Interval = 1000;
this.timerServer.Tick += new System.EventHandler(this.timerServer_Tick);
//
- // labelStartAddress
- //
- this.labelStartAddress.BackColor = System.Drawing.SystemColors.Window;
- this.labelStartAddress.BackPictureBox = null;
- this.labelStartAddress.BackPictureBox1 = null;
- this.labelStartAddress.BackPictureBox2 = null;
- this.labelStartAddress.BorderColor = System.Drawing.Color.Black;
- this.labelStartAddress.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
- this.labelStartAddress.Font = new System.Drawing.Font("Arial", 14F, System.Drawing.FontStyle.Bold);
- this.labelStartAddress.InitVisible = true;
- this.labelStartAddress.LineSpacing = 0F;
- this.labelStartAddress.Location = new System.Drawing.Point(173, 291);
- this.labelStartAddress.Name = "labelStartAddress";
- this.labelStartAddress.Size = new System.Drawing.Size(106, 28);
- this.labelStartAddress.TabIndex = 266;
- this.labelStartAddress.Text = "100";
- this.labelStartAddress.TextHAlign = SmartX.SmartLabel.TextHorAlign.Right;
- this.labelStartAddress.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
- this.labelStartAddress.Wordwrap = false;
- //
- // labelTitleStartAddress
- //
- this.labelTitleStartAddress.BackPictureBox = this.smartForm1;
- this.labelTitleStartAddress.BackPictureBox1 = null;
- this.labelTitleStartAddress.BackPictureBox2 = null;
- this.labelTitleStartAddress.BorderColor = System.Drawing.Color.Black;
- this.labelTitleStartAddress.BorderStyle = System.Windows.Forms.BorderStyle.None;
- this.labelTitleStartAddress.Font = new System.Drawing.Font("New Gulim", 12F, System.Drawing.FontStyle.Bold);
- this.labelTitleStartAddress.ForeColor = System.Drawing.Color.Black;
- this.labelTitleStartAddress.InitVisible = true;
- this.labelTitleStartAddress.LineSpacing = 0F;
- this.labelTitleStartAddress.Location = new System.Drawing.Point(27, 291);
- this.labelTitleStartAddress.Name = "labelTitleStartAddress";
- this.labelTitleStartAddress.Size = new System.Drawing.Size(140, 28);
- this.labelTitleStartAddress.TabIndex = 265;
- this.labelTitleStartAddress.Text = "Start Address";
- this.labelTitleStartAddress.TextHAlign = SmartX.SmartLabel.TextHorAlign.Middle;
- this.labelTitleStartAddress.TextVAlign = SmartX.SmartLabel.TextVerAlign.Middle;
- this.labelTitleStartAddress.Wordwrap = false;
- //
// FormCommunication
//
this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);
diff --git a/INT89DB_26/Forms/FormCommunication.resx b/INT89DB_26/Forms/FormCommunication.resx
index 3628710..674af5d 100644
--- a/INT89DB_26/Forms/FormCommunication.resx
+++ b/INT89DB_26/Forms/FormCommunication.resx
@@ -165,53 +165,52 @@
RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
- j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAACrZJREFUeF7t1jENgAAQ
- wMC3w4gELBMUESQQZgQw0vGSm6qgs24LAACh+SYAAP4wWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAz
- WAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMF
- ABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAA
- MYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAz
- WAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMF
- ABAzWAAAMYMFABAzWAAAMYMFABAzWAAAMYMFABAzWAAAsXmuAwCAkMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA
- mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ
- LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA
- mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ
- LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA
- mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ
- LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA
- mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ
- LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA
- mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ
- LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA
- mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ
- LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA
- mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ
- LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA
- mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ
- LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA
- mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ
- LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA
- mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ
- LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACA
- mMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZ
- LACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMECAIgZLACAmMEC
- AIgZLACAmMECAIgZLACAmMECAIjNfe4AAIRm3RYAAEIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIG
- CwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAA
- AGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAg
- ZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIG
- CwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAA
- AGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAg
- ZrAAAGIGCwAgZrAAAGIGCwAgZrAAAGIGCwAg9gJXVz/mZFbNFwAAAABJRU5ErkJggg==
+ j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAACmlJREFUeF7t1jENgEAU
+ QLFv50YknGWCIoIEwoyJNzapiM6xFwAAIcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAx
+ wQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEA
+ xAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIF
+ ABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJ
+ FgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAg
+ JlgAADHBAgCICRYAQEywAABiggUAEJvvuQAACAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHB
+ AgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDE
+ BAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUA
+ EBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkW
+ AEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAm
+ WAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACA
+ mGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAA
+ AGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHB
+ AgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDE
+ BAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUA
+ EBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkW
+ AEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAm
+ WAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACA
+ mGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAA
+ AGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHB
+ AgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDE
+ BAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUA
+ EBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkW
+ AEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAm
+ WAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACA
+ mGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAA
+ AGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHB
+ AgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDE
+ BAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUA
+ EBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkW
+ AEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAm
+ WAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACA
+ mGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAA
+ AGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHB
+ AgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDE
+ BAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUA
+ EBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkW
+ AEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAm
+ WAAAMcECAIgJFgBAbN77BAAgNMdeAACEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQE
+ CwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQ
+ EywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYA
+ QEywAABiggUAEBMsAICYYAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZY
+ AAAxwQIAiAkWAEBMsAAAYoIFABATLACAmGABAMQECwAgJlgAADHBAgCICRYAQEywAABiggUAEBMsAICY
+ YAEAxAQLACAmWAAAMcECAIgJFgBATLAAAGKCBQAQEywAgJhgAQDEBAsAICZYAAAxwQIAiAkWAEBMsAAA
+ YoIFABATLACA1F4/V1c/5sLrLKMAAAAASUVORK5CYII=
@@ -261,28 +260,27 @@
RudN65tdA8sHzg46DF645Xrr8m2v29fvrLwzMBQydHc4cnjkLvvu5L2key/vZ9yff7DpIfph4SOpR+WP
lR7X/aj3Y+uI5ciZUdfRvidBTx6Mscae/5T+04fx/Kfkp+UTqhONk2aTp6fcp24+W/1s/Hnq8/npgp+l
f65+ofviu18cf+mbWTUz/pL/cuHX4lfyr468Xva6e9Z/9vGb5Dfzc4Vv5d8efcd41/s+7P3EfOYH7IeK
- j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAABLBJREFUaEPtm9tP6kgc
- gM+/I3vcjXrOXrLr2YOANoAIQkRUrKAWmFWQS4G2Jt6ISIBEqbSU5bYGvL/4Ys6j++LftZHxsDisrifl
- 0hq+zFPnN/T3ZSbTdph5N6QceKF8VA9KrXxQDbbm2VzetV76UfOD3jJhd8y7PW4gSVxuYh63YdPqEdX7
- 1vyfKA0rFXoL5na7Go3/kCSN9FZdqxrj52eVRlTv5/BZGLqxsREOh2maZiQJTdMkSfp8Ppit2TY1rFSg
- SsNKBfTx+XzhcBj9DakSCoWg1fSsAVXSWSagD0VRaDtpE41GodXY5G//Kn1Uf0+4CACAjPqnmWAwCABw
- LONw+D0o6etd5Pf70Vj54PV6AQBK/a+PSnbHvHy7CAI7ymybgkoK+PyR7Pz2GiKRCADA7ph/UPqgGoTP
- HzRKVlAUBQBYXnW+HSWapuFbRV9JwvSV5EBfSQ70WMnr9UajUfSqOHqp5Ha7MQyLx+NohTh6puR0OnU6
- nc/nOz09RevE0RslgiB0Ol0kEmFZ9urqCq0WRw+UjEbj5ORkKBRiWZbjuMvLSzRCHF1VcrlcGo3GZrPt
- 7e2xLHt8fMzz/MXFBRonju4p4TiOYZjP50un08df4Xn+/PwcDRVHl5S0Wq3JZKIoCnZOg1wud3Z2hkaL
- o+NKXq93fHx8YWEhHo83y0AEQZDZjLe0tDQx8bCYkUqlUJs6giBUq1W0mTg6qKRWq00mUzgczmQyqMpX
- OI47OTlBW4qjI0pOp1OlUuE4nkwmUYmnsCybTCbR9uJov5LFYjEYDCRJHh4eogYtsCwbi8UIgvj0IqFQ
- CL3N87RTiaZpDMNmZma2t7eRmU0k3/SG0TYlq9WqVqtxHE8kEmhGoum2ktvt1uv1ZrN5c3Pz6OgITacd
- dFXJbrdrtdq1tbWDgwM0kfbRbaWdnZ0Xpum20FWlZDJZrVaLxSLHcWgi7aOrSgzD7O/v/1VHEAQ0lzbR
- bSVIJpOp1Wod6q7eKDEMs7u7WygUisUiz/NoUuLomRKE47jXD0KO425ubu7u7v5+kfv7e/Q2z9N+JYZh
- 0un0K+cMQRBub2/R9uLoiBLDMFtbW6VS6X+7K5/P12o1tLE4OqUEYVm2Uqnk8/lsNova1MnlcvL4uGgm
- FotVKpXnBiHP83L6BGxGEIRyuZzL5RAljuNk9qHeTCaTaR2EHMfJbzmlmUQiUa1Wy+Vy48GVzWbluujV
- DM/zpVKpMQhlvDTZTCqVKhQKcH6X9wJyM4lE4s8619fXaJ04eqYEP0y+fPlyd3eHVoijl0odoq8kB/pK
- cqCvJAfeoNKTLYZDygGX+2H78dvZCDqkHLAtWgEAJEmigfIhEAgAAIxW/aPShGkM7ntHA+XD+vo6AOCT
- 9udHpZGx71ZWlwEA3/QvlXTw+/0AgIWluScHFDTGz3CbfyQSQVtIG5IkAQAej2dU+xN6MsZsm4JWMtrW
- D/sHAIBNq9FjJPWimLLqYITX6w0Gg9FolKIoWmJQFBWJRAKBADyU4PF4tGZNk0XLKbOxyVHnigOKSZ9F
- p70x3p5VejjLNKZQGUYtcybcubhCLBMuQlJlZXV50bFgmjX8rvulNfn/VpJ7+QcoZ43JL5we4wAAAABJ
- RU5ErkJggg==
+ j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAABIRJREFUaEPtm+lTIkcY
+ h/PvrMkmtbvZHJW4WS6huAShRFxwFBWQKIg4iMYqz/Ioscr7ilcsb/3iF8uP5ot/V35uv8GBXV22tpmZ
+ 3uKp5sP09AzvU93zdveI37wwPHuivDY/11v50fS8JMiS8hGlnyw/OP3WcNu7eFc8oUti8eg7KWhrML8y
+ fVcSPEqR0ktDjdNvi8djdGki8acuoeASic5Yp8XzVqmA8qAE42apiTXt7e3NZrNDQ0N/6RIEJstyKpVi
+ 0fqC9eiMgggpoYr5oB1k6FLd09/fz6wamtylSg6/lfkMDg5Sc0HI5XLMyuj6/UHptfn7aCyKWoH6R0km
+ k0Hwbe0SG373SshvqEqn09REQJLJJBQMzt9ICfla3C5isI5CnmBKNWz+0W1+K4eBgQEooG/ulTAZ4wDJ
+ nk6KCbIaLNo7I1+PEoYYLLCqqCrpmKqSCFSVREBjJSxesNakA05oqRSPx2022/T0NB1zQjOlSCTicDiw
+ hTk+PqYqTmijFI1G4YPF2PLy8sXFBdVyQgMlj8fjcrmwCYXP2tra+fk5neCEqkqxWMxisQSDwYmJCfis
+ rKysr6+fnZ3RaU6opyRJEpIBHp75+XnIMKB0enpKLTihkpLdbvd6vVj2s84psLGxcXJyQo04UXElzDx1
+ dXWhUAjJmjwUbG5uCpbxWltbrdb7lxn5fJ4kioHS4eEhteZEBZXMZjMGWzabXVpaIoMPQMY7ODigCzhR
+ ESVMoyaTSZKkubk5iv0R8GihDV3GCf5Kfr/f7XbLsrywsECBPw6UJicnMfO+eRJMYnT3MuCphHshTTc2
+ No6OjpZkti/ks1YY3JQCgQAeHgy22dlZCoQfaithQe10On0+3/Dw8OLiIkXBFVWVwuEwptHu7u6ZmRn6
+ /gqgttLY2NgTaZoLqiohBWOu3NnZwQxD318B1H6Wpqam/nkPlgIUAm/UVmJg7B0dHVWou7RRAuPj49vb
+ 27DCloFi4YRmSgz0UvmDEI2vrq5ub2//fZK7uzu6exnwVwLY5JWZM2B+fX1Nl3GiIkpgZGRkd3f3k921
+ tbWFJ5Cu4USllBhY6e3v7yPu1dVVkigGu1oxNhdKsNCG1WODEIlEpC2gEgy/vb099Amp/A88BX41iYnr
+ w0EIJfFepyjBvgPDDN1VmLigJ+pLLyXwQTIsDEKBX00qyefzWGew/C72C2QlGIR/v+fy8pKqOKGZEsDG
+ 5ObmBqshOuaElkoVoqokAlUlEagqicBXqFT0E0N8IIdjiNJ5ASn6ISg+wZYAjmVZpvMC0tfXBwVPwElK
+ Vq8Rx6lUis4LSE9PDxTe2H8hpVfGbzs621H1WX+l0g/pdBrBh1qb4UJKKBbPW9QCDEpqKAh4XhB2V1dX
+ rf3nIiUUX7CeWQn0s37WP8DWYC6IPCi9MNTUBxysRTKZzGQyuVwOyRGZUFcgJAwl5AP2TwnoH7vPorAo
+ UrovRldtpKONiemflki4MN4KpVQJ5aWxxuSu9Td7pUhLR7Q9GovqqiCTtbSFvE3uPxy/lkTOykeUxC6G
+ Z/8BKGeNyS3v/jQAAAAASUVORK5CYII=
@@ -332,103 +330,98 @@
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
- j3ofuz55f3q4kLyw8Bv3hPP74uYdwgAAAAlwSFlzAAAOxAAADsQBlSsOGwAAFlxJREFUaEPNmwdTW1mW
- x/05tmqqZqtnt6t7uqenw7RtjAEFQBIIiSSEyCiSczQ552BydiTnJAkJJVDOCQmMkbvt3W7PfInd9654
- CAlsHKqm//Uvl8Hi+f50zj333HvRre9RX3n5Z+zfCFHBtGQqi8Vi/PHEZDDoDDo1kRJKRv+I+cZ3/Lc8
- v/gJ821ELIFBp9NiY6PwBCIKEx6EDg9C/dFMRGOoJHJ6cgqLxQqPwV2LhAr3Z7FYtNhYmASF8w8I8fPH
- 3r2Hvev3RzPufmBkKD4pJjYrnZ6TmUmOI97D/eSNhCb6M5nM6LBwAIO564e544e+c/cP6ND7AaTgkLgI
- cio1PjOdXpaXX1laxmaz/UJ/vED6EfMNi8WKJkA8IX7+FzC3/3DGBwaRQ3FxEaTUOConNa0gM6uqpLSt
- oaGxro4cR7xAIsbgabGUSzw+z/q3O+Te/XA0JgpPiCdHpVFpnNT0fE5mRVFxY3VNd1vb6MBgZUVFaCQG
- QvoH9m8MOj0CjcX5B/wxYYL9/AlBKHIIjkKMSIqJpSckZtEZBZlZFYVF9Q+q2puaB3p7Z8YnHk1Osdns
- H1Bf34LqdUxsWCAKe9fP93H/Xgf7+eMDUaSQ0JgwYkJUTFo8jZ2Smstil+TmVZWWNtbUdDS39Hd3T4yM
- Pnv8eGN1tbamJijM7xYtmRqFJyAhQt2+80EGsw4DFaJ7kP38P9HB9/xD/O+H3g8koNBkCCacFhmVEkdl
- JadkM5iFWdnlhUW1FZUtdfVdrW0Dvb3jwyNPpmeWFxZ2t7YnJybIccRbLBaLiMIE+937IJ4Q//sEFDoc
- jSFigyOwIaTgUHLI53AoLhKHj8IRovBhFCIpISo6lRoPYAoys8oLCqvLyhtrajuaW/o6u0YeDkyNjz99
- 9Ghxbn5zfV24t7e5sUFLpt5iMBjhQSioKtwMKfiefzgaE4nDU4gRVFIkLTKKFhVNi4pOiIr5FCdGnzsm
- NjEmNpkSlxZPg2CYrILMrLKCAgimuqa9qam3o3Owr398ZOTR1NTzJ0+XFhY21tb4XO6BVCaVSFLSkiGk
- sEDUTbIu+J5/GAodicNTSZEpFCo9IZGZlMxKTmGnpHJS0z6D09I5aekZafSMNHpmOj2HxS7KzikvLKop
- r2iqrWtvau7tPIeZhGAW5+bXVla2N7f4PJ5EJFar1QaDgc5Iv0CCxv3z1cb63TuvOaSkGAojMSmLwczP
- yCzMyi7KzinOyS3OzfssLoFdmpdfml9QUVRcW1HZXFcPpVlX11D/w4mRUTgyTwDM1sYmb3dXKBBIJRKl
- QmEwGCwWy/uRMHf9cAFBpODQ2HBiIlxAM9LpoIBWl5XXVlTWVT6or6r+RDdUX3JjdU1TTW1rfUNXW9vD
- nt6RgcGp8fEnM4/mnj1bXlxcX13b2YIisy8USiXSw8NDlVJl0OttNpvVan0n0u07of4B4RhsNCEsPjIq
- lRrPTk3L42SU5RdABae+vrOltbutrae9o6e9o7ej0+3Ork93Xxfkwb6+saFhOMcuhUWwtycWiQ5kMrlc
- rlartVqtXq83Go3vQcJCqxsatB5JsRRGUnI2g1Wck1tVWtZUU9vV2jbU1z82NDwxMjo5OjY1Ng55/D2e
- npiYnpiYmbzw9MSE78sQP5mZmXv2bGVxaXN9nbuzI9jbk4jFBwcHSqVSo9HodDo9LIPBYDQazWaz3W63
- 2WxuJEIgCqoNP98J+vk2XKADwtHYaHxYPBkKDgcOTnlBYd2DB22NTf3d3ePDwyAN5mdnF2bnFuc8PD9/
- pZcWFpYXF1eWllaXl9ZWltdWlleXl5YXF5cWFnxfDLy6vLy9ucnn8uCYXEECYIxGo8lkslgsR0dHdrvd
- Gwl91y80IIiIDYkJI9KiYtJpCZl0RkFWdmVJSSMITv/D6YmJ2WfP1lZWtzc3d7e3Ie/s7O7scHd3rzOP
- y+XzeEIBf39fIBYJJeJ9iXh/f18g2OPzeTwel+v1evC0PT5fKpEo5HKNRqPVagGMJwaQGZbVar0CCXv3
- Hj4I6j5iiRGJINmYrOLcvOryipb6ht6OzrEhKDhLCwvbW1vQ1JRKD2QyyLAOr5FcLlcoFCqVUqfTGI06
- s1l/eCgRCvl6vVajUSmVCrlcjrwYPApIqVQCEoCBjN5yLquH7Ha70+k8Ojq6QML6+eMCg4jY4OiwcFpU
- dDpc2QqzsytLSkF8hh8OzExOzT+f3VhfF+ztHRwcqJRKFSz19QJvsF6vM5uNdrvl5MSu0SgGBx+Ojgzb
- 7Raz2ajX6zQajddPgWciaYbw+JKAkoAgORwOCInJYIQFoUPvB4ShMeRQPCWClESJYyan5LDYJXn51WXl
- zXX1vR2do4NDj2dmFufntzY2hAIBVDpvwKPTaQ0GvcVicjhsL186VaqD9raWvJyc3JyckxO71Wo2GPRa
- rTcSEEDyDBHCY/PR0dHR8fHxBRIRjcYHBoVjsFF4ApUcmUKlslJSc9mckvz8moqK1oaG3s6u0aGhx9Mz
- S/MLW5ubEBKcGIDKV/CA1IDHajU5nTaX69hs0tTWVOdkZeVkZpYWF52eOux2CEmjgcLiK6RAGwyG9yLZ
- 7fZLSBEYDCEIBWXdxRKUmsvJKC0ogJEaezu74Ik0s3iOBHL9SoHRwDNHb7OZjo/tr16d8HlbpSXFWRkZ
- mRxOJodT9aDi7MwJI+nUarX3I2CpVKqbBwoguecSk8EgYYMJKHRESCiYSGk0GictPS8jowwU7iaocI9B
- hfv9SPA4oPiYTAa73XJ6emQ0qMbHhjkslqebGupcrmO73fJ5kS6iRA4OCUNhoJ1WOEBK4KSl5WVklhUW
- 1lZWtjU29nVBUXo8Dc2lzY0Nwd6eTCZTXBY8CKVGo9brtWazweGwvHzpUCmlleVlLAbDy60tjWdnTpvN
- rNdrVSql16OAlErllbnnVSGAvKMEI6EjQkJiwom0aHeU8jMyy6DEqwSJB+bSwhyEBK0YUqncQ6BMAx6L
- xeh0Wl0u5+LC80wOh5Ge7uvO9laXy514Go1KpYLeDpUKhEehhBmVSsV1gfIFu1TE3UhozJVItZXvQTr/
- v5Vardpo1NlsppMTu82mHx0eSEtJTU+92r09na9fvzg+tlmtRqNRp9drgXU6jc5d1VVqNZTDvkvTTZEI
- KExEcAhIvNR4GhtKPGguQR0qVPE6RwYHH01PL8zNbayvQ/sTicRzGdVqNSaT/ujI/PLlkVIpqa+tTklK
- eocHHvb89tuZy+U8ObEdHVnsdrPdbrLZIFssRpNJbzBAeFotFCLPvsF3wQWy2WwOh8PdPVwguctDVGq8
- u+kGFa+lvr6no2N4YGBmamp+dnZ9bY3H5Uok4sPDQ4VCDtoCs9kAkm16cjSJFp9Io8GOv84D/d2//Xb2
- 229nr1+/+OWX41evjl0up8vlPDtznJ4eOZ1Wu91kNhuMRr1e70YCa64nlafA0vTxSHweTyaVKpUKjUZl
- MGitVuPJiU0hFzc21CZQqQnUONr7XPWg/OmTJ9eZx93c2lzZ2V632cwmk8FgAEQfhgSKeEh0GLQupVDj
- WdC6xCnNz68ur2iuq+9u74Abosn52dmN9bU9Pl9+KNNqVUajzm43nZ7atzaXszM51FgKNYZCjYl9t4lh
- hBva6bRaLCYYCYoV0n17NqxAoG11by7OkVARwSFgqQXdQw6bAzVE5eVNdXXd7e1DDx8CpK3NDdG+QK2S
- m816p9NydnY0PTlKiY6mREfHRt3IvkO/zi9eHNlsZqPRoNPpkGru24yDzcXFfunmSI+mJpcW5rm724cH
- YrNJe3Ji43E3ykuLoyPJH2TfoV9nuMOwmEwfhYQPQhGDg6MIYdTIyJQ4KjMlJYfNLsnLqyora6qt7Wpr
- g5Gmlhfn9/i7avWBTLI3MT4URSKRSURyxIfZd+jX+dWr46MjgKT13DIhVIjAdHJv1EFDBCFhgyMJhDhy
- ZHJcHCM5JZvFLs7Ne1Ba1lhT29naNtjf/2h6anV5cV/Im599nJ3JIRK8R/DZDSOZjUa9Tqf12gh6CSC5
- T4jOkaDNUiSeEEcmJ1HiGMnJWSxWUW5uZWlpQ01NR2vrQB+EtLKyKNrnMdJTw3C4MDwuHI//CPsO/Toj
- HQbYgHhSeYGZTCar1XoJCRcYFI7FkvGEOBKERE9KzmKyCnNyK0tK66tr2ltaBvr6picnVpbmhQLu1MQI
- i56GDwmBHfqh9h36dXa5HDabCd7/QhsQDSxAhYAh9f1jkKYmxpcW5vjcbaVCqlSIe3vaQ7HYUCwG/vMD
- 7Dv063x29mlIYRgsGY+nkMiJFAo9KSmTySzMyakoKamvrm5vbu7v6ZkcG5t7/mxrc10iFur1SqfTzOOu
- M9JTsKigD7Lv0K/z6andYjHodHBjCzfmXlSIwFGr2Wz2QcLhKSRSYiwlPTEpk8EsyM6uKC6uq6pqa2ru
- 6+4eHxl99uTx6soyn78rP5Tq9SqbzWAyqfr7OtAB99EB/tCfgffhv7/LvkO/zsfHFpMJatWh/hxqJt1n
- EoDKU6BCmEymD0MaGx558ujR0uLi9vaWaF8ol8s0GoXZrDs+Nj99PB5JDAu653cT+w79OtvtRoNBA28R
- oe3GRyBhSDhcbAQpITY2PTExgwGd4JUXFdc+qGptaurr7h4dHn40PT0/N7cON+Ni8b5MJlEqD/V6ld1u
- 2BfupCcnBNy5HXDn58A7t99tDiPVt7Xz8tLic6MR8CC7GPcpgC+VXq83mUxGo9ETKZCAxpBCcbEREQkx
- sdChF52Rn5VVVlRU++BBa2Njb1f3yNDQzNTU3Ozs6uoqd3dHINjb3xdKJKLDQykcLq3Vquntagm8e+fe
- P356tx+UF71+7Xz92uly2U9PrScnFsROp8luN5jNWr1epVLJFefnfF5UCBiQTqczwR3uxyPt7uzw+fy9
- vT2hUCASQeFSqQ4NBvXRkXFtdY6Rmnjnh7/D/v5KV1VASMfHZqtVZzSq9XoVYp1OqdHIlcpDufzg4AA6
- 9wQnljdBuogSOTgEFxjkRiLCSImJHDo9PzOrrNCN1NPVNTw4OD05Nfv8+crKys72Ng8WDMYXCgUgXFqt
- wmLRaTWyvCzWP7779udrnJfFOj21ms1atVp+eCiVySTnFkulYolEJBbvi8UisVgklUpk8IEuvD1zn0n4
- nh9qtVrQGZ0jhYSEBgZCc+k8SmkJiZx0N1JNZWVLQ2NPZ+fwwMDU5OTzZ89Wlpe3t7a55+LxuDweb2+P
- v78vlErFSuWB0ah2Ok0Pe9t+/OtXbn/ztdt/hcxOT3Y4jFqtQiYT7+8L9i4Jeo9ACuzvQ2ASiZsKCRRy
- hOiJBNoIN1JkaChUHrBQxUPKg2eUYCQQpSuQzsGgiIFwyeUynU5pt+sX5x/FksK+/+pLLydTY46ODGq1
- XCIR7e3xvR4FBD9NKBK5kbymk1egQJQukKJCcbigoHBssEcRT8yg06G5dIHUOTQwMDUBIS0vL29tbe36
- iMvd5fG4IFwymVitPjSbNWLRTjY77bv/+gLyf3/x3ZeQKWSC3a5Xqw/F4n0+n+f9IFg8Hk8gEMCBEkNX
- CldFCZE3UjSegEehicEhoG0F3YO7PHgkHow08ezp06Wlpc3NzZ2rtLu7A4+GKxDsSST7CoXMYFA6HIap
- sYff/uU/v/niz9/+BXIYJsBq1SqVMpFIyONxvZ8Ci8vlnueeG8k3UNchMSnh4aA2RIWFUSOjkuOojOSU
- LCarIDunvNi9LoHEm5qYgKJ0PRIQHDEoXCKR8PBQotXKbTbd+upztN/tr/78p6/+/KfvvvzCZFIrFLL9
- fcHNkW6ceEwmlUgiBoeQ8fjYiAhadEwqjcZKTctmswtzcyugtrW6ram5t7sbmktTU8+fupG236mdnW0Q
- LqFwTyoVqVQHZrNmfXUWh7r/33/6j79/+RetVi6TiQUC/u7urs/PeiN5lQffinepiLOYzKTomEg8IYYY
- ER8VnUyNByEqzHGHqKWxsRvOuslxOOsWFzc2NkAc3i3PSiiTieGFS7W2Mhd8/250OE6lOpBKxUKhgM+H
- 7gEv/yAkwIPUBs+GCHQMnm2rXq+/aIhYTCY9nkYhkWjR0UlUKj05OdM75TqHBgaR8r21tQXeP8HNBFet
- ffjcT6ZUHmo0Co1GqVbL5fIDmUwiEomEQqHvj4Ba5wnzjl0t2FxcdOIsFisjNS0hJiYlPp6elJzBYOZn
- ZZfBrV0LssJOQSvs6srK9jZUu5F8uKEkEgk8GWRy+YFCcahUyhUKd3MglUolEu8XA4FMQ47FPc/xvAS+
- abVa3UhsFiufzUmjJTBTUjhQlYN4aiofAJ6RwSGIB26CtuGOQSAQIMnteSf7bnkeoCMH+XD/dnFR6ym5
- XI5coXtdmSEXMOA0HAQHnBC5j1PYbHZpTi47LS2TyczLzCotLKyuqGyub+jugKs2nG+rq6sg3wQCAcgH
- MD5klbi54BsKIO9/AkKqGdJfg5NHcIl05CE7LMAGTlvdh15sNru6pDSHzcnPyiopcPN0tXcMPoRWIWj+
- rKz48iDbZiDPPv/ThUwYAANInLCOzwW+dDgcgA28wH2AzGGzm2tqi3JzSwsLH5SVN9bWdba1DfT3T4yN
- PX3yFNTr3d1dMH/AHQxY2rx2/58uZLp7Hs3Z7XaHw3F8fHwC68W5wJeAzQHr5OTEfRnD4XB6WtsqSkqq
- KioaamrbW1sf9vaNj449efx4Ea7XO/A+AvCAi3TQI145Uz3PqT9ayP0KeO8Byenp6cvLOj09BWwA+MWL
- F06nE0LK4HBG+vvrqqoa6+raW1r6enqg3evMzML8/Pr6OigJQqFQ7PH7O6D4+F7yfIo877+QaQN4AMwZ
- LNe5zs7OABUAe/HixcuXLy0WS2p6yi06gz49Ntbe0tLV3t7f2zs6PDwzPT03N7e2toZMIVDiFAoFWKfB
- IuBZfMBM/SwCUx8kGxIcl8v1CtYv53r16hUCBuRyuZRKJfSLoJSEmNGhocH+/sH+h6PDI2AJWllZAVPo
- ypTzLEFeVehTBKaEw+EAUx/EB0QGgfn1XF5gLpfrl19+WVxcjIgl3AohoZqbmuaeP5+enHw0MzM7O7uy
- suI5hcAdJpJy4JoAJLrXID5dSEFD8g3h+fXXX19fFgIG/vXNmzcNDQ338bdv/Yj+a0ZGxub6+sLc/OLC
- AuDxWlVBlQOrHnI/5UmCDOUTBeoYmOtg/oC3H+F5cy5PMPB9lUoVnxTn/oACITqku6trjw81xaALBjye
- qxCy8IF1GvB4jeMThRRopB54hQjA/A8shO3Nmzf/C6u+vh4TEXDxyRhyHHFpaUkicfeRIpEIiY9nlfOs
- rb5rxScKlK/38gAAoN9gvX37dnJykkQJv/RhHz/cT2w2+/Hjx0ql0rPLAiUOue3wrK3IIC4tFh8rUKM9
- K/WrV69AJQA8njCA5Pfff3/79u3vv/8+MzODfCzm0keybgf/nRxH7OjokEqloGNH+kUAg6ziSCFCautn
- kedc9yUBDEBv37795z//+a9//ctsNjc2NpIo4T+gv74CCRgfFczhcDo6OpaWlqRSqU6nQ0o2UhKQfPuM
- UfISEi5f2pcvXxqNxq2trdbW1oRkWjApyAvBG+l71Fc/oL9GhftHUiMSU2hp6anev//z73ZqekpCcjyJ
- Eh5AuOM7+P9H+j+PD9tej1w+6gAAAABJRU5ErkJggg==
+ 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
+ EPAlSQAAAABJRU5ErkJggg==
@@ -478,43 +471,39 @@
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
- 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
- RK5CYII=
+ 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
+ /75aOx5brnAAAAAASUVORK5CYII=
@@ -564,36 +553,35 @@
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
- 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
- ku/cAAAAAElFTkSuQmCC
+ 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
+ 6AJaAAAAAElFTkSuQmCC
@@ -606,6 +594,6 @@
False
- 37
+ 49
\ No newline at end of file
diff --git a/INT89DB_26/Forms/FormFactoryReset.cs b/INT89DB_26/Forms/FormFactoryReset.cs
index 08c3614..49adca2 100644
--- a/INT89DB_26/Forms/FormFactoryReset.cs
+++ b/INT89DB_26/Forms/FormFactoryReset.cs
@@ -140,9 +140,9 @@ namespace INT89DB_26.Forms
structItem.DummyBool2 = false;
structItem.DummyBool3 = false;
structItem.DummyBool4 = false;
- structItem.DummyInt1 = 0;
- structItem.DummyInt2 = 0;
- structItem.ModbusTcpStartAddress = 0;
+ structItem.FeedbackSampleCount = 10;
+ structItem.FeedbackIgnorePackages = 5;
+ structItem.ModbusTcpStartAddress = this.ParentForm.SystemConfig.ModbusTcpStartAddress;
structItem.Serial3BaudRate = this.ParentForm.SystemConfig.Serial3BaudRate;
structItem.Serial3Mode = this.ParentForm.SystemConfig.Serial3Mode;
structItem.EthernetServerAddress = "";
diff --git a/INT89DB_26/Forms/FormMain.Designer.cs b/INT89DB_26/Forms/FormMain.Designer.cs
index d419bb1..97de1d2 100644
--- a/INT89DB_26/Forms/FormMain.Designer.cs
+++ b/INT89DB_26/Forms/FormMain.Designer.cs
@@ -104,6 +104,7 @@
this.smartTCPMultiServer.MaxReceiveBufferSize = 1000;
this.smartTCPMultiServer.Port = 5001;
this.smartTCPMultiServer.ReceiveTimeout = 3000;
+ this.smartTCPMultiServer.OnReceiveHandler += new SmartX.SmartTCPMultiServer.ReceiveHandler(this.smartTCPMultiServer_OnReceiveHandler);
//
// FormMain
//
diff --git a/INT89DB_26/Forms/FormMain.cs b/INT89DB_26/Forms/FormMain.cs
index e25416e..a2e5db2 100644
--- a/INT89DB_26/Forms/FormMain.cs
+++ b/INT89DB_26/Forms/FormMain.cs
@@ -79,6 +79,8 @@ namespace INT89DB_26.Forms
public OptionParameterItem CurrentOptionParameterItem;
// User
public CollectionUser CurrentCollectionUser;
+ // 현재 선택 된 피드백 설정 값
+ public FeedbackConfiguration CurrentFeedbackItem;
// 열별 중량 데이터
public Collection CollectionWeightData;
// 장비테스트모드 열별 중량 데이터
@@ -298,6 +300,10 @@ namespace INT89DB_26.Forms
this.CurrentOptionParameterItem = new OptionParameterItem();
this.CurrentCollectionUser = new CollectionUser();
this.CurrentAlarmList = new AlarmList();
+ this.CurrentFeedbackItem = new FeedbackConfiguration();
+ this.Current30000ModbusData = new Modbus_30000_Data();
+ this.Current40000ModbusData = new Modbus_40000_Data();
+ this.Modbus = new Modbus();
// SystemFile1 폴더 생성
if (Directory.Exists(this.PathSystemFileFolder1) == false)
@@ -313,22 +319,22 @@ namespace INT89DB_26.Forms
}
private void DefaultSetting2()
{
- // Ethernet Static setting
- if (this.smartConfigs.IPSettings.DHCPEnable == 1)
- {
- this.smartConfigs.IPSettings.DHCPEnable = 0;
-
- this.smartConfigs.IPSettings.DeviceIP = "192.168.3.10";
- this.smartConfigs.IPSettings.SubNetMask = "255.255.255.0";
- this.smartConfigs.IPSettings.GateWay = "192.168.3.1";
-
- this.smartConfigs.IPSettings.Save();
- this.smartConfigs.IPSettings.SetApply();
- }
-
// 이더넷
if (this.SystemConfig.IsEthernetEnable == true)
{
+ // Ethernet Static setting
+ if (this.smartConfigs.IPSettings.DHCPEnable == 1)
+ {
+ this.smartConfigs.IPSettings.DHCPEnable = 0;
+
+ this.smartConfigs.IPSettings.DeviceIP = "192.168.11.205";
+ this.smartConfigs.IPSettings.SubNetMask = "255.255.255.0";
+ this.smartConfigs.IPSettings.GateWay = "192.168.11.1";
+
+ this.smartConfigs.IPSettings.Save();
+ this.smartConfigs.IPSettings.SetApply();
+ }
+
if (this.SystemConfig.EthernetOperationMode == 1)
{
try
@@ -343,6 +349,8 @@ namespace INT89DB_26.Forms
{
}
}
+ else if (this.SystemConfig.EthernetOperationMode == 2)
+ this.EthernetClientDisconnect();
}
}
@@ -1069,6 +1077,9 @@ namespace INT89DB_26.Forms
this.CollectionWeightData[0].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces);
this.CollectionWeightData[0].WeightString = receiveData.Substring(2, 5);
this.CollectionWeightData[0].ADCValue = receiveData.Substring(7, 5);
+
+ if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus)
+ this.Update30000ModbusData(0);
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
{
@@ -1096,6 +1107,15 @@ namespace INT89DB_26.Forms
this.EthernetWrite(this.Protocol_STD1(1, this.CollectionWeightData[0]));
else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2
this.EthernetWrite(this.Protocol_STD2(1, this.CollectionWeightData[0]));
+ else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus
+ {
+ if (this.SystemConfig.EthernetOperationMode == 2) // Client
+ {
+ byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP(
+ this.Protocol_Modbus_Client_Write_Lane_Data_TCP(0), this.SystemConfig.ModbusTcpStartAddress + (1 * 50) + 140);
+ this.EthernetClientWeightDataForModbus(etherByteData);
+ }
+ }
}
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
@@ -1111,6 +1131,9 @@ namespace INT89DB_26.Forms
this.CollectionWeightData[1].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces);
this.CollectionWeightData[1].WeightString = receiveData.Substring(2, 5);
this.CollectionWeightData[1].ADCValue = receiveData.Substring(7, 5);
+
+ if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus)
+ this.Update30000ModbusData(1);
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
{
@@ -1138,6 +1161,15 @@ namespace INT89DB_26.Forms
this.EthernetWrite(this.Protocol_STD1(2, this.CollectionWeightData[1]));
else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2
this.EthernetWrite(this.Protocol_STD2(2, this.CollectionWeightData[1]));
+ else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus
+ {
+ if (this.SystemConfig.EthernetOperationMode == 2) // Client
+ {
+ byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP(
+ this.Protocol_Modbus_Client_Write_Lane_Data_TCP(1), this.SystemConfig.ModbusTcpStartAddress + (2 * 50) + 140);
+ this.EthernetClientWeightDataForModbus(etherByteData);
+ }
+ }
}
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
@@ -1153,6 +1185,9 @@ namespace INT89DB_26.Forms
this.CollectionWeightData[2].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces);
this.CollectionWeightData[2].WeightString = receiveData.Substring(2, 5);
this.CollectionWeightData[2].ADCValue = receiveData.Substring(7, 5);
+
+ if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus)
+ this.Update30000ModbusData(2);
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
{
@@ -1180,6 +1215,15 @@ namespace INT89DB_26.Forms
this.EthernetWrite(this.Protocol_STD1(3, this.CollectionWeightData[2]));
else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2
this.EthernetWrite(this.Protocol_STD2(3, this.CollectionWeightData[2]));
+ else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus
+ {
+ if (this.SystemConfig.EthernetOperationMode == 2) // Client
+ {
+ byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP(
+ this.Protocol_Modbus_Client_Write_Lane_Data_TCP(2), this.SystemConfig.ModbusTcpStartAddress + (3 * 50) + 140);
+ this.EthernetClientWeightDataForModbus(etherByteData);
+ }
+ }
}
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
@@ -1195,6 +1239,9 @@ namespace INT89DB_26.Forms
this.CollectionWeightData[3].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces);
this.CollectionWeightData[3].WeightString = receiveData.Substring(2, 5);
this.CollectionWeightData[3].ADCValue = receiveData.Substring(7, 5);
+
+ if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus)
+ this.Update30000ModbusData(3);
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
{
@@ -1222,6 +1269,15 @@ namespace INT89DB_26.Forms
this.EthernetWrite(this.Protocol_STD1(4, this.CollectionWeightData[3]));
else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2
this.EthernetWrite(this.Protocol_STD2(4, this.CollectionWeightData[3]));
+ else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus
+ {
+ if (this.SystemConfig.EthernetOperationMode == 2) // Client
+ {
+ byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP(
+ this.Protocol_Modbus_Client_Write_Lane_Data_TCP(3), this.SystemConfig.ModbusTcpStartAddress + (4 * 50) + 140);
+ this.EthernetClientWeightDataForModbus(etherByteData);
+ }
+ }
}
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
@@ -1237,6 +1293,9 @@ namespace INT89DB_26.Forms
this.CollectionWeightData[4].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces);
this.CollectionWeightData[4].WeightString = receiveData.Substring(2, 5);
this.CollectionWeightData[4].ADCValue = receiveData.Substring(7, 5);
+
+ if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus)
+ this.Update30000ModbusData(4);
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
{
@@ -1264,6 +1323,15 @@ namespace INT89DB_26.Forms
this.EthernetWrite(this.Protocol_STD1(5, this.CollectionWeightData[4]));
else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2
this.EthernetWrite(this.Protocol_STD2(5, this.CollectionWeightData[4]));
+ else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus
+ {
+ if (this.SystemConfig.EthernetOperationMode == 2) // Client
+ {
+ byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP(
+ this.Protocol_Modbus_Client_Write_Lane_Data_TCP(4), this.SystemConfig.ModbusTcpStartAddress + (5 * 50) + 140);
+ this.EthernetClientWeightDataForModbus(etherByteData);
+ }
+ }
}
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
@@ -1279,6 +1347,9 @@ namespace INT89DB_26.Forms
this.CollectionWeightData[5].Weight = Helper.StringToWeight(receiveData.Substring(2, 5), this.SystemConfig.DecimalPlaces);
this.CollectionWeightData[5].WeightString = receiveData.Substring(2, 5);
this.CollectionWeightData[5].ADCValue = receiveData.Substring(7, 5);
+
+ if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus)
+ this.Update30000ModbusData(5);
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
{
@@ -1306,6 +1377,15 @@ namespace INT89DB_26.Forms
this.EthernetWrite(this.Protocol_STD1(6, this.CollectionWeightData[5]));
else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f2_OPT2) // OPT2
this.EthernetWrite(this.Protocol_STD2(6, this.CollectionWeightData[5]));
+ else if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus
+ {
+ if (this.SystemConfig.EthernetOperationMode == 2) // Client
+ {
+ byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP(
+ this.Protocol_Modbus_Client_Write_Lane_Data_TCP(5), this.SystemConfig.ModbusTcpStartAddress + (6 * 50) + 140);
+ this.EthernetClientWeightDataForModbus(etherByteData);
+ }
+ }
}
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
@@ -1323,6 +1403,9 @@ namespace INT89DB_26.Forms
this.CollectionWeightData[i].Weight = Helper.StringToWeight(receiveData.Substring(i * 12 + 2, 5), this.SystemConfig.DecimalPlaces);
this.CollectionWeightData[i].WeightString = receiveData.Substring(i * 12 + 2, 5);
this.CollectionWeightData[i].ADCValue = receiveData.Substring(i * 12 + 7, 5);
+
+ if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus)
+ this.Update30000ModbusData(i);
}
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
@@ -1340,6 +1423,19 @@ namespace INT89DB_26.Forms
{
this.DataBackup(this.CollectionWeightData);
this.ChildFormMainDisplay.UpdateUpdateStartWeightDisplay(this.EquipmentStatus, this.CollectionWeightData);
+
+ if (this.SystemConfig.EthernetMode == (int)DataStore.CommunicationMode.f99_Modbus) // Modbus
+ {
+ if (this.SystemConfig.EthernetOperationMode == 2) // Client
+ {
+ for (int i = 0; i < this.SystemConfig.EquipmentColumns; i++)
+ {
+ byte[] etherByteData = this.Modbus.WriteMultipleRegisterTCP(
+ this.Protocol_Modbus_Client_Write_Lane_Data_TCP(i), this.SystemConfig.ModbusTcpStartAddress + ((i + 1) * 50) + 140);
+ this.EthernetClientWeightDataForModbus(etherByteData);
+ }
+ }
+ }
}
else if (this.SystemConfig.CurrentForm == DataStore.FormStore.FormEquipmentTest)
{
@@ -1812,6 +1908,10 @@ namespace INT89DB_26.Forms
double passValue = this.Current30000ModbusData.PassValue;
double overValue = this.Current30000ModbusData.OverValue;
double tareValue = this.Current30000ModbusData.TareValue;
+ double lowLimit = this.Current30000ModbusData.LowLimit;
+ double highLimit = this.Current30000ModbusData.HighLimit;
+ double deadZoneLow = this.Current30000ModbusData.DeadZoneLowLimit;
+ double deadZoneHigh = this.Current30000ModbusData.DeadZoneHighLimit;
int equipmentStatus;
if (this.EquipmentStatus == DataStore.EquipmentStatus.Start)
@@ -1864,6 +1964,66 @@ namespace INT89DB_26.Forms
for (int i = 0; i < 2; i++)
madeData[madeDataIndex + i] = length4Value[1 - i];
break;
+ case (int)ModbusDefine._30000_Modbus.HighLimit_High:
+ length4Value = GetBytes((Single)highLimit);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.HighLimit_Low:
+ length4Value = GetBytes((Single)highLimit);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.DeadZoneHighLimit_High:
+ length4Value = GetBytes((Single)deadZoneHigh);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.DeadZoneHighLimit_Low:
+ length4Value = GetBytes((Single)deadZoneHigh);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.DeadZoneLowLimit_High:
+ length4Value = GetBytes((Single)deadZoneLow);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.DeadZoneLowLimit_Low:
+ length4Value = GetBytes((Single)deadZoneLow);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.LowLimit_High:
+ length4Value = GetBytes((Single)lowLimit);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.LowLimit_Low:
+ length4Value = GetBytes((Single)lowLimit);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.SampleCount_High:
+ length4Value = GetBytes(this.SystemConfig.FeedbackSampleCount);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.SampleCount_Low:
+ length4Value = GetBytes(this.SystemConfig.FeedbackSampleCount);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.IgnoreCount_High:
+ length4Value = GetBytes(this.SystemConfig.FeedbackIgnorePackages);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.IgnoreCount_Low:
+ length4Value = GetBytes(this.SystemConfig.FeedbackIgnorePackages);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
#endregion
#region #1
@@ -2400,540 +2560,6 @@ namespace INT89DB_26.Forms
break;
#endregion
- #region #7
- case (int)ModbusDefine._30000_Modbus._7_Update:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].Update);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_Grade:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].Grade);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_Weight_High:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[6].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_Weight_Low:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[6].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_UnderCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_UnderCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_PassCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_PassCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_OverCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_OverCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_NGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_NgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_ExNGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_ExNgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_TotalCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._7_TotalCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[6].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- #endregion
-
- #region #8
- case (int)ModbusDefine._30000_Modbus._8_Update:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].Update);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_Grade:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].Grade);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_Weight_High:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[7].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_Weight_Low:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[7].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_UnderCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_UnderCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_PassCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_PassCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_OverCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_OverCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_NGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_NgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_ExNGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_ExNgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_TotalCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._8_TotalCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[7].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- #endregion
-
- #region #9
- case (int)ModbusDefine._30000_Modbus._9_Update:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].Update);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_Grade:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].Grade);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_Weight_High:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[8].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_Weight_Low:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[8].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_UnderCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_UnderCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_PassCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_PassCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_OverCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_OverCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_NGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_NgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_ExNGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_ExNgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_TotalCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._9_TotalCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[8].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- #endregion
-
- #region #10
- case (int)ModbusDefine._30000_Modbus._10_Update:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].Update);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_Grade:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].Grade);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_Weight_High:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[9].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_Weight_Low:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[9].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_UnderCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_UnderCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_PassCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_PassCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_OverCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_OverCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_NGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_NgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_ExNGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_ExNgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_TotalCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._10_TotalCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[9].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- #endregion
-
- #region #11
- case (int)ModbusDefine._30000_Modbus._11_Update:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].Update);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_Grade:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].Grade);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_Weight_High:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[10].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_Weight_Low:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[10].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_UnderCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_UnderCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_PassCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_PassCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_OverCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_OverCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_NGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_NgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_ExNGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_ExNgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_TotalCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._11_TotalCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[10].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- #endregion
-
- #region #12
- case (int)ModbusDefine._30000_Modbus._12_Update:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].Update);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_Grade:
- length2Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].Grade);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length2Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_Weight_High:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[11].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_Weight_Low:
- if (this.EquipmentStatus == DataStore.EquipmentStatus.Stop)
- length4Value = GetBytes((Single)0.0);
- else
- length4Value = GetBytes((Single)this.Current30000ModbusData.ModbusLaneData[11].Weight);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_UnderCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_UnderCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].UnderCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_PassCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_PassCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].PassCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_OverCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_OverCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].OverCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_NGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_NgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].NGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_ExNGCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_ExNgCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].ExNGCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_TotalCount_High:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[3 - i];
- break;
- case (int)ModbusDefine._30000_Modbus._12_TotalCount_Low:
- length4Value = GetBytes(this.Current30000ModbusData.ModbusLaneData[11].TotalCount);
- for (int i = 0; i < 2; i++)
- madeData[madeDataIndex + i] = length4Value[1 - i];
- break;
- #endregion
-
default:
length2Value = GetBytes(0);
for (int i = 0; i < 2; i++)
@@ -3080,6 +2706,10 @@ namespace INT89DB_26.Forms
double passValue = this.Current30000ModbusData.PassValue;
double overValue = this.Current30000ModbusData.OverValue;
double tareValue = this.Current30000ModbusData.TareValue;
+ double lowLimit = this.Current30000ModbusData.LowLimit;
+ double highLimit = this.Current30000ModbusData.HighLimit;
+ double deadZoneLow = this.Current30000ModbusData.DeadZoneLowLimit;
+ double deadZoneHigh = this.Current30000ModbusData.DeadZoneHighLimit;
int equipmentStatus;
if (this.EquipmentStatus == DataStore.EquipmentStatus.Start)
@@ -3132,6 +2762,66 @@ namespace INT89DB_26.Forms
for (int i = 0; i < 2; i++)
madeData[madeDataIndex + i] = length4Value[1 - i];
break;
+ case (int)ModbusDefine._30000_Modbus.HighLimit_High:
+ length4Value = GetBytes((Single)highLimit);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.HighLimit_Low:
+ length4Value = GetBytes((Single)highLimit);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.DeadZoneHighLimit_High:
+ length4Value = GetBytes((Single)deadZoneHigh);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.DeadZoneHighLimit_Low:
+ length4Value = GetBytes((Single)deadZoneHigh);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.DeadZoneLowLimit_High:
+ length4Value = GetBytes((Single)deadZoneLow);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.DeadZoneLowLimit_Low:
+ length4Value = GetBytes((Single)deadZoneLow);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.LowLimit_High:
+ length4Value = GetBytes((Single)lowLimit);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.LowLimit_Low:
+ length4Value = GetBytes((Single)lowLimit);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.SampleCount_High:
+ length4Value = GetBytes(this.SystemConfig.FeedbackSampleCount);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.SampleCount_Low:
+ length4Value = GetBytes(this.SystemConfig.FeedbackSampleCount);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.IgnoreCount_High:
+ length4Value = GetBytes(this.SystemConfig.FeedbackIgnorePackages);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[3 - i];
+ break;
+ case (int)ModbusDefine._30000_Modbus.IgnoreCount_Low:
+ length4Value = GetBytes(this.SystemConfig.FeedbackIgnorePackages);
+ for (int i = 0; i < 2; i++)
+ madeData[madeDataIndex + i] = length4Value[1 - i];
+ break;
#endregion
#region #1
@@ -4095,6 +3785,14 @@ namespace INT89DB_26.Forms
this.Current30000ModbusData.PassValue = Helper.StringToWeight(this.CurrentProductItem.PassRange, this.SystemConfig.DecimalPlaces);
this.Current30000ModbusData.OverValue = Helper.StringToWeight(this.CurrentProductItem.OverRange, this.SystemConfig.DecimalPlaces);
this.Current30000ModbusData.TareValue = Helper.StringToWeight(this.CurrentProductItem.TareRange, this.SystemConfig.DecimalPlaces);
+ this.Current30000ModbusData.HighLimit = Helper.StringToWeight(this.CurrentFeedbackItem.HighLimit, this.SystemConfig.DecimalPlaces);
+ this.Current30000ModbusData.DeadZoneHighLimit =
+ Helper.StringToWeight((int.Parse(this.CurrentProductItem.PassRange) - int.Parse(this.CurrentFeedbackItem.DeadZone)).ToString(), this.SystemConfig.DecimalPlaces);
+ this.Current30000ModbusData.DeadZoneLowLimit =
+ Helper.StringToWeight(this.CurrentProductItem.PassRange + this.CurrentFeedbackItem.DeadZone, this.SystemConfig.DecimalPlaces);
+ this.Current30000ModbusData.LowLimit = Helper.StringToWeight(this.CurrentFeedbackItem.LowLimit, this.SystemConfig.DecimalPlaces);
+ this.Current30000ModbusData.SampleCount = (UInt32)this.SystemConfig.FeedbackSampleCount;
+ this.Current30000ModbusData.IgnoreCount = (UInt32)this.SystemConfig.FeedbackIgnorePackages;
}
public void Update30000ModbusData(int index)
{
@@ -4570,8 +4268,8 @@ namespace INT89DB_26.Forms
structItem.DummyBool2 = false;
structItem.DummyBool3 = false;
structItem.DummyBool4 = false;
- structItem.DummyInt1 = 0;
- structItem.DummyInt2 = 0;
+ structItem.FeedbackSampleCount = this.SystemConfig.FeedbackSampleCount;
+ structItem.FeedbackIgnorePackages = this.SystemConfig.FeedbackIgnorePackages;
structItem.ModbusTcpStartAddress = this.SystemConfig.ModbusTcpStartAddress;
structItem.EthernetServerAddress = this.SystemConfig.EthernetServerAddress;
@@ -4633,8 +4331,8 @@ namespace INT89DB_26.Forms
structItem.DummyBool2 = false;
structItem.DummyBool3 = false;
structItem.DummyBool4 = false;
- structItem.DummyInt1 = 0;
- structItem.DummyInt2 = 0;
+ structItem.FeedbackSampleCount = 0;
+ structItem.FeedbackIgnorePackages = 0;
structItem.ModbusTcpStartAddress = item.ModbusTcpStartAddress;
structItem.EthernetServerAddress = item.EthernetServerAddress;
@@ -4685,6 +4383,8 @@ namespace INT89DB_26.Forms
this.SystemConfig.Serial3BaudRate = structItem.Serial3BaudRate;
this.SystemConfig.Serial3Mode = structItem.Serial3Mode;
this.SystemConfig.IsLogin = structItem.IsLogin;
+ this.SystemConfig.FeedbackSampleCount = structItem.FeedbackSampleCount;
+ this.SystemConfig.FeedbackIgnorePackages = structItem.FeedbackIgnorePackages;
if (structItem.InverterQTY < 1 || structItem.InverterQTY > 4)
{
@@ -4874,6 +4574,35 @@ namespace INT89DB_26.Forms
this.smartFileIO.Close();
}
+ public void LoadProductFile(ref Collection values)
+ {
+ string fullFilePath = "";
+ StructProductItem structItem;
+
+ this.smartFileIO.Close();
+ fullFilePath = this.PathSystemFileFolder2 + "ProductItem.int";
+ this.smartFileIO.FilePathName = fullFilePath;
+
+ this.smartFileIO.Open(this.BufferSmartUart);
+
+ if (this.smartFileIO.ReadStructureAllBuffer() == true)
+ {
+ for (int i = 0; i < 1000; i++)
+ {
+ structItem = (StructProductItem)this.smartFileIO.ReadStructureBuffer(typeof(StructProductItem), i);
+
+ values[i].Number = structItem.Number;
+ values[i].Name = structItem.Name;
+ values[i].LotNo = structItem.LotNo;
+ values[i].OverRange = structItem.OverRange;
+ values[i].PassRange = structItem.PassRange;
+ values[i].UnderRange = structItem.UnderRange;
+ values[i].TareRange = structItem.TareRange;
+ }
+ }
+
+ this.smartFileIO.Close();
+ }
#endregion
#region JudgmentSetItem File
@@ -5229,6 +4958,125 @@ namespace INT89DB_26.Forms
}
#endregion
+ #region FeedbackItem File
+ private void CreateFeedbackItemFile()
+ {
+ string fullFilePath = "";
+ StructFeedbackConfiguration structItem;
+ Collection collectionProductItem;
+
+ collectionProductItem = new Collection();
+ for (int i = 0; i < 1000; i++)
+ collectionProductItem.Add(new ProductItem());
+
+ this.LoadProductFile(ref collectionProductItem);
+
+ this.smartFileIO.Close();
+ fullFilePath = this.PathSystemFileFolder2 + "FeedbackItem.int";
+ this.smartFileIO.FilePathName = fullFilePath;
+ this.smartFileIO.Open(this.BufferSmartUart);
+
+ this.CurrentFeedbackItem.Initialization();
+
+ for (int i = 0; i < 1000; i++)
+ {
+ structItem.HightLimit = collectionProductItem[i].OverRange;
+ structItem.LowLimit = collectionProductItem[i].UnderRange;
+ structItem.DeadZone = this.CurrentFeedbackItem.DeadZone;
+
+ structItem.DummyBool1 = false;
+ structItem.DummyBool2 = false;
+ structItem.DummyBool3 = false;
+
+ structItem.DummyInt1 = 1;
+ structItem.DummyInt2 = 1;
+ structItem.DummyInt3 = 1;
+
+ structItem.DummyString1 = "";
+ structItem.DummyString2 = "";
+ structItem.DummyString3 = "";
+
+ this.smartFileIO.WriteStructure_Begin(structItem, i);
+ }
+ this.smartFileIO.WriteStructure_End();
+ }
+ public void SaveFeedbackItemFile(FeedbackConfiguration item, int index)
+ {
+ bool fileCheck = false;
+ string fullFilePath = "";
+ StructFeedbackConfiguration structItem;
+
+ this.smartFileIO.Close();
+ fullFilePath = this.PathSystemFileFolder2 + "FeedbackItem.int";
+ this.smartFileIO.FilePathName = fullFilePath;
+
+ FileInfo fileInfo = new FileInfo(fullFilePath);
+ fileCheck = fileInfo.Exists;
+
+ if (fileCheck == false)
+ this.CreateFeedbackItemFile();
+ else
+ this.smartFileIO.Open(this.BufferSmartUart);
+
+ structItem.HightLimit = item.HighLimit;
+ structItem.LowLimit = item.LowLimit;
+ structItem.DeadZone = item.DeadZone;
+
+ structItem.DummyBool1 = false;
+ structItem.DummyBool2 = false;
+ structItem.DummyBool3 = false;
+
+ structItem.DummyInt1 = 1;
+ structItem.DummyInt2 = 1;
+ structItem.DummyInt3 = 1;
+
+ structItem.DummyString1 = "";
+ structItem.DummyString2 = "";
+ structItem.DummyString3 = "";
+
+ this.smartFileIO.WriteStructure_Begin(structItem, index);
+ this.smartFileIO.WriteStructure_End();
+
+ this.smartFileIO.Close();
+ }
+ public void LoadFeedbackItemFile(ref FeedbackConfiguration item, int index)
+ {
+ bool fileCheck = false;
+ string fullFilePath = "";
+ StructFeedbackConfiguration structItem;
+
+ this.smartFileIO.Close();
+ fullFilePath = this.PathSystemFileFolder2 + "FeedbackItem.int";
+ this.smartFileIO.FilePathName = fullFilePath;
+
+ FileInfo fileInfo = new FileInfo(fullFilePath);
+ fileCheck = fileInfo.Exists;
+
+ if (fileCheck == false)
+ this.CreateFeedbackItemFile();
+ else
+ this.smartFileIO.Open(this.BufferSmartUart);
+
+ try
+ {
+ structItem = (StructFeedbackConfiguration)this.smartFileIO.ReadStructure(index, typeof(StructFeedbackConfiguration));
+
+ item.HighLimit = structItem.HightLimit;
+ item.LowLimit = structItem.LowLimit;
+ item.DeadZone = structItem.DeadZone;
+ }
+ catch
+ {
+ DialogFormMessage myMsg = new DialogFormMessage(17, this.SystemConfig.Language);
+ myMsg.ShowDialog();
+
+ this.smartFileIO.Close();
+ }
+
+ this.smartFileIO.Close();
+ }
+ #endregion
+
#region UserLevel1File
private void CreateUserLevel1File()
{
@@ -5799,6 +5647,9 @@ namespace INT89DB_26.Forms
// 변수 초기 셋팅2
this.DefaultSetting2();
+ this.Update30000ModbusData();
+ for (int i = 0; i < this.SystemConfig.EquipmentColumns; i++)
+ this.Update30000ModbusData(i);
// 통신 OPEN
this.OpenSmartUartLink();
@@ -5849,6 +5700,152 @@ namespace INT89DB_26.Forms
this.CommunicationCheckCount += 1;
}
}
+ private void smartTCPMultiServer_OnReceiveHandler(SmartTCPMultiServer.CHandleClinet.READINFO datas)
+ {
+ int ret = 0;
+ byte[] readByte;
+ string strRecData = "";
+ byte[] sendOPCDatas = new byte[57];
+ byte[] sendModbusDatas;
+ byte[] madeDatas;
+
+ try
+ {
+ readByte = datas.receiveDatas;
+ strRecData = SmartTCPMultiServer.ConvertAsciiByteToString(readByte);
+ }
+ catch
+ {
+ return;
+ }
+
+ switch (this.SystemConfig.EthernetMode)
+ {
+ case (int)DataStore.CommunicationMode.f99_Modbus:
+ #region Modbus TCP
+ if (this.smartTCPMultiServer.ClientInfoList != null)
+ {
+ if (readByte[7] == 0x03) // Read Holding Register
+ {
+ #region Read Holding Register
+ try
+ {
+ byte[] responseData;
+ byte errorCheck = this.Modbus.CheckRequestSpecialDataErrorTCP(readByte, ModbusFunctionCode.FunctionCode_03);
+
+ if (errorCheck == 0x00)
+ responseData = this.Modbus.MakeTCPResponseData(readByte, this.Protocol_Modbus_Server_Read_Lane_Data_TCP(readByte), ModbusFunctionCode.FunctionCode_03);
+ else
+ responseData = this.Modbus.MakeTCPErrorResponseData(readByte, errorCheck, ModbusFunctionCode.FunctionCode_03);
+
+ foreach (SmartTCPMultiServer.CLIENTSINFOS client in this.smartTCPMultiServer.ClientInfoList)
+ {
+ this.smartTCPMultiServer.SendByteByClientID(client.strID, responseData);
+ }
+
+ // 로그
+ if (this.IsCommunicationLogOpen == true)
+ {
+ this.smartFileCommunicationLog.WriteString(string.Format("Receive TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(readByte)));
+ this.smartFileCommunicationLog.WriteString(string.Format("Send TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(responseData)));
+ }
+ }
+ catch
+ {
+ }
+ #endregion
+ }
+ else if (readByte[7] == 0x10) // Write Multiple Register
+ {
+ #region Write Multiple Register
+ try
+ {
+ byte[] errorResponseData = new byte[9];
+ byte[] responseData = new byte[12];
+ byte errorCheck = this.Modbus.CheckRequestSpecialDataErrorTCP(readByte, ModbusFunctionCode.FunctionCode_16);
+
+ if (errorCheck == 0x00)
+ {
+ for (int i = 0; i < 12; i++)
+ responseData[i] = readByte[i];
+ responseData[5] = 0x06;
+
+ foreach (SmartTCPMultiServer.CLIENTSINFOS client in this.smartTCPMultiServer.ClientInfoList)
+ {
+ this.smartTCPMultiServer.SendByteByClientID(client.strID, responseData);
+ }
+
+ this.ReceiveModbusTCPWriteManager(readByte);
+ }
+ else
+ {
+ for (int i = 0; i < 5; i++)
+ errorResponseData[i] = readByte[i];
+
+ // Length
+ errorResponseData[5] = 0x03;
+ // Unit ID
+ errorResponseData[6] = 0x01;
+ // Function Code
+ errorResponseData[7] = 0x90;
+ // Error Code
+ errorResponseData[8] = errorCheck;
+
+ foreach (SmartTCPMultiServer.CLIENTSINFOS client in this.smartTCPMultiServer.ClientInfoList)
+ {
+ this.smartTCPMultiServer.SendByteByClientID(client.strID, responseData);
+ }
+ }
+
+ // 로그
+ if (this.IsCommunicationLogOpen == true)
+ {
+ this.smartFileCommunicationLog.WriteString(string.Format("Receive TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(readByte)));
+ this.smartFileCommunicationLog.WriteString(string.Format("Send TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(responseData)));
+ }
+ }
+ catch
+ {
+ }
+ #endregion
+ }
+ else // Read Input Register(0x04)
+ {
+ #region Read Input Register
+ try
+ {
+ byte[] responseData;
+ byte errorCheck = this.Modbus.CheckRequestSpecialDataErrorTCP(readByte, ModbusFunctionCode.FunctionCode_04);
+
+ if (errorCheck == 0x00)
+ responseData = this.Modbus.MakeTCP04ResponseData(readByte, this.Protocol_Modbus_Server_Read_Lane_Data_TCP(readByte));
+ else
+ responseData = this.Modbus.MakeTCP04ErrorResponseData(readByte, errorCheck);
+
+ foreach (SmartTCPMultiServer.CLIENTSINFOS client in this.smartTCPMultiServer.ClientInfoList)
+ {
+ this.smartTCPMultiServer.SendByteByClientID(client.strID, responseData);
+ }
+
+ // 로그
+ //if (this.IsCommunicationLogOpen == true)
+ //{
+ //this.smartFileCommunicationLog.WriteString(string.Format("Receive TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(readByte)));
+ //this.smartFileCommunicationLog.WriteString(string.Format("Send TCP ({0:yyyy-MM-dd HH:mm:ss}): {1}", DateTime.Now, BitConverter.ToString(responseData)));
+ //}
+ }
+ catch
+ {
+ }
+ #endregion
+ }
+ }
+ #endregion
+ break;
+ default:
+ break;
+ }
+ }
private void timerAdcLog_Tick(object sender, EventArgs e)
{
diff --git a/INT89DB_26/Forms/FormMainDisplay.cs b/INT89DB_26/Forms/FormMainDisplay.cs
index d5fc492..e090dd3 100644
--- a/INT89DB_26/Forms/FormMainDisplay.cs
+++ b/INT89DB_26/Forms/FormMainDisplay.cs
@@ -1145,6 +1145,7 @@ namespace INT89DB_26.Forms
else
{
this.UpdateUnderRangeChange(myKeyPad.StringValue);
+ this.ParentForm.Update30000ModbusData();
}
}
}
@@ -1165,6 +1166,7 @@ namespace INT89DB_26.Forms
else
{
this.UpdatePassRangeChange(myKeyPad.StringValue);
+ this.ParentForm.Update30000ModbusData();
}
}
}
@@ -1184,6 +1186,7 @@ namespace INT89DB_26.Forms
else
{
this.UpdateOverRangeChange(myKeyPad.StringValue);
+ this.ParentForm.Update30000ModbusData();
}
}
}
@@ -1203,6 +1206,7 @@ namespace INT89DB_26.Forms
else
{
this.UpdateTareRangeChange(myKeyPad.StringValue);
+ this.ParentForm.Update30000ModbusData();
}
}
}
diff --git a/INT89DB_26/INT89DB_26.csproj b/INT89DB_26/INT89DB_26.csproj
index 5e4d412..116600b 100644
--- a/INT89DB_26/INT89DB_26.csproj
+++ b/INT89DB_26/INT89DB_26.csproj
@@ -45,7 +45,7 @@
Off
-
+
False
..\Document\DLL\InModbus.dll
diff --git a/INT89DB_26/InModbus/Modbus_30000_Data.cs b/INT89DB_26/InModbus/Modbus_30000_Data.cs
index c8ee47a..1472345 100644
--- a/INT89DB_26/InModbus/Modbus_30000_Data.cs
+++ b/INT89DB_26/InModbus/Modbus_30000_Data.cs
@@ -13,6 +13,12 @@ namespace INT89DB_26.Int_Modbus
private double m_PassValue;
private double m_OverValue;
private double m_TareValue;
+ private double m_HighLimit;
+ private double m_DeadZoneHighLimit;
+ private double m_DeadZoneLowLimit;
+ private double m_LowLimit;
+ private UInt32 m_SampleCount;
+ private UInt32 m_IgnoreCount;
private Collection m_LaneModbusData;
#endregion
@@ -95,6 +101,37 @@ namespace INT89DB_26.Int_Modbus
}
}
+ public double HighLimit
+ {
+ get { return this.m_HighLimit; }
+ set { this.m_HighLimit = value; }
+ }
+ public double DeadZoneHighLimit
+ {
+ get { return this.m_DeadZoneHighLimit; }
+ set { this.m_DeadZoneHighLimit = value; }
+ }
+ public double DeadZoneLowLimit
+ {
+ get { return this.m_DeadZoneLowLimit; }
+ set { this.m_DeadZoneLowLimit = value; }
+ }
+ public double LowLimit
+ {
+ get { return this.m_LowLimit; }
+ set { this.m_LowLimit = value; }
+ }
+ public UInt32 SampleCount
+ {
+ get { return this.m_SampleCount; }
+ set { this.m_SampleCount = value; }
+ }
+ public UInt32 IgnoreCount
+ {
+ get { return this.m_IgnoreCount; }
+ set { this.m_IgnoreCount = value; }
+ }
+
public Collection ModbusLaneData
{
get { return this.m_LaneModbusData; }
@@ -109,6 +146,12 @@ namespace INT89DB_26.Int_Modbus
this.PassValue = 200.0;
this.OverValue = 300.0;
this.TareValue = 0.0;
+ this.HighLimit = 300.0;
+ this.DeadZoneHighLimit = 0.0;
+ this.DeadZoneLowLimit = 0.0;
+ this.LowLimit = 100.0;
+ this.SampleCount = 0;
+ this.IgnoreCount = 0;
this.ModbusLaneData = new Collection();
this.ModbusLaneData.Clear();
diff --git a/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.dll b/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.dll
index f61f4ea..218deca 100644
Binary files a/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.dll and b/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.dll differ
diff --git a/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.pdb b/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.pdb
index abe3c70..d6528e3 100644
Binary files a/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.pdb and b/INT89DB_26_ImageDll/bin/Release/INT89DB_26_ImageDll.pdb differ
diff --git a/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.csproj.FileListAbsolute.txt b/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.csproj.FileListAbsolute.txt
index deb694c..e042215 100644
--- a/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.csproj.FileListAbsolute.txt
+++ b/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.csproj.FileListAbsolute.txt
@@ -166,3 +166,10 @@ D:\Git\INT89DB_26\INT89DB_26_ImageDll\obj\Release\INT89DB_26_ImageDll.Resource1.
D:\Git\INT89DB_26\INT89DB_26_ImageDll\obj\Release\INT89DB_26_ImageDll.csproj.GenerateResource.Cache
D:\Git\INT89DB_26\INT89DB_26_ImageDll\obj\Release\INT89DB_26_ImageDll.dll
D:\Git\INT89DB_26\INT89DB_26_ImageDll\obj\Release\INT89DB_26_ImageDll.pdb
+D:\Laboratory\INT89DB_26\INT89DB_26_ImageDll\bin\Release\INT89DB_26_ImageDll.dll
+D:\Laboratory\INT89DB_26\INT89DB_26_ImageDll\bin\Release\INT89DB_26_ImageDll.pdb
+D:\Laboratory\INT89DB_26\INT89DB_26_ImageDll\obj\Release\ResolveAssemblyReference.cache
+D:\Laboratory\INT89DB_26\INT89DB_26_ImageDll\obj\Release\INT89DB_26_ImageDll.Resource1.resources
+D:\Laboratory\INT89DB_26\INT89DB_26_ImageDll\obj\Release\INT89DB_26_ImageDll.csproj.GenerateResource.Cache
+D:\Laboratory\INT89DB_26\INT89DB_26_ImageDll\obj\Release\INT89DB_26_ImageDll.dll
+D:\Laboratory\INT89DB_26\INT89DB_26_ImageDll\obj\Release\INT89DB_26_ImageDll.pdb
diff --git a/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.csproj.GenerateResource.Cache b/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.csproj.GenerateResource.Cache
index 0191eaf..ed51d2a 100644
Binary files a/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.csproj.GenerateResource.Cache and b/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.csproj.GenerateResource.Cache differ
diff --git a/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.dll b/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.dll
index f61f4ea..218deca 100644
Binary files a/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.dll and b/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.dll differ
diff --git a/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.pdb b/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.pdb
index abe3c70..d6528e3 100644
Binary files a/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.pdb and b/INT89DB_26_ImageDll/obj/Release/INT89DB_26_ImageDll.pdb differ