|
@@ -797,7 +797,8 @@ namespace MOKA_Factory_Tools
|
|
|
keyInfo.Playready = jObject["playready"].Value<string>();
|
|
|
keyInfo.Hashkey = jObject["hash"].Value<string>();
|
|
|
keyInfo.YouTube_KEY = jObject["youtubekey"].Value<string>();
|
|
|
- keyInfo.ACASKey = jObject["acaskey"].Value<string>();
|
|
|
+ keyInfo.ACASKey_Data = jObject["acaskey_data"].Value<string>();
|
|
|
+ keyInfo.ACASKey_Tool = jObject["acaskey_tool"].Value<string>();
|
|
|
|
|
|
WriteDID.Checked = (keyInfo.DID.Length > 0 && m_writedid.Text != LResource.Skip);
|
|
|
if (WriteDID.Checked)
|
|
@@ -856,9 +857,9 @@ namespace MOKA_Factory_Tools
|
|
|
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);
|
|
|
- WriteACASKey.Checked = (keyInfo.ACASKey.Length > 0 && m_writeACASKey.Text != LResource.Skip);
|
|
|
+ WriteACASKey.Checked = (keyInfo.ACASKey_Data.Length > 0 && m_writeACASKey.Text != LResource.Skip);
|
|
|
if (WriteACASKey.Checked)
|
|
|
- Log.WriteGetKeyLog("\r\nLocal DB ACAS_KEY=" + keyInfo.ACASKey);
|
|
|
+ Log.WriteGetKeyLog("\r\nLocal DB ACAS_KEY=" + keyInfo.ACASKey_Data);
|
|
|
WriteDSN.Checked = midListNow.keytype == null ? false : midListNow.keytype.ContainsKey("DSN") && m_writeDSN.Text != LResource.Skip;
|
|
|
WritePSN.Checked = FunctionSettingNow.BarcodeWrite;
|
|
|
|
|
@@ -1994,8 +1995,8 @@ namespace MOKA_Factory_Tools
|
|
|
{
|
|
|
if (GetLocalKeyCount.GetLocalHexKeys(orderNow, "ACAS_KEY", FunctionSettingNow.localACASKeySize, out FileStream Stream, out BinaryReader Reader, out string acaskey, out AcasKeypath, out error, errorDBNow, ref localmidList, SN))
|
|
|
{
|
|
|
- keyInfo.ACASKey = acaskey;
|
|
|
- Log.WriteGetKeyLog("\r\nLocal ACASKey=" + keyInfo.ACASKey);
|
|
|
+ keyInfo.ACASKey_Data = acaskey;
|
|
|
+ Log.WriteGetKeyLog("\r\nLocal ACASKey=" + keyInfo.ACASKey_Data);
|
|
|
if (Stream != null && Reader != null)
|
|
|
{
|
|
|
keypath.Add(AcasKeypath);
|
|
@@ -2290,11 +2291,16 @@ namespace MOKA_Factory_Tools
|
|
|
}
|
|
|
if (WriteACASKey.Checked)
|
|
|
{
|
|
|
- if (CommonMethod.GetKeys(midListNow.host, "ACAS_KEY", SN, midListNow.keytype["ACAS_KEY"], errorDBNow, out string acaskey, out error, orderNow, out string md5))
|
|
|
+ if (CommonMethod.GetAcasKey(midListNow.host, "ACAS_KEY", SN, midListNow.keytype["ACAS_KEY"], errorDBNow, orderNow, out string acaskey_data, out string acaskey_datamd5, out string acaskey_tool, out string acaskey_toolmd5, out error))
|
|
|
{
|
|
|
- keyInfo.ACASKey = acaskey;
|
|
|
- keyInfo.ACASKeyMd5 = md5;
|
|
|
- Log.WriteGetKeyLog("\r\nACAS_KEY=" + keyInfo.ACASKey + "\r\nACAS_KEY_MD5=" + keyInfo.ACASKeyMd5);
|
|
|
+ keyInfo.ACASKey_Data = acaskey_data;
|
|
|
+ keyInfo.ACASKey_DataMd5 = acaskey_datamd5;
|
|
|
+
|
|
|
+ keyInfo.ACASKey_Tool = acaskey_tool;
|
|
|
+ keyInfo.ACASKey_ToolMd5 = 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);
|
|
|
}
|
|
|
else
|
|
|
{
|
|
@@ -3812,18 +3818,71 @@ namespace MOKA_Factory_Tools
|
|
|
// ACAS Key抄写;
|
|
|
if (WriteACASKey.Checked)
|
|
|
{
|
|
|
- byte[] ACASKeyData = SerialInit.HexToByte(keyInfo.ACASKey);
|
|
|
+ // 1.acas key抄写前,必须先抄写playreadkey;
|
|
|
+ // 2.将tool先抄写再抄写data;
|
|
|
Log.WriteInfoLog("Write ACAC Key...");
|
|
|
- if (SerialCMD.SetACASKey(TVPort, ACASKeyData, out result, out data, out error, SerailDelay))
|
|
|
+ byte[] ACASKeyTool = SerialInit.HexToByte(keyInfo.ACASKey_Tool);
|
|
|
+ if (SerialCMD.SetACASKeyTool(TVPort, ACASKeyTool, out result, out data, out error, SerailDelay))
|
|
|
+ {
|
|
|
+ SetsuccessStatus(m_writeACASKey);
|
|
|
+ keycontent += "acas_tool=" + keyInfo.ACASKey_Tool+ "&";
|
|
|
+ Log.WriteInfoLog("Check ACAS Key Tool...");
|
|
|
+ if (writeCheckNow.ACASKeyCheckcheck ? SerialCMD.CheckACASKeyTool(TVPort, out result, out data, out error, SerailDelay) : true)
|
|
|
+ {
|
|
|
+ SetsuccessStatus(m_checkACASKey);
|
|
|
+ Log.WriteInfoLog("Read ACAS Key Tool...");
|
|
|
+ if (readCheckNow.ACASIDReadcheck ? SerialCMD.ReadACASKeyTool(TVPort, out result, out data, out error, SerailDelay) : true)
|
|
|
+ {
|
|
|
+ if (readCheckNow.ACASIDReadcheck)
|
|
|
+ {
|
|
|
+ if (CommonMethod.CompareMD5(ACASKeyTool, data))
|
|
|
+ {
|
|
|
+ SetsuccessStatus(m_readACASKey);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ SetfailStatus(m_readACASKey);
|
|
|
+ Log.WriteErrorLog(SN + " contrast ACAS Key Tool fail");
|
|
|
+ MessageBox.Show(LResource.ContrastACASKeyError);
|
|
|
+ goto end;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ SetfailStatus(m_readACASKey);
|
|
|
+ Log.WriteErrorLog(SN + " read ACAS Key Tool fail");
|
|
|
+ MessageBox.Show(LResource.ReadACASKeyError);
|
|
|
+ goto end;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ SetfailStatus(m_checkACASKey);
|
|
|
+ Log.WriteErrorLog(SN + " Check ACAS Key Tool fail");
|
|
|
+ MessageBox.Show(LResource.WriteACASKeyError);
|
|
|
+ goto end;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ SetfailStatus(m_writeACASKey);
|
|
|
+ Log.WriteErrorLog(SN + " Write ACAS Key Tool fail");
|
|
|
+ MessageBox.Show(LResource.WriteACASKeyError);
|
|
|
+ goto end;
|
|
|
+ }
|
|
|
+
|
|
|
+ byte[] ACASKeyData = SerialInit.HexToByte(keyInfo.ACASKey_Data);
|
|
|
+ if (SerialCMD.SetACASKeyData(TVPort, ACASKeyData, out result, out data, out error, SerailDelay))
|
|
|
{
|
|
|
SetsuccessStatus(m_writeACASKey);
|
|
|
- keycontent += "ACACKeyMd5=" + keyInfo.ACASKeyMd5 + "&";
|
|
|
- Log.WriteInfoLog("Check ACAS Key...");
|
|
|
- if (writeCheckNow.ACASKeyCheckcheck ? SerialCMD.CheckACASKey(TVPort, out result, out data, out error, SerailDelay) : true)
|
|
|
+ keycontent += "acas_data=" + keyInfo.ACASKey_Data + "&";
|
|
|
+ Log.WriteInfoLog("Check ACAS Key Data...");
|
|
|
+ if (writeCheckNow.ACASKeyCheckcheck ? SerialCMD.CheckACASKeyData(TVPort, out result, out data, out error, SerailDelay) : true)
|
|
|
{
|
|
|
SetsuccessStatus(m_checkACASKey);
|
|
|
- Log.WriteInfoLog("Read ACAS Key...");
|
|
|
- if (readCheckNow.ACASIDReadcheck ? SerialCMD.ReadACASKey(TVPort, out result, out data, out error, SerailDelay) : true)
|
|
|
+ Log.WriteInfoLog("Read ACAS Key Data...");
|
|
|
+ if (readCheckNow.ACASIDReadcheck ? SerialCMD.ReadACASKeyData(TVPort, out result, out data, out error, SerailDelay) : true)
|
|
|
{
|
|
|
if (readCheckNow.ACASIDReadcheck)
|
|
|
{
|
|
@@ -3834,7 +3893,7 @@ namespace MOKA_Factory_Tools
|
|
|
else
|
|
|
{
|
|
|
SetfailStatus(m_readACASKey);
|
|
|
- Log.WriteErrorLog(SN + " contrast ACAS Key fail");
|
|
|
+ Log.WriteErrorLog(SN + " contrast ACAS Key Data fail");
|
|
|
MessageBox.Show(LResource.ContrastACASKeyError);
|
|
|
goto end;
|
|
|
}
|
|
@@ -3851,7 +3910,7 @@ namespace MOKA_Factory_Tools
|
|
|
else
|
|
|
{
|
|
|
SetfailStatus(m_checkACASKey);
|
|
|
- Log.WriteErrorLog(SN + " Check ACAS Key fail");
|
|
|
+ Log.WriteErrorLog(SN + " Check ACAS Key Data fail");
|
|
|
MessageBox.Show(LResource.WriteACASKeyError);
|
|
|
goto end;
|
|
|
}
|
|
@@ -3859,7 +3918,7 @@ namespace MOKA_Factory_Tools
|
|
|
else
|
|
|
{
|
|
|
SetfailStatus(m_writeACASKey);
|
|
|
- Log.WriteErrorLog(SN + " Write ACAS Key fail");
|
|
|
+ Log.WriteErrorLog(SN + " Write ACAS Key Data fail");
|
|
|
MessageBox.Show(LResource.WriteACASKeyError);
|
|
|
goto end;
|
|
|
}
|