Browse Source

修改了第一次运行时,Dolby读报错bug,增加了isSmt配置选项

chenjiangqun 2 years ago
parent
commit
8ad0132086
1 changed files with 516 additions and 51 deletions
  1. 516 51
      FactoryTool_CShare/Views/Main.cs

+ 516 - 51
FactoryTool_CShare/Views/Main.cs

@@ -14,6 +14,7 @@ using System.Linq;
 using System.Net;
 using System.Threading;
 using System.Threading.Tasks;
+using System.Web.Configuration;
 using System.Windows.Forms;
 
 namespace MOKA_Factory_Tools
@@ -707,7 +708,7 @@ namespace MOKA_Factory_Tools
                 var WhiteBalancePath = jObject["WhiteBalancePath"].Value<string>();
                 var LastOrder = jObject["LastOrder"].Value<string>();
                 var Preloadmode = jObject["Preload"].Value<string>();
-                var UsingLocalPID = jObject["UsingLocalPID"].Value<string>();
+                var UsingLocalPID = jObject["UsingLocalPID"].Value<string>();          
                 Custom_ProjectID = jObject["Custom_ProjectID"].Value<string>();
                 functionSetting1.Wait_after_completion = jObject["Wait_after_completion"].Value<int>();
                 functionSetting1.EnterFactoryRetry = jObject["EnterFactoryRetry"].Value<int>();
@@ -964,6 +965,18 @@ namespace MOKA_Factory_Tools
                 }
                 #endregion
 
