| 
					
				 | 
			
			
				@@ -854,64 +854,64 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteDID.Checked = (keyInfo.DID.Length > 0 && m_writedid.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteDID.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB DeviceID=" + keyInfo.DID); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB DeviceID=" + keyInfo.DID.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteMac.Checked = (keyInfo.Mac.Length > 0 && m_writemac.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteMac.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB Mac=" + keyInfo.Mac); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB Mac=" + keyInfo.Mac.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteHDCP.Checked = (keyInfo.HDCP.Length > 0 && m_writehdcp.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteHDCP.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB HDCP=" + keyInfo.HDCP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB HDCP=" + keyInfo.HDCP.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteHDCP22.Checked = (keyInfo.HDCP22.Length > 0 && m_writehdcp22.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteHDCP22.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB HDCP22=" + keyInfo.HDCP22); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB HDCP22=" + keyInfo.HDCP22.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteWiDi.Checked = (keyInfo.WiDi.Length > 0 && m_writewidi.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteWiDi.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB WiDi=" + keyInfo.WiDi); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB WiDi=" + keyInfo.WiDi.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteWidevine.Checked = (keyInfo.Widevine.Length > 0 && m_writewidevine.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteWidevine.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB Widevine=" + keyInfo.Widevine); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB Widevine=" + keyInfo.Widevine.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteESN.Checked = (keyInfo.ESN.Length > 0 && m_writeesn.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteESN.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB ESN=" + keyInfo.ESN); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB ESN=" + keyInfo.ESN.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteCiplus.Checked = (keyInfo.CI_plus.Length > 0 && m_writeci.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteCiplus.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB Ci=" + keyInfo.CI_plus); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB Ci=" + keyInfo.CI_plus.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteMGK.Checked = (keyInfo.MGK.Length > 0 && m_writeMGK.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteMGK.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB MGK=" + keyInfo.MGK); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB MGK=" + keyInfo.MGK.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteAttestation.Checked = (keyInfo.Attestation.Length > 0 && m_writeattestation.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteAttestation.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB Attestation=" + keyInfo.Attestation); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB Attestation=" + keyInfo.Attestation.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteFairplay.Checked = (keyInfo.Fairplay.Length > 0 && m_writeFairplay.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteFairplay.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB Fairplay=" + keyInfo.Fairplay); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB Fairplay=" + keyInfo.Fairplay.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteECP.Checked = (keyInfo.ECP.Length > 0 && m_writeECP.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteECP.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB ECP=" + keyInfo.ECP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB ECP=" + keyInfo.ECP.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteWifiMac.Checked = (keyInfo.WiFi_MAC.Length > 0 && m_writeWifiMac.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteWifiMac.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB WifiMac=" + keyInfo.WiFi_MAC); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB WifiMac=" + keyInfo.WiFi_MAC.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteBTMac.Checked = (keyInfo.BT_MAC.Length > 0 && m_writeBTMac.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteBTMac.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB BTMac=" + keyInfo.BT_MAC); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB BTMac=" + keyInfo.BT_MAC.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteLEK.Checked = (keyInfo.LEK.Length > 0 && m_writeLEK.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteLEK.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB LEK=" + keyInfo.LEK); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB LEK=" + keyInfo.LEK.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WritePEK.Checked = (keyInfo.PEK.Length > 0 && m_writePEK.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WritePEK.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB PEK=" + keyInfo.PEK); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB PEK=" + keyInfo.PEK.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WritePlayready.Checked = (keyInfo.Playready.Length > 0 && m_writePlayready.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WritePlayready.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB Playready=" + keyInfo.Playready); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB Playready=" + keyInfo.Playready.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteHash.Checked = (keyInfo.Hashkey.Length > 0 && m_writeHash.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteHash.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB Hashkey=" + keyInfo.Hashkey); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB Hashkey=" + keyInfo.Hashkey.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteYouTube.Checked = (keyInfo.YouTube_KEY.Length > 0 && m_writeYouTube.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteYouTube.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB YouTube_KEY=" + keyInfo.YouTube_KEY); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB YouTube_KEY=" + keyInfo.YouTube_KEY.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteACASKey.Checked = (keyInfo.ACASKey_Data.Length > 0 && m_writeACASKey.Text != LResource.Skip); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (WriteACASKey.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                            Log.WriteGetKeyLog("\r\nLocal DB ACAS_KEY=" + keyInfo.ACASKey_Data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            Log.WriteGetKeyLog("\r\nLocal DB ACAS_KEY=" + keyInfo.ACASKey_Data.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WriteDSN.Checked = midListNow.keytype == null ? false : midListNow.keytype.ContainsKey("DSN") && m_writeDSN.Text != LResource.Skip; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         WritePSN.Checked = FunctionSettingNow.BarcodeWrite; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1533,73 +1533,73 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 reportdata += "sn=" + SN + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteDID.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "deviceid=" + keyInfo.DID + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "deviceid=" + keyInfo.DID.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteMac.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "mac=" + keyInfo.Mac + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "mac=" + keyInfo.Mac.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteWifiMac.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "wifimac=" + keyInfo.WiFi_MAC + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "wifimac=" + keyInfo.WiFi_MAC.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteBTMac.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "btmac=" + keyInfo.BT_MAC + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "btmac=" + keyInfo.BT_MAC.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteHDCP.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "hdcpkey=" + keyInfo.HDCP + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "hdcpkey=" + keyInfo.HDCP.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteHDCP22.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "hdcpkey2=" + keyInfo.HDCP22 + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "hdcpkey2=" + keyInfo.HDCP22.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteESN.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "netfilxesn=" + keyInfo.ESN + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "netfilxesn=" + keyInfo.ESN.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteWiDi.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "widi=" + keyInfo.WiDi + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "widi=" + keyInfo.WiDi.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WritePEK.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "pek=" + keyInfo.PEK + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "pek=" + keyInfo.PEK.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteYouTube.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "youtubekey=" + keyInfo.YouTube_KEY + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "youtubekey=" + keyInfo.YouTube_KEY.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteWidevine.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "widevine=" + keyInfo.Widevine + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "widevine=" + keyInfo.Widevine.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteCiplus.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "cikey=" + keyInfo.CI_plus + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "cikey=" + keyInfo.CI_plus.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteAttestation.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "attestationmd5=" + keyInfo.AttestationMD5 + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "attestationmd5=" + keyInfo.AttestationMD5.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteMGK.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "mgk=" + keyInfo.MGK + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "mgk=" + keyInfo.MGK.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteFairplay.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "fairplay=" + keyInfo.Fairplay + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "fairplay=" + keyInfo.Fairplay.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteECP.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "ecp=" + keyInfo.ECP + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "ecp=" + keyInfo.ECP.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteLEK.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "lek=" + keyInfo.LEK + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "lek=" + keyInfo.LEK.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WritePlayready.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "playready=" + keyInfo.Playready + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "playready=" + keyInfo.Playready.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteHash.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "hash=" + keyInfo.Hashkey + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "hash=" + keyInfo.Hashkey.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteEDIDPID.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "EDIDPid=" + keyInfo.EDIDPid + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "EDIDPid=" + keyInfo.EDIDPid.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteEDIDName.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "EDIDModeName=" + keyInfo.EDIDModelName + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "EDIDModeName=" + keyInfo.EDIDModelName.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteACASKey.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "acas_tool=" + keyInfo.ACASKey_Tool + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "acas_tool=" + keyInfo.ACASKey_Tool.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteACASKey.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                reportdata += "acas_data=" + keyInfo.ACASKey_Data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                reportdata += "acas_data=" + keyInfo.ACASKey_Data.data + "&"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (ProjectIDNote.Text != LResource.SkipCovering) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 reportdata += "projectid=" + ProjectIDText.Text + "&"; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2404,8 +2404,8 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         keyInfo.ACASKey_Tool.data = acaskey_tool; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         keyInfo.ACASKey_ToolMd5.data = acaskey_toolmd5; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        Log.WriteGetKeyLog("\r\nACAS_KEY_DATA=" + keyInfo.ACASKey_Data + "\r\nACAS_KEY_MD5=" + keyInfo.ACASKey_DataMd5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        Log.WriteGetKeyLog("\r\nACAS_KEY_TOOL=" + keyInfo.ACASKey_Tool + "\r\nACAS_KEY_TOOLMD5=" + keyInfo.ACASKey_ToolMd5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Log.WriteGetKeyLog("\r\nACAS_KEY_DATA=" + keyInfo.ACASKey_Data.data + "\r\nACAS_KEY_MD5=" + keyInfo.ACASKey_DataMd5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        Log.WriteGetKeyLog("\r\nACAS_KEY_TOOL=" + keyInfo.ACASKey_Tool.data + "\r\nACAS_KEY_TOOLMD5=" + keyInfo.ACASKey_ToolMd5); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2508,13 +2508,13 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //DID抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteDID.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.DID)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.DID.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("DID format error!\r\n{0}", keyInfo.DID); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("DID format error!\r\n{0}", keyInfo.DID.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] DIDData = Encoding.ASCII.GetBytes(keyInfo.DID); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] DIDData = Encoding.ASCII.GetBytes(keyInfo.DID.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write DID..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetDeviceID(TVPort, DIDData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2763,13 +2763,13 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //HDCP KEY抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteHDCP.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.HDCP)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.HDCP.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("HDCP format error!\r\n{0}", keyInfo.HDCP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("HDCP format error!\r\n{0}", keyInfo.HDCP.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] HDCPData = SerialInit.HexToByte(keyInfo.HDCP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] HDCPData = SerialInit.HexToByte(keyInfo.HDCP.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write HDCP..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetHDCPKey(TVPort, HDCPData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2827,14 +2827,14 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //HDCP22 KEY抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteHDCP22.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.HDCP22)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.HDCP22.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("HDCP22 format error!\r\n{0}", keyInfo.HDCP22); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("HDCP22 format error!\r\n{0}", keyInfo.HDCP22.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] HDCP22Data = SerialInit.HexToByte(keyInfo.HDCP22); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] HDCP22Data = SerialInit.HexToByte(keyInfo.HDCP22.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write HDCP22..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetHDCPKey22(TVPort, HDCP22Data, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2891,14 +2891,14 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //ESN KEY抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteESN.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.ESN)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.ESN.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("ESN format error!\r\n{0}", keyInfo.ESN); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("ESN format error!\r\n{0}", keyInfo.ESN.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] ESNData = SerialInit.HexToByte(keyInfo.ESN); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] ESNData = SerialInit.HexToByte(keyInfo.ESN.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write ESN..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetNetflixESN(TVPort, ESNData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2954,14 +2954,14 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //WiDi KEY抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteWiDi.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.WiDi)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.WiDi.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("WiDi format error!\r\n{0}", keyInfo.WiDi); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("WiDi format error!\r\n{0}", keyInfo.WiDi.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] WiDiData = SerialInit.HexToByte(keyInfo.WiDi); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] WiDiData = SerialInit.HexToByte(keyInfo.WiDi.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write WiDi..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetWidi(TVPort, WiDiData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3018,14 +3018,14 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //PEK抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WritePEK.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.PEK)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.PEK.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("PEK format error!\r\n{0}", keyInfo.PEK); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("PEK format error!\r\n{0}", keyInfo.PEK.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] PEKData = SerialInit.HexToByte(keyInfo.PEK); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] PEKData = SerialInit.HexToByte(keyInfo.PEK.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write PEK..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetFireTVPEK(TVPort, PEKData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3082,14 +3082,14 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //Youtube key抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteYouTube.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.YouTube_KEY)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.YouTube_KEY.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("YouTube format error!\r\n{0}", keyInfo.YouTube_KEY); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("YouTube format error!\r\n{0}", keyInfo.YouTube_KEY.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] YouTubeData = SerialInit.HexToByte(keyInfo.YouTube_KEY); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] YouTubeData = SerialInit.HexToByte(keyInfo.YouTube_KEY.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write YouTube key..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetFireTVYoutube(TVPort, YouTubeData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3146,14 +3146,14 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //Widevine KEY抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteWidevine.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.Widevine)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.Widevine.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("Widevine format error!\r\n{0}", keyInfo.Widevine); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("Widevine format error!\r\n{0}", keyInfo.Widevine.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     //MessageBox.Show(LResource.WidevineFormatError + "\r\n" + keyInfo.Widevine); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] WidevineData = SerialInit.HexToByte(keyInfo.Widevine); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] WidevineData = SerialInit.HexToByte(keyInfo.Widevine.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write Widevine..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetWidevine(TVPort, WidevineData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3217,14 +3217,14 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //CI plus KEY抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteCiplus.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.CI_plus)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.CI_plus.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("CI_plus format error!\r\n{0}", keyInfo.CI_plus); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("CI_plus format error!\r\n{0}", keyInfo.CI_plus.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] CiplusData = SerialInit.HexToByte(keyInfo.CI_plus); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] CiplusData = SerialInit.HexToByte(keyInfo.CI_plus.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write CI plus..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetCiKey(TVPort, CiplusData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3288,13 +3288,13 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //Attestation KEY抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteAttestation.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.Attestation)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.Attestation.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("Attestation key format error!\r\n{0}", keyInfo.Attestation); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("Attestation key format error!\r\n{0}", keyInfo.Attestation.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] AttestationData = SerialInit.HexToByte(keyInfo.Attestation); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] AttestationData = SerialInit.HexToByte(keyInfo.Attestation.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write Attestation key..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetAttestationKey(TVPort, AttestationData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3359,13 +3359,13 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //MGK KEY抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteMGK.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.MGK)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.MGK.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("MGK format error!\r\n{0}", keyInfo.MGK); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("MGK format error!\r\n{0}", keyInfo.MGK.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] MGKData = SerialInit.HexToByte(keyInfo.MGK); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] MGKData = SerialInit.HexToByte(keyInfo.MGK.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write MGK..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetMGKKey(TVPort, MGKData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3431,13 +3431,13 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //Fairplay KEY抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteFairplay.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.Fairplay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.Fairplay.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("Fairplay format error!\r\n{0}", keyInfo.Fairplay); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("Fairplay format error!\r\n{0}", keyInfo.Fairplay.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] FairplayData = SerialInit.HexToByte(keyInfo.Fairplay); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] FairplayData = SerialInit.HexToByte(keyInfo.Fairplay.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write Fairplay..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetFireTVFairplay(TVPort, FairplayData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3494,13 +3494,13 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //ECP KEY抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteECP.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.ECP)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.ECP.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("ECP format error!\r\n{0}", keyInfo.ECP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("ECP format error!\r\n{0}", keyInfo.ECP.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] ECPData = SerialInit.HexToByte(keyInfo.ECP); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] ECPData = SerialInit.HexToByte(keyInfo.ECP.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write ECP..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetECP(TVPort, ECPData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3557,13 +3557,13 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //LEK抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteLEK.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.LEK)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.LEK.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("LEK format error!\r\n{0}", keyInfo.LEK); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("LEK format error!\r\n{0}", keyInfo.LEK.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] LEKData = SerialInit.HexToByte(keyInfo.LEK); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] LEKData = SerialInit.HexToByte(keyInfo.LEK.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write LEK..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetFireTVLEK(TVPort, LEKData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3620,13 +3620,13 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //Playready抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WritePlayready.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.Playready)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.Playready.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("Playready format error!\r\n{0}", keyInfo.Playready); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("Playready format error!\r\n{0}", keyInfo.Playready.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] PlayreadyData = SerialInit.HexToByte(keyInfo.Playready); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] PlayreadyData = SerialInit.HexToByte(keyInfo.Playready.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write Playready..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetFireTVPlayready(TVPort, PlayreadyData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3691,13 +3691,13 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             //Hash抄写 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteHash.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (!CommonMethod.IsNumberAndWord(keyInfo.Hashkey)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (!CommonMethod.IsNumberAndWord(keyInfo.Hashkey.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    ErrMsg = string.Format("Hash format error!\r\n{0}", keyInfo.Hashkey); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    ErrMsg = string.Format("Hash format error!\r\n{0}", keyInfo.Hashkey.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] HashData = SerialInit.HexToByte(keyInfo.Hashkey); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] HashData = SerialInit.HexToByte(keyInfo.Hashkey.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write Hash..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetFireTVHashkey(TVPort, HashData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3871,9 +3871,9 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteEDIDPID.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 // 4字节转成整数:0~65535,0x0000~0xffff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (Regex.IsMatch(keyInfo.EDIDPid, "^[A-Za-z0-9]{4}$")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (Regex.IsMatch(keyInfo.EDIDPid.data, "^[A-Za-z0-9]{4}$")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    byte[] EDIDPidData = SerialInit.strToToHexByte(keyInfo.EDIDPid); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    byte[] EDIDPidData = SerialInit.strToToHexByte(keyInfo.EDIDPid.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteInfoLog("Write EDID Pid..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if (SerialCMD.SetEDIDPid(TVPort, EDIDPidData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3926,10 +3926,10 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             // EDID Mode Name抄写; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             if (WriteEDIDName.Checked) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                if (Regex.IsMatch(keyInfo.EDIDModelName, @"^[A-Za-z0-9][A-Za-z0-9_ -]{0,12}$")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (Regex.IsMatch(keyInfo.EDIDModelName.data, @"^[A-Za-z0-9][A-Za-z0-9_ -]{0,12}$")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     // 长度为13字节; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    byte[] EDIDNameData = Encoding.ASCII.GetBytes(keyInfo.EDIDModelName); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    byte[] EDIDNameData = Encoding.ASCII.GetBytes(keyInfo.EDIDModelName.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteInfoLog("Write EDID Mode Name..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if (SerialCMD.SetEDIDModelName(TVPort, EDIDNameData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3986,7 +3986,7 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 // 2.将tool先抄写再抄写data; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 Log.WriteInfoLog("Write ACAC Key..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #if false 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] ACASKeyTool = SerialInit.HexToByte(keyInfo.ACASKey_Tool); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] ACASKeyTool = SerialInit.HexToByte(keyInfo.ACASKey_Tool.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetACASKeyTool(TVPort, ACASKeyTool, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     //SetsuccessStatus(m_writeACASKey); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -4036,7 +4036,7 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 #endif 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                byte[] ACASKeyData = SerialInit.HexToByte(keyInfo.ACASKey_Data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                byte[] ACASKeyData = SerialInit.HexToByte(keyInfo.ACASKey_Data.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (SerialCMD.SetACASKeyData(TVPort, ACASKeyData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     SetsuccessStatus(m_writeACASKey); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -4617,13 +4617,13 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (FunctionSettingNow.MITVEnable) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 {// 小米的DSN抄写不用这么多处理; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    if (!CommonMethod.IsNumberAndWord(keyInfo.DSN)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    if (!CommonMethod.IsNumberAndWord(keyInfo.DSN.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        ErrMsg = string.Format("DSN format error!\r\n{0}", keyInfo.DSN); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        ErrMsg = string.Format("DSN format error!\r\n{0}", keyInfo.DSN.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    byte[] DSNData = System.Text.Encoding.ASCII.GetBytes(keyInfo.DSN); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    byte[] DSNData = System.Text.Encoding.ASCII.GetBytes(keyInfo.DSN.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     Log.WriteInfoLog("Write DSN..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if (SerialCMD.SetFireTVDSN(TVPort, DSNData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -4708,13 +4708,13 @@ namespace MOKA_Factory_Tools 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             if (CommonMethod.GetFireTVDsn(midListNow.host, orderNow, Encoding.ASCII.GetString(data), SN, psn, out string dsn, out error_psn, errorDBNow)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 keyInfo.DSN.data = dsn; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                if (!CommonMethod.IsNumberAndWord(keyInfo.DSN)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                if (!CommonMethod.IsNumberAndWord(keyInfo.DSN.data)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    ErrMsg = string.Format("DSN format error!\r\n{0}", keyInfo.DSN); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    ErrMsg = string.Format("DSN format error!\r\n{0}", keyInfo.DSN.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     Log.WriteErrorLog(ErrMsg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     goto end; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                byte[] DSNData = System.Text.Encoding.ASCII.GetBytes(keyInfo.DSN); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                byte[] DSNData = System.Text.Encoding.ASCII.GetBytes(keyInfo.DSN.data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 Log.WriteInfoLog("Write DSN..."); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 if (SerialCMD.SetFireTVDSN(TVPort, DSNData, out result, out data, out error, SerailDelay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 { 
			 |