+                #region 是否整机抄写
+                if (jObject["IsSmt"] != null)
+                {
+                    functionSetting1.IsSmt = jObject["IsSmt"].Value<string>();                 
+                }
+                else
+                {
+                    SaveJsonConfig("IsSmt", functionSetting1.IsSmt);
+                }
+
+                #endregion
+
                 foreach (var ss in jObject["Channel"])  //遍历Channel
                 {
                     Dictionary<string, string> ChannelValues = JsonConvert.DeserializeObject<Dictionary<string, string>>(ss.ToString());
@@ -1002,23 +1015,177 @@ namespace MOKA_Factory_Tools
                 cfg_readcheck.CI_plusReadcheck = jObject["ReadCheck"]["CI"].Value<bool>();
                 cfg_readcheck.AttestationReadcheck = jObject["ReadCheck"]["Attestation"].Value<bool>();
                 cfg_readcheck.MGKReadcheck = jObject["ReadCheck"]["MGK"].Value<bool>();
-                cfg_readcheck.FairplayReadcheck = jObject["ReadCheck"]["Fairplay"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "Fairplay") : jObject["ReadCheck"]["Fairplay"].Value<bool>();
-                cfg_readcheck.ECPReadcheck = jObject["ReadCheck"]["ECP"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "ECP") : jObject["ReadCheck"]["ECP"].Value<bool>();
-                cfg_readcheck.WifiMacReadcheck = jObject["ReadCheck"]["WifiMac"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "WifiMac") : jObject["ReadCheck"]["WifiMac"].Value<bool>();
-                cfg_readcheck.BTMacReadcheck = jObject["ReadCheck"]["BTMac"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "BTMac") : jObject["ReadCheck"]["BTMac"].Value<bool>();
-                cfg_readcheck.LEKReadcheck = jObject["ReadCheck"]["LEK"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "LEK") : jObject["ReadCheck"]["LEK"].Value<bool>();
-                cfg_readcheck.PEKReadcheck = jObject["ReadCheck"]["PEK"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "PEK") : jObject["ReadCheck"]["PEK"].Value<bool>();
-                cfg_readcheck.PlayreadyReadcheck = jObject["ReadCheck"]["Playready"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "Playready") : jObject["ReadCheck"]["Playready"].Value<bool>();
-                cfg_readcheck.HashReadcheck = jObject["ReadCheck"]["Hash"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "Hash") : jObject["ReadCheck"]["Hash"].Value<bool>();
-                cfg_readcheck.DSNReadcheck = jObject["ReadCheck"]["DSN"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "DSN") : jObject["ReadCheck"]["DSN"].Value<bool>();
-                cfg_readcheck.YouTubeReadcheck = jObject["ReadCheck"]["YouTube"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "YouTube") : jObject["ReadCheck"]["YouTube"].Value<bool>();
-                cfg_readcheck.EDIDPIDReadcheck = jObject["ReadCheck"]["EDIDPID"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "EDIDPID") : jObject["ReadCheck"]["EDIDPID"].Value<bool>();
-                cfg_readcheck.EDIDModeNameReadcheck = jObject["ReadCheck"]["EDIDModeName"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "EDIDModeName") : jObject["ReadCheck"]["EDIDModeName"].Value<bool>();
-                cfg_readcheck.ACASKeyReadcheck = jObject["ReadCheck"]["ACASKey"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "ACASKey") : jObject["ReadCheck"]["ACASKey"].Value<bool>();
-                cfg_readcheck.FVPReadcheck = jObject["ReadCheck"]["FVP"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "FVP") : jObject["ReadCheck"]["FVP"].Value<bool>();
-                cfg_readcheck.DAKReadcheck = jObject["ReadCheck"]["DAK"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "DAK") : jObject["ReadCheck"]["DAK"].Value<bool>();
-                cfg_readcheck.DolbyReadcheck = jObject["ReadCheck"]["Dolby"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "Dolby") : jObject["ReadCheck"]["Dolby"].Value<bool>();
-                cfg_readcheck.KFPReadcheck = jObject["ReadCheck"]["KFP"] == null ? CommonMethod.InsertJsonConfig("ReadCheck", "KFP") : jObject["ReadCheck"]["KFP"].Value<bool>();
+               
+                if(jObject["ReadCheck"]["Fairplay"] == null )
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "Fairplay");
+                    cfg_readcheck.FairplayReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.FairplayReadcheck = jObject["ReadCheck"]["Fairplay"].Value<bool>();
+                }
+               
+                if(jObject["ReadCheck"]["ECP"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "ECP");
+                    cfg_readcheck.ECPReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.ECPReadcheck = jObject["ReadCheck"]["ECP"].Value<bool>();
+                }
+               
+                if(jObject["ReadCheck"]["WifiMac"] == null)
+                {                   
+                    CommonMethod.InsertJsonConfig("ReadCheck", "WifiMac");
+                    cfg_readcheck.WifiMacReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.WifiMacReadcheck = jObject["ReadCheck"]["WifiMac"].Value<bool>();
+                }
+               
+                if(jObject["ReadCheck"]["BTMac"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "BTMac");
+                    cfg_readcheck.BTMacReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.BTMacReadcheck = jObject["ReadCheck"]["BTMac"].Value<bool>();
+                }
+               
+                if(jObject["ReadCheck"]["LEK"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "LEK");
+                    cfg_readcheck.LEKReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.LEKReadcheck = jObject["ReadCheck"]["LEK"].Value<bool>();
+                }
+               
+                if(jObject["ReadCheck"]["PEK"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "PEK");
+                    cfg_readcheck.PEKReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.PEKReadcheck = jObject["ReadCheck"]["PEK"].Value<bool>();
+                }
+               
+                if(jObject["ReadCheck"]["Playready"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "Playready");
+                    cfg_readcheck.PlayreadyReadcheck = false ;
+                }
+                else
+                {
+                    cfg_readcheck.PlayreadyReadcheck = jObject["ReadCheck"]["Playready"].Value<bool>();
+                }             
+                
+                if (jObject["ReadCheck"]["Hash"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "Hash");
+                    cfg_readcheck.HashReadcheck = false ;
+                }
+                else
+                {
+                    cfg_readcheck.HashReadcheck = jObject["ReadCheck"]["Hash"].Value<bool>();
+                }
+               
+                if(jObject["ReadCheck"]["DSN"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "DSN");
+                    cfg_readcheck.DSNReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.DSNReadcheck = jObject["ReadCheck"]["DSN"].Value<bool>();
+                }
+              
+                if(jObject["ReadCheck"]["YouTube"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "YouTube");
+                    cfg_readcheck.YouTubeReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.YouTubeReadcheck = jObject["ReadCheck"]["YouTube"].Value<bool>();
+                }
+               
+                if(jObject["ReadCheck"]["EDIDPID"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "EDIDPID");
+                    cfg_readcheck.EDIDPIDReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.EDIDPIDReadcheck = jObject["ReadCheck"]["EDIDPID"].Value<bool>();
+                }
+               
+                if(jObject["ReadCheck"]["EDIDModeName"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "EDIDModeName");
+                    cfg_readcheck.EDIDModeNameReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.EDIDModeNameReadcheck = jObject["ReadCheck"]["EDIDModeName"].Value<bool>();
+                }
+                
+                if(jObject["ReadCheck"]["ACASKey"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "ACASKey");
+                    cfg_readcheck.ACASKeyReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.ACASKeyReadcheck = jObject["ReadCheck"]["ACASKey"].Value<bool>();
+                }
+                
+                if(jObject["ReadCheck"]["FVP"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "FVP");
+                    cfg_readcheck.FVPReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.FVPReadcheck = jObject["ReadCheck"]["FVP"].Value<bool>();
+                }
+               
+                if (jObject["ReadCheck"]["DAK"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "DAK");
+                    cfg_readcheck.DAKReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.DAKReadcheck = jObject["ReadCheck"]["DAK"].Value<bool>();
+                }
+
+                if (jObject["ReadCheck"]["Dolby"] == null)
+                {                  
+                    CommonMethod.InsertJsonConfig("ReadCheck", "Dolby");
+                    cfg_readcheck.DolbyReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.DolbyReadcheck=jObject["ReadCheck"]["Dolby"].Value<bool>();
+                }
+                
+                if (jObject["ReadCheck"]["KFP"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("ReadCheck", "KFP");
+                    cfg_readcheck.KFPReadcheck = false;
+                }
+                else
+                {
+                    cfg_readcheck.KFPReadcheck = jObject["ReadCheck"]["KFP"].Value<bool>();
+                }
+
                 #endregion
 
                 #region WriteCheck配置读取
@@ -1031,21 +1198,156 @@ namespace MOKA_Factory_Tools
                 cfg_writecheck.CI_plusCheckcheck = jObject["WriteCheck"]["CI"].Value<bool>();
                 cfg_writecheck.AttestationCheckcheck = jObject["WriteCheck"]["Attestation"].Value<bool>();
                 cfg_writecheck.MGKCheckcheck = jObject["WriteCheck"]["MGK"].Value<bool>();
-                cfg_writecheck.FairplayCheckcheck = jObject["WriteCheck"]["Fairplay"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "Fairplay") : jObject["WriteCheck"]["Fairplay"].Value<bool>();
-                cfg_writecheck.ECPCheckcheck = jObject["WriteCheck"]["ECP"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "ECP") : jObject["WriteCheck"]["ECP"].Value<bool>();
-                cfg_writecheck.WifiMacCheckcheck = jObject["WriteCheck"]["WifiMac"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "WifiMac") : jObject["WriteCheck"]["WifiMac"].Value<bool>();
-                cfg_writecheck.BTMacCheckcheck = jObject["WriteCheck"]["BTMac"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "BTMac") : jObject["WriteCheck"]["BTMac"].Value<bool>();
-                cfg_writecheck.LEKCheckcheck = jObject["WriteCheck"]["LEK"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "LEK") : jObject["WriteCheck"]["LEK"].Value<bool>();
-                cfg_writecheck.PEKCheckcheck = jObject["WriteCheck"]["PEK"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "PEK") : jObject["WriteCheck"]["PEK"].Value<bool>();
-                cfg_writecheck.PlayreadyCheckcheck = jObject["WriteCheck"]["Playready"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "Playready") : jObject["WriteCheck"]["Playready"].Value<bool>();
-                cfg_writecheck.HashCheckcheck = jObject["WriteCheck"]["Hash"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "Hash") : jObject["WriteCheck"]["Hash"].Value<bool>();
-                cfg_writecheck.DSNCheckcheck = jObject["WriteCheck"]["DSN"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "DSN") : jObject["WriteCheck"]["DSN"].Value<bool>();
-                cfg_writecheck.YouTubeCheckcheck = jObject["WriteCheck"]["YouTube"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "YouTube") : jObject["WriteCheck"]["YouTube"].Value<bool>();
-                cfg_writecheck.ACASKeyCheckcheck = jObject["WriteCheck"]["ACASKey"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "ACASKey") : jObject["WriteCheck"]["ACASKey"].Value<bool>();
-                cfg_writecheck.FVPCheckcheck = jObject["WriteCheck"]["FVP"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "FVP") : jObject["WriteCheck"]["FVP"].Value<bool>();
-                cfg_writecheck.DAKCheckcheck = jObject["WriteCheck"]["DAK"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "DAK") : jObject["WriteCheck"]["DAK"].Value<bool>();
-                cfg_writecheck.DolbyCheckcheck = jObject["WriteCheck"]["Dolby"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "Dolby") : jObject["WriteCheck"]["Dolby"].Value<bool>();
-                cfg_writecheck.KFPCheckcheck = jObject["WriteCheck"]["KFP"] == null ? CommonMethod.InsertJsonConfig("WriteCheck", "KFP") : jObject["WriteCheck"]["KFP"].Value<bool>();
+               
+                if (jObject["WriteCheck"]["Fairplay"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "Fairplay");
+                    cfg_writecheck.FairplayCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.FairplayCheckcheck = jObject["WriteCheck"]["Fairplay"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["ECP"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "ECP");
+                    cfg_writecheck.ECPCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.ECPCheckcheck = jObject["WriteCheck"]["ECP"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["WifiMac"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "WifiMac");
+                    cfg_writecheck.WifiMacCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.WifiMacCheckcheck = jObject["WriteCheck"]["WifiMac"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["BTMac"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "BTMac");
+                    cfg_writecheck.BTMacCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.BTMacCheckcheck = jObject["WriteCheck"]["BTMac"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["LEK"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "LEK");
+                    cfg_writecheck.LEKCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.LEKCheckcheck = jObject["WriteCheck"]["LEK"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["PEK"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "PEK");
+                    cfg_writecheck.PEKCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.PEKCheckcheck = jObject["WriteCheck"]["PEK"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["Playready"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "Playready");
+                    cfg_writecheck.PlayreadyCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.PlayreadyCheckcheck = jObject["WriteCheck"]["Playready"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["Hash"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "Hash");
+                    cfg_writecheck.HashCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.HashCheckcheck = jObject["WriteCheck"]["Hash"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["DSN"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "DSN");
+                    cfg_writecheck.DSNCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.DSNCheckcheck = jObject["WriteCheck"]["DSN"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["YouTube"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "YouTube");
+                    cfg_writecheck.YouTubeCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.YouTubeCheckcheck = jObject["WriteCheck"]["YouTube"].Value<bool>();
+                }
+               
+                if (jObject["WriteCheck"]["ACASKey"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "ACASKey");
+                    cfg_writecheck.ACASKeyCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.ACASKeyCheckcheck = jObject["WriteCheck"]["ACASKey"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["FVP"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "FVP");
+                    cfg_writecheck.FVPCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.FVPCheckcheck = jObject["WriteCheck"]["FVP"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["DAK"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "DAK");
+                    cfg_writecheck.DAKCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.DAKCheckcheck = jObject["WriteCheck"]["DAK"].Value<bool>();
+                }
+                if (jObject["WriteCheck"]["Dolby"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "Dolby");
+                    cfg_writecheck.DolbyCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.DolbyCheckcheck = jObject["WriteCheck"]["Dolby"].Value<bool>();
+                }
+
+                if (jObject["WriteCheck"]["KFP"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteCheck", "KFP");
+                    cfg_writecheck.KFPCheckcheck = false;
+                }
+                else
+                {
+                    cfg_writecheck.KFPCheckcheck = jObject["WriteCheck"]["KFP"].Value<bool>();
+                }
+
                 #endregion
 
                 #region WriteDone配置读取
@@ -1062,24 +1364,187 @@ namespace MOKA_Factory_Tools
                 cfg_writedone.CI_plusWrite_YesNo = jObject["WriteDone"]["CI"].Value<bool>();
                 cfg_writedone.AttestationWrite_YesNo = jObject["WriteDone"]["Attestation"].Value<bool>();
                 cfg_writedone.MGKWrite_YesNo = jObject["WriteDone"]["MGK"].Value<bool>();
-                cfg_writedone.FairplayWrite_YesNo = jObject["WriteDone"]["Fairplay"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "Fairplay") : jObject["WriteDone"]["Fairplay"].Value<bool>();
-                cfg_writedone.ECPWrite_YesNo = jObject["WriteDone"]["ECP"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "ECP") : jObject["WriteDone"]["ECP"].Value<bool>();
-                cfg_writedone.WifiMacWrite_YesNo = jObject["WriteDone"]["WifiMac"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "WifiMac") : jObject["WriteDone"]["WifiMac"].Value<bool>();
-                cfg_writedone.BTMacWrite_YesNo = jObject["WriteDone"]["BTMac"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "BTMac") : jObject["WriteDone"]["BTMac"].Value<bool>();
-                cfg_writedone.LEKWrite_YesNo = jObject["WriteDone"]["LEK"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "LEK") : jObject["WriteDone"]["LEK"].Value<bool>();
-                cfg_writedone.PEKWrite_YesNo = jObject["WriteDone"]["PEK"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "PEK") : jObject["WriteDone"]["PEK"].Value<bool>();
-                cfg_writedone.PlayreadyWrite_YesNo = jObject["WriteDone"]["Playready"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "Playready") : jObject["WriteDone"]["Playready"].Value<bool>();
-                cfg_writedone.HashWrite_YesNo = jObject["WriteDone"]["Hash"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "Hash") : jObject["WriteDone"]["Hash"].Value<bool>();
-                cfg_writedone.DSNWrite_YesNo = jObject["WriteDone"]["DSN"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "DSN") : jObject["WriteDone"]["DSN"].Value<bool>();
-                cfg_writedone.AutoWhiteBalance = jObject["WriteDone"]["AutoWhiteBalance"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "AutoWhiteBalance") : jObject["WriteDone"]["AutoWhiteBalance"].Value<bool>();
-                cfg_writedone.YouTubeWrite_YesNo = jObject["WriteDone"]["YouTube"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "YouTube") : jObject["WriteDone"]["YouTube"].Value<bool>();
-                cfg_writedone.EDIDPIDWrite_YesNo = jObject["WriteDone"]["EDIDPID"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "EDIDPID") : jObject["WriteDone"]["EDIDPID"].Value<bool>();
-                cfg_writedone.EDIDModeNameWrite_YesNo = jObject["WriteDone"]["EDIDModeName"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "EDIDModeName") : jObject["WriteDone"]["EDIDModeName"].Value<bool>();
-                cfg_writedone.ACASKeyWrite_YesNo = jObject["WriteDone"]["ACASKey"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "ACASKey") : jObject["WriteDone"]["ACASKey"].Value<bool>();
-                cfg_writedone.FVPWrite_YesNo = jObject["WriteDone"]["FVP"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "FVP") : jObject["WriteDone"]["FVP"].Value<bool>();
-                cfg_writedone.DAKWrite_YesNo = jObject["WriteDone"]["DAK"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "DAK") : jObject["WriteDone"]["DAK"].Value<bool>();
-                cfg_writedone.DolbyWrite_YesNo = jObject["WriteDone"]["Dolby"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "Dolby") : jObject["WriteDone"]["Dolby"].Value<bool>();
-                cfg_writedone.KFPWrite_YesNo = jObject["WriteDone"]["KFP"] == null ? CommonMethod.InsertJsonConfig("WriteDone", "KFP") : jObject["WriteDone"]["KFP"].Value<bool>();
+                                                    
+                if (jObject["WriteDone"]["Fairplay"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "Fairplay");
+                    cfg_writedone.FairplayWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.FairplayWrite_YesNo = jObject["WriteDone"]["Fairplay"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["ECP"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "ECP");
+                    cfg_writedone.ECPWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.ECPWrite_YesNo = jObject["WriteDone"]["ECP"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["WifiMac"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "WifiMac");
+                    cfg_writedone.WifiMacWrite_YesNo = false;
+                }
+                else
+                {
+                    jObject["WriteDone"]["WifiMac"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["BTMac"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "BTMac");
+                    cfg_writedone.BTMacWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.BTMacWrite_YesNo = jObject["WriteDone"]["BTMac"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["LEK"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "LEK");
+                    cfg_writedone.LEKWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.LEKWrite_YesNo = jObject["WriteDone"]["LEK"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["PEK"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "PEK");
+                    cfg_writedone.PEKWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.PEKWrite_YesNo = jObject["WriteDone"]["PEK"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["Playready"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "Playready");
+                    cfg_writedone.PlayreadyWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.PlayreadyWrite_YesNo = jObject["WriteDone"]["Playready"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["Hash"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "Hash");
+                    cfg_writedone.HashWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.HashWrite_YesNo = jObject["WriteDone"]["Hash"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["DSN"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "DSN");
+                    cfg_writedone.DSNWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.DSNWrite_YesNo = jObject["WriteDone"]["DSN"].Value<bool>();
+                }
+
+                
+                if(jObject["WriteDone"]["AutoWhiteBalance"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "AutoWhiteBalance");
+                    cfg_writedone.AutoWhiteBalance = false;
+                }
+                else
+                {
+                    cfg_writedone.AutoWhiteBalance = jObject["WriteDone"]["AutoWhiteBalance"].Value<bool>();
+                }
+                ///
+                if (jObject["WriteDone"]["YouTube"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "YouTube");
+                    cfg_writedone.YouTubeWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.YouTubeWrite_YesNo = jObject["WriteDone"]["YouTube"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["EDIDPID"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "EDIDPID");
+                    cfg_writedone.EDIDPIDWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.EDIDPIDWrite_YesNo = jObject["WriteDone"]["EDIDPID"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["EDIDModeName"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "EDIDModeName");
+                    cfg_writedone.EDIDModeNameWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.EDIDModeNameWrite_YesNo = jObject["WriteDone"]["EDIDModeName"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["ACASKey"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "ACASKey");
+                    cfg_writedone.ACASKeyWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.ACASKeyWrite_YesNo = jObject["WriteDone"]["ACASKey"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["FVP"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "FVP");
+                    cfg_writedone.FVPWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.FVPWrite_YesNo = jObject["WriteDone"]["FVP"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["DAK"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "DAK");
+                    cfg_writedone.DAKWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.DAKWrite_YesNo = jObject["WriteDone"]["DAK"].Value<bool>();
+                }
+                if (jObject["WriteDone"]["Dolby"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "Dolby");
+                    cfg_writedone.DolbyWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.DolbyWrite_YesNo = jObject["WriteDone"]["Dolby"].Value<bool>();
+                }
+
+                if (jObject["WriteDone"]["KFP"] == null)
+                {
+                    CommonMethod.InsertJsonConfig("WriteDone", "KFP");
+                    cfg_writedone.KFPWrite_YesNo = false;
+                }
+                else
+                {
+                    cfg_writedone.KFPWrite_YesNo = jObject["WriteDone"]["KFP"].Value<bool>();
+                }
+
                 #endregion
 
                 file.Close();