@ -1,26 +1,50 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 15
|
||||
VisualStudioVersion = 15.0.28307.572
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MifareOneTool", "MifareOneTool\MifareOneTool.csproj", "{CDB26016-FC77-403F-B22A-A011F8622FCF}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
beta|Any CPU = beta|Any CPU
|
||||
beta|Mixed Platforms = beta|Mixed Platforms
|
||||
beta|Win32 = beta|Win32
|
||||
beta|x86 = beta|x86
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Debug|Mixed Platforms = Debug|Mixed Platforms
|
||||
Debug|Win32 = Debug|Win32
|
||||
Debug|x86 = Debug|x86
|
||||
MifareOneTool|Any CPU = MifareOneTool|Any CPU
|
||||
MifareOneTool|Mixed Platforms = MifareOneTool|Mixed Platforms
|
||||
MifareOneTool|Win32 = MifareOneTool|Win32
|
||||
MifareOneTool|x86 = MifareOneTool|x86
|
||||
Release|Any CPU = Release|Any CPU
|
||||
Release|Mixed Platforms = Release|Mixed Platforms
|
||||
Release|Win32 = Release|Win32
|
||||
Release|x86 = Release|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.beta|Any CPU.ActiveCfg = beta|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.beta|Mixed Platforms.ActiveCfg = beta|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.beta|Mixed Platforms.Build.0 = beta|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.beta|Win32.ActiveCfg = beta|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.beta|Win32.Build.0 = beta|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.beta|x86.ActiveCfg = beta|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.beta|x86.Build.0 = beta|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.Debug|Any CPU.ActiveCfg = Debug|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.Debug|Mixed Platforms.Build.0 = Debug|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.Debug|Win32.ActiveCfg = Debug|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.Debug|x86.ActiveCfg = Debug|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.Debug|x86.Build.0 = Debug|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.MifareOneTool|Any CPU.ActiveCfg = MifareOneTool|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.MifareOneTool|Mixed Platforms.ActiveCfg = MifareOneTool|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.MifareOneTool|Mixed Platforms.Build.0 = MifareOneTool|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.MifareOneTool|Win32.ActiveCfg = MifareOneTool|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.MifareOneTool|Win32.Build.0 = MifareOneTool|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.MifareOneTool|x86.ActiveCfg = MifareOneTool|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.MifareOneTool|x86.Build.0 = MifareOneTool|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.Release|Any CPU.ActiveCfg = Release|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.Release|Mixed Platforms.ActiveCfg = Release|x86
|
||||
{CDB26016-FC77-403F-B22A-A011F8622FCF}.Release|Mixed Platforms.Build.0 = Release|x86
|
||||
@ -31,4 +55,7 @@ Global
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {0173FBA9-DDA4-4B2B-A55D-546257C2E727}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using MifareOneTool.Properties;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@ -196,7 +197,7 @@ namespace MifareOneTool
|
||||
}
|
||||
public Sector(byte[] uid)
|
||||
{
|
||||
if (uid.Length != 4) { throw new Exception("不恰当的4字节UID长度"); }
|
||||
if (uid.Length != 4) { throw new Exception(Resources.不恰当的4字节UID长度); }
|
||||
this._isSector0 = true;
|
||||
this.Wipe();
|
||||
byte bcc = (byte)(uid[0] ^ uid[1] ^ uid[2] ^ uid[3]);
|
||||
@ -240,7 +241,7 @@ namespace MifareOneTool
|
||||
}
|
||||
public string Info(int sec)
|
||||
{
|
||||
string info = "扇区" + sec.ToString();
|
||||
string info = Resources.扇区 + sec.ToString();
|
||||
if (Enumerable.SequenceEqual(
|
||||
new byte[16] { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },
|
||||
this._sector[0]) &&
|
||||
@ -251,15 +252,15 @@ namespace MifareOneTool
|
||||
new byte[16] { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 },
|
||||
this._sector[2]))
|
||||
{
|
||||
info += " 空扇区";
|
||||
info += Resources._空扇区;
|
||||
}
|
||||
else
|
||||
{
|
||||
info += " 有数据";
|
||||
info += Resources._有数据;
|
||||
}
|
||||
if (this.Verify() != 0x00)
|
||||
{
|
||||
info += " 有错误";
|
||||
info += Resources._有错误;
|
||||
}
|
||||
return info;
|
||||
}
|
||||
@ -333,7 +334,7 @@ namespace MifareOneTool
|
||||
public S50(byte[] uid)
|
||||
{
|
||||
_sectors.Capacity = 16;
|
||||
if (uid.Length != 4) { throw new Exception("不恰当的4字节UID长度"); }
|
||||
if (uid.Length != 4) { throw new Exception(Resources.不恰当的4字节UID长度); }
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
if (i == 0) { _sectors.Add(new Sector(uid)); }
|
||||
@ -365,17 +366,17 @@ namespace MifareOneTool
|
||||
}
|
||||
public void LoadFromMfd(string file)
|
||||
{
|
||||
if (!File.Exists(file)) { throw new IOException("加载的文件不存在。"); }
|
||||
if (new FileInfo(file).Length != 1024) { throw new IOException("加载的S50卡文件大小异常。"); }
|
||||
if (!File.Exists(file)) { throw new IOException(Resources.加载的文件不存在); }
|
||||
if (new FileInfo(file).Length != 1024) { throw new IOException(Resources.加载的S50卡文件大小异常); }
|
||||
byte[] loadByte = File.ReadAllBytes(file);
|
||||
this.Wipe();
|
||||
this.SectorsRaw = (byte[])loadByte;
|
||||
}
|
||||
public void LoadFromMctTxt(string file)
|
||||
{
|
||||
if (!File.Exists(file)) { throw new IOException("加载的文件不存在。"); }
|
||||
if (!File.Exists(file)) { throw new IOException(Resources.加载的文件不存在); }
|
||||
long fileLength=new FileInfo(file).Length;
|
||||
if (fileLength < 2200 || fileLength > 2400) { throw new IOException("加载的S50卡文件大小异常。"); }
|
||||
if (fileLength < 2200 || fileLength > 2400) { throw new IOException(Resources.加载的S50卡文件大小异常); }
|
||||
List<string> lines = new List<string>(File.ReadAllLines(file));
|
||||
List<string> invaild = new List<string>();
|
||||
foreach (string line in lines)
|
||||
@ -391,7 +392,7 @@ namespace MifareOneTool
|
||||
}
|
||||
if (lines.Count != 64)
|
||||
{
|
||||
throw new Exception("文件内不是含有64个块数据,可能不完整或不兼容。");
|
||||
throw new Exception(Resources.文件内不是含有64个块数据_可能不完整或不兼容);
|
||||
}
|
||||
this.Wipe();
|
||||
for (int i = 0; i < lines.Count; i++)
|
||||
@ -409,7 +410,7 @@ namespace MifareOneTool
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
sb.AppendLine("+Sector: " + i.ToString());
|
||||
sb.AppendLine(Resources._Sector + i.ToString());
|
||||
for (int j = 0; j < 4; j++)
|
||||
{
|
||||
sb.AppendLine(Utils.Hex2Str(this._sectors[i].Block[j]));
|
||||
|
||||
2056
MifareOneTool/Form1.Designer.cs
generated
2202
MifareOneTool/Form1.ru.resx
Normal file
1615
MifareOneTool/Form1.zh.resx
Normal file
88
MifareOneTool/FormDiff.Designer.cs
generated
@ -28,72 +28,95 @@
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormDiff));
|
||||
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.button2 = new System.Windows.Forms.Button();
|
||||
this.button3 = new System.Windows.Forms.Button();
|
||||
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.flowLayoutPanel2 = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.tableLayoutPanel1.SuspendLayout();
|
||||
this.flowLayoutPanel1.SuspendLayout();
|
||||
this.flowLayoutPanel2.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// richTextBox1
|
||||
//
|
||||
this.richTextBox1.BackColor = System.Drawing.Color.Black;
|
||||
this.richTextBox1.ForeColor = System.Drawing.Color.Orange;
|
||||
this.richTextBox1.Location = new System.Drawing.Point(12, 74);
|
||||
this.richTextBox1.BackColor = System.Drawing.Color.AliceBlue;
|
||||
resources.ApplyResources(this.richTextBox1, "richTextBox1");
|
||||
this.richTextBox1.ForeColor = System.Drawing.Color.Black;
|
||||
this.richTextBox1.Name = "richTextBox1";
|
||||
this.richTextBox1.ReadOnly = true;
|
||||
this.richTextBox1.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.ForcedVertical;
|
||||
this.richTextBox1.Size = new System.Drawing.Size(469, 474);
|
||||
this.richTextBox1.TabIndex = 0;
|
||||
this.richTextBox1.Text = "欢迎使用M1T内置的差异工具!\n说明:\n点击上方的AB两个按键分别选择MFD文件。\n然后点击“比较”即可看到结果。\n";
|
||||
this.richTextBox1.TextChanged += new System.EventHandler(this.RichTextBox1_TextChanged);
|
||||
//
|
||||
// button1
|
||||
//
|
||||
this.button1.Location = new System.Drawing.Point(12, 12);
|
||||
resources.ApplyResources(this.button1, "button1");
|
||||
this.button1.BackColor = System.Drawing.Color.White;
|
||||
this.button1.FlatAppearance.BorderColor = System.Drawing.Color.DodgerBlue;
|
||||
this.button1.Name = "button1";
|
||||
this.button1.Size = new System.Drawing.Size(388, 25);
|
||||
this.button1.TabIndex = 1;
|
||||
this.button1.Text = "A";
|
||||
this.button1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.UseVisualStyleBackColor = false;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// button2
|
||||
//
|
||||
this.button2.Location = new System.Drawing.Point(12, 43);
|
||||
resources.ApplyResources(this.button2, "button2");
|
||||
this.button2.BackColor = System.Drawing.Color.White;
|
||||
this.button2.FlatAppearance.BorderColor = System.Drawing.Color.DodgerBlue;
|
||||
this.button2.Name = "button2";
|
||||
this.button2.Size = new System.Drawing.Size(388, 25);
|
||||
this.button2.TabIndex = 2;
|
||||
this.button2.Text = "B";
|
||||
this.button2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
|
||||
this.button2.UseVisualStyleBackColor = true;
|
||||
this.button2.UseVisualStyleBackColor = false;
|
||||
this.button2.Click += new System.EventHandler(this.button2_Click);
|
||||
//
|
||||
// button3
|
||||
//
|
||||
this.button3.Location = new System.Drawing.Point(406, 12);
|
||||
resources.ApplyResources(this.button3, "button3");
|
||||
this.button3.BackColor = System.Drawing.Color.DodgerBlue;
|
||||
this.button3.FlatAppearance.BorderColor = System.Drawing.Color.DodgerBlue;
|
||||
this.button3.ForeColor = System.Drawing.Color.White;
|
||||
this.button3.Name = "button3";
|
||||
this.button3.Size = new System.Drawing.Size(75, 56);
|
||||
this.button3.TabIndex = 3;
|
||||
this.button3.Text = "比较";
|
||||
this.button3.UseVisualStyleBackColor = true;
|
||||
this.button3.UseVisualStyleBackColor = false;
|
||||
this.button3.Click += new System.EventHandler(this.button3_Click);
|
||||
//
|
||||
// tableLayoutPanel1
|
||||
//
|
||||
resources.ApplyResources(this.tableLayoutPanel1, "tableLayoutPanel1");
|
||||
this.tableLayoutPanel1.Controls.Add(this.flowLayoutPanel1, 0, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.button3, 1, 0);
|
||||
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
|
||||
//
|
||||
// flowLayoutPanel1
|
||||
//
|
||||
resources.ApplyResources(this.flowLayoutPanel1, "flowLayoutPanel1");
|
||||
this.flowLayoutPanel1.Controls.Add(this.button1);
|
||||
this.flowLayoutPanel1.Controls.Add(this.button2);
|
||||
this.flowLayoutPanel1.Name = "flowLayoutPanel1";
|
||||
//
|
||||
// flowLayoutPanel2
|
||||
//
|
||||
resources.ApplyResources(this.flowLayoutPanel2, "flowLayoutPanel2");
|
||||
this.flowLayoutPanel2.Controls.Add(this.tableLayoutPanel1);
|
||||
this.flowLayoutPanel2.Controls.Add(this.richTextBox1);
|
||||
this.flowLayoutPanel2.Name = "flowLayoutPanel2";
|
||||
//
|
||||
// FormDiff
|
||||
//
|
||||
this.AcceptButton = this.button3;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F);
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(493, 560);
|
||||
this.Controls.Add(this.button3);
|
||||
this.Controls.Add(this.button2);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.richTextBox1);
|
||||
this.Controls.Add(this.flowLayoutPanel2);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "FormDiff";
|
||||
this.Text = "DiffTool";
|
||||
this.Load += new System.EventHandler(this.FormDiff_Load);
|
||||
this.tableLayoutPanel1.ResumeLayout(false);
|
||||
this.tableLayoutPanel1.PerformLayout();
|
||||
this.flowLayoutPanel1.ResumeLayout(false);
|
||||
this.flowLayoutPanel1.PerformLayout();
|
||||
this.flowLayoutPanel2.ResumeLayout(false);
|
||||
this.flowLayoutPanel2.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
@ -103,5 +126,8 @@
|
||||
private System.Windows.Forms.Button button1;
|
||||
private System.Windows.Forms.Button button2;
|
||||
private System.Windows.Forms.Button button3;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
|
||||
private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
|
||||
private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel2;
|
||||
}
|
||||
}
|
||||
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using MifareOneTool.Properties;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
@ -26,8 +27,8 @@ namespace MifareOneTool
|
||||
{
|
||||
OpenFileDialog ofd = new OpenFileDialog();
|
||||
ofd.CheckFileExists = true;
|
||||
ofd.Filter = "MFD文件|*.mfd;*.dump";
|
||||
ofd.Title = "请选择需要打开的MFD文件(比较A)";
|
||||
ofd.Filter = Resources.MFD文件_mfd_dump;
|
||||
ofd.Title = Resources.请选择需要打开的MFD文件_比较A;
|
||||
ofd.Multiselect = false;
|
||||
if (ofd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
@ -45,7 +46,7 @@ namespace MifareOneTool
|
||||
}
|
||||
catch (IOException ioe)
|
||||
{
|
||||
MessageBox.Show(ioe.Message, "打开出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(ioe.Message, Resources.打开出错, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
sa = new S50();
|
||||
return;
|
||||
}
|
||||
@ -64,8 +65,8 @@ namespace MifareOneTool
|
||||
{
|
||||
OpenFileDialog ofd = new OpenFileDialog();
|
||||
ofd.CheckFileExists = true;
|
||||
ofd.Filter = "MFD文件|*.mfd;*.dump";
|
||||
ofd.Title = "请选择需要打开的MFD文件(比较B)";
|
||||
ofd.Filter = Resources.MFD文件_mfd_dump;
|
||||
ofd.Title = Resources.请选择需要打开的MFD文件_比较B;
|
||||
ofd.Multiselect = false;
|
||||
if (ofd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
@ -83,7 +84,7 @@ namespace MifareOneTool
|
||||
}
|
||||
catch (IOException ioe)
|
||||
{
|
||||
MessageBox.Show(ioe.Message, "打开出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(ioe.Message, Resources.打开出错, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
sb = new S50();
|
||||
return;
|
||||
}
|
||||
@ -98,7 +99,7 @@ namespace MifareOneTool
|
||||
}
|
||||
else
|
||||
{
|
||||
logAppend("AB文件中一个或两个无效。");
|
||||
logAppend(Resources.AB文件中一个或两个无效);
|
||||
}
|
||||
}
|
||||
private string Compare()
|
||||
@ -107,8 +108,8 @@ namespace MifareOneTool
|
||||
int diffCount = 0;
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
stb.AppendLine("%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%");
|
||||
stb.AppendLine("扇区 " + i.ToString());
|
||||
stb.AppendLine(Resources.res1);
|
||||
stb.AppendLine(Resources.扇区0 + i.ToString());
|
||||
for (int a = 0; a < 4; a++)
|
||||
{
|
||||
string res = "";
|
||||
@ -116,11 +117,11 @@ namespace MifareOneTool
|
||||
{
|
||||
if (sa.Sectors[i].Block[a][b] == sb.Sectors[i].Block[a][b])
|
||||
{
|
||||
res += "-- ";
|
||||
res += Resources.res2;
|
||||
}
|
||||
else
|
||||
{
|
||||
res += "## ";
|
||||
res += Resources.res3;
|
||||
}
|
||||
}
|
||||
stb.AppendLine("A: " + Utils.Hex2StrWithSpan(sa.Sectors[i].Block[a]));
|
||||
@ -133,7 +134,12 @@ namespace MifareOneTool
|
||||
}
|
||||
|
||||
}
|
||||
return "共找到 " + diffCount.ToString() + " 个块不同\n" + stb.ToString();
|
||||
return Resources.共找到 + diffCount.ToString() + Resources._个块不同 + stb.ToString();
|
||||
}
|
||||
|
||||
private void RichTextBox1_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -117,4 +117,700 @@
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="button1.Text" xml:space="preserve">
|
||||
<value>A</value>
|
||||
</data>
|
||||
<data name="button2.Text" xml:space="preserve">
|
||||
<value>B</value>
|
||||
</data>
|
||||
<data name="button3.Text" xml:space="preserve">
|
||||
<value>比较</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>DiffTool</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[0]" xml:space="preserve">
|
||||
<value>欢迎使用M1T内置的差异工具!</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[1]" xml:space="preserve">
|
||||
<value>说明:</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[2]" xml:space="preserve">
|
||||
<value>点击上方的AB两个按键分别选择MFD文件。</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[3]" xml:space="preserve">
|
||||
<value>然后点击“比较”即可看到结果。</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Text" xml:space="preserve">
|
||||
<value>欢迎使用M1T内置的差异工具!
|
||||
说明:
|
||||
点击上方的AB两个按键分别选择MFD文件。
|
||||
然后点击“比较”即可看到结果。
|
||||
</value>
|
||||
<comment>Previous text: 欢迎使用M1T内置的差异工具!
|
||||
说明:
|
||||
点击上方的AB两个按键分别选择MFD文件。
|
||||
然后点击“比较”即可看到结果。
|
||||
</comment>
|
||||
</data>
|
||||
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="richTextBox1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="richTextBox1.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Yu Gothic UI, 9.75pt</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>2, 94</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>2, 4, 2, 4</value>
|
||||
</data>
|
||||
<data name="richTextBox1.ScrollBars" type="System.Windows.Forms.RichTextBoxScrollBars, System.Windows.Forms">
|
||||
<value>ForcedVertical</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>402, 288</value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="richTextBox1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>richTextBox1.Name" xml:space="preserve">
|
||||
<value>richTextBox1</value>
|
||||
</data>
|
||||
<data name=">>richTextBox1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RichTextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>richTextBox1.Parent" xml:space="preserve">
|
||||
<value>flowLayoutPanel2</value>
|
||||
</data>
|
||||
<data name=">>richTextBox1.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="button1.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="button1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="button1.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="button1.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Yu Gothic UI, 9.75pt</value>
|
||||
</data>
|
||||
<data name="button1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>2, 4</value>
|
||||
</data>
|
||||
<data name="button1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>2, 4, 2, 4</value>
|
||||
</data>
|
||||
<data name="button1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>339, 29</value>
|
||||
</data>
|
||||
<data name="button1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="button1.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleLeft</value>
|
||||
</data>
|
||||
<data name=">>button1.Name" xml:space="preserve">
|
||||
<value>button1</value>
|
||||
</data>
|
||||
<data name=">>button1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>button1.Parent" xml:space="preserve">
|
||||
<value>flowLayoutPanel1</value>
|
||||
</data>
|
||||
<data name=">>button1.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="button2.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="button2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="button2.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="button2.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Yu Gothic UI, 9.75pt</value>
|
||||
</data>
|
||||
<data name="button2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>2, 41</value>
|
||||
</data>
|
||||
<data name="button2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>2, 4, 2, 4</value>
|
||||
</data>
|
||||
<data name="button2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>339, 29</value>
|
||||
</data>
|
||||
<data name="button2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="button2.TextAlign" type="System.Drawing.ContentAlignment, System.Drawing">
|
||||
<value>MiddleLeft</value>
|
||||
</data>
|
||||
<data name=">>button2.Name" xml:space="preserve">
|
||||
<value>button2</value>
|
||||
</data>
|
||||
<data name=">>button2.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>button2.Parent" xml:space="preserve">
|
||||
<value>flowLayoutPanel1</value>
|
||||
</data>
|
||||
<data name=">>button2.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="button3.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="button3.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowAndShrink</value>
|
||||
</data>
|
||||
<data name="button3.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="button3.FlatStyle" type="System.Windows.Forms.FlatStyle, System.Windows.Forms">
|
||||
<value>Flat</value>
|
||||
</data>
|
||||
<data name="button3.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Yu Gothic UI, 9.75pt</value>
|
||||
</data>
|
||||
<data name="button3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>351, 4</value>
|
||||
</data>
|
||||
<data name="button3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>2, 4, 2, 4</value>
|
||||
</data>
|
||||
<data name="button3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>47, 74</value>
|
||||
</data>
|
||||
<data name="button3.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name=">>button3.Name" xml:space="preserve">
|
||||
<value>button3</value>
|
||||
</data>
|
||||
<data name=">>button3.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>button3.Parent" xml:space="preserve">
|
||||
<value>tableLayoutPanel1</value>
|
||||
</data>
|
||||
<data name=">>button3.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowAndShrink</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.ColumnCount" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>flowLayoutPanel1.Name" xml:space="preserve">
|
||||
<value>flowLayoutPanel1</value>
|
||||
</data>
|
||||
<data name=">>flowLayoutPanel1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.FlowLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>flowLayoutPanel1.Parent" xml:space="preserve">
|
||||
<value>tableLayoutPanel1</value>
|
||||
</data>
|
||||
<data name=">>flowLayoutPanel1.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 4</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 4, 3, 4</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.RowCount" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>400, 82</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.Name" xml:space="preserve">
|
||||
<value>tableLayoutPanel1</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TableLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.Parent" xml:space="preserve">
|
||||
<value>flowLayoutPanel2</value>
|
||||
</data>
|
||||
<data name=">>tableLayoutPanel1.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.LayoutSettings" type="System.Windows.Forms.TableLayoutSettings, System.Windows.Forms">
|
||||
<value><?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="flowLayoutPanel1" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="button3" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /></Controls><Columns Styles="AutoSize,0,AutoSize,0" /><Rows Styles="AutoSize,0" /></TableLayoutSettings></value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel1.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel1.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowAndShrink</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel1.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel1.FlowDirection" type="System.Windows.Forms.FlowDirection, System.Windows.Forms">
|
||||
<value>TopDown</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>3, 4</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 4, 3, 4</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>343, 74</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel2.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel2.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowAndShrink</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel2.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel2.FlowDirection" type="System.Windows.Forms.FlowDirection, System.Windows.Forms">
|
||||
<value>TopDown</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 0</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>3, 4, 3, 4</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>432, 596</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name=">>flowLayoutPanel2.Name" xml:space="preserve">
|
||||
<value>flowLayoutPanel2</value>
|
||||
</data>
|
||||
<data name=">>flowLayoutPanel2.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.FlowLayoutPanel, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>flowLayoutPanel2.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>flowLayoutPanel2.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
|
||||
<value>7, 17</value>
|
||||
</data>
|
||||
<data name="$this.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="$this.AutoSizeMode" type="System.Windows.Forms.AutoSizeMode, System.Windows.Forms">
|
||||
<value>GrowAndShrink</value>
|
||||
</data>
|
||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>432, 596</value>
|
||||
</data>
|
||||
<data name="$this.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Yu Gothic UI, 9.75pt</value>
|
||||
</data>
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEASEgAAAEAIACIVAAAFgAAACgAAABIAAAAkAAAAAEAIAAAAAAAAFEAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACBAAAA5wAAAGUAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAI8AAAD/AAAA/wAAAO0AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAjwAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACHAAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAABwAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAADpAAAAgQAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaQAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAABCAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAOgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAA0AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaQAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHgAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAACBAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAhwAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AI8AAAD/AAAA/wAAAOoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAByAAAAvgAA
|
||||
AE4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAA/wAAAP8AAAD/AAAA/wAAAO8AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAACHAAAA/wAAAP8AAAD/AAAA/wAAAIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAABAAAAgQAAAOgAAADoAAAAgQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAfgAAAOkAAADpAAAAgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAACHAAAA/wAAAP8AAAD/AAAA/wAAAIgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADoAAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAOgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNAAAAvgAAAHIAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADmAAAA/wAAAP8AAACPAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAAhwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAH8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAABpAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAAaQAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAADQAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAADwAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAEMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAACHAAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAAYgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAgQAA
|
||||
AOgAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAABpAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAB4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAH8AAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAD/AAAA/wAAAP8AAAD/AAAAhwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAADwAAAA/wAAAP8AAACPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABlAAAA5wAA
|
||||
AH4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///////////8AAAD///////////8A
|
||||
AAD///////////8AAAD///////////8AAAD///////////8AAAD///////////8AAAD///////////8A
|
||||
AAD///////////8AAAD//8f///////8AAAD//4f///////8AAAD//wf///////8AAAD//gf///////8A
|
||||
AAD//Af///////8AAAD/+Af///////8AAAD/8Af///////8AAAD/4AAAAAAA//8AAAD/wAAAAAAAf/8A
|
||||
AAD/gAAAAAAAf/8AAAD/gAAAAAAAf/8AAAD/wAAAAAAAf/8AAAD/4AAAAAAAf/8AAAD/8Af////gf/8A
|
||||
AAD/+Af////gf/8AAAD//Af////gf/8AAAD//gf////gf/8AAAD//wf////gf/8AAAD//4f////gf/8A
|
||||
AAD//8f////gf/8AAAD////////gf/8AAAD////////gf/8AAAD////////gf/8AAAD////////gf/8A
|
||||
AAD////////gf/8AAAD///////////8AAAD///////////8AAAD///////////8AAAD///////////8A
|
||||
AAD///////////8AAAD///////////8AAAD//w////////8AAAD//gf///////8AAAD//gf///////8A
|
||||
AAD//gf///////8AAAD//gf///////8AAAD//gf////j//8AAAD//gf////h//8AAAD//gf////g//8A
|
||||
AAD//gf////gf/8AAAD//gf////gP/8AAAD//gf////gH/8AAAD//gf////gD/8AAAD//gAAAAAAB/8A
|
||||
AAD//gAAAAAAA/8AAAD//gAAAAAAAf8AAAD//gAAAAAAAf8AAAD//gAAAAAAA/8AAAD//gAAAAAAB/8A
|
||||
AAD////////gD/8AAAD////////gH/8AAAD////////gP/8AAAD////////gf/8AAAD////////g//8A
|
||||
AAD////////h//8AAAD////////j//8AAAD///////////8AAAD///////////8AAAD///////////8A
|
||||
AAD///////////8AAAD///////////8AAAD///////////8AAAD///////////8AAAD///////////8A
|
||||
AAA=
|
||||
</value>
|
||||
</data>
|
||||
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>2, 4, 2, 4</value>
|
||||
</data>
|
||||
<data name=">>$this.Name" xml:space="preserve">
|
||||
<value>FormDiff</value>
|
||||
</data>
|
||||
<data name=">>$this.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
</root>
|
||||
155
MifareOneTool/FormDiff.ru.resx
Normal file
@ -0,0 +1,155 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="button1.Text" xml:space="preserve">
|
||||
<value>A</value>
|
||||
</data>
|
||||
<data name="button2.Text" xml:space="preserve">
|
||||
<value>В</value>
|
||||
</data>
|
||||
<data name="button3.Text" xml:space="preserve">
|
||||
<value>Сравнить</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>Сравнение дампов</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[0]" xml:space="preserve">
|
||||
<value>Добро пожаловать во встроенный инструмент различий M1T!</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[1]" xml:space="preserve">
|
||||
<value>Описание:</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[2]" xml:space="preserve">
|
||||
<value>Нажмите две кнопки AB выше, чтобы выбрать файл MFD.</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[3]" xml:space="preserve">
|
||||
<value>Затем нажмите «Сравнить», чтобы увидеть результаты.</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Text" xml:space="preserve">
|
||||
<value>Добро пожаловать во встроенный инструмент сравнения дампов!
|
||||
Описание:
|
||||
1. Нажмите А или В, чтобы выбрать файл MFD.
|
||||
2. Нажмите «Сравнить», чтобы увидеть результаты.</value>
|
||||
<comment>Previous text: 欢迎使用M1T内置的差异工具!
|
||||
说明:
|
||||
点击上方的AB两个按键分别选择MFD文件。
|
||||
然后点击“比较”即可看到结果。
|
||||
</comment>
|
||||
</data>
|
||||
</root>
|
||||
156
MifareOneTool/FormDiff.zh.resx
Normal file
@ -0,0 +1,156 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="button1.Text" xml:space="preserve">
|
||||
<value>A</value>
|
||||
</data>
|
||||
<data name="button2.Text" xml:space="preserve">
|
||||
<value>B</value>
|
||||
</data>
|
||||
<data name="button3.Text" xml:space="preserve">
|
||||
<value>比较</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>DiffTool</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[0]" xml:space="preserve">
|
||||
<value>欢迎使用M1T内置的差异工具!</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[1]" xml:space="preserve">
|
||||
<value>说明:</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[2]" xml:space="preserve">
|
||||
<value>点击上方的AB两个按键分别选择MFD文件。</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[3]" xml:space="preserve">
|
||||
<value>然后点击“比较”即可看到结果。</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Text" xml:space="preserve">
|
||||
<value>欢迎使用M1T内置的差异工具!
|
||||
说明:
|
||||
点击上方的AB两个按键分别选择MFD文件。
|
||||
然后点击“比较”即可看到结果。
|
||||
</value>
|
||||
<comment>Previous text: 欢迎使用M1T内置的差异工具!
|
||||
说明:
|
||||
点击上方的AB两个按键分别选择MFD文件。
|
||||
然后点击“比较”即可看到结果。
|
||||
</comment>
|
||||
</data>
|
||||
</root>
|
||||
644
MifareOneTool/FormHTool.Designer.cs
generated
@ -29,6 +29,9 @@
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormHTool));
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
||||
this.文件ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.新建ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
@ -52,51 +55,61 @@
|
||||
this.dataGridView1 = new System.Windows.Forms.DataGridView();
|
||||
this.Column1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.groupBox2 = new System.Windows.Forms.GroupBox();
|
||||
this.buttonSaveSectorEdit = new System.Windows.Forms.Button();
|
||||
this.comboBox4 = new System.Windows.Forms.ComboBox();
|
||||
this.comboBox3 = new System.Windows.Forms.ComboBox();
|
||||
this.comboBox2 = new System.Windows.Forms.ComboBox();
|
||||
this.comboBox1 = new System.Windows.Forms.ComboBox();
|
||||
this.label9 = new System.Windows.Forms.Label();
|
||||
this.label8 = new System.Windows.Forms.Label();
|
||||
this.label7 = new System.Windows.Forms.Label();
|
||||
this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.flowLayoutPanel3 = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.label6 = new System.Windows.Forms.Label();
|
||||
this.comboBox1 = new System.Windows.Forms.ComboBox();
|
||||
this.label7 = new System.Windows.Forms.Label();
|
||||
this.comboBox2 = new System.Windows.Forms.ComboBox();
|
||||
this.label8 = new System.Windows.Forms.Label();
|
||||
this.comboBox3 = new System.Windows.Forms.ComboBox();
|
||||
this.label9 = new System.Windows.Forms.Label();
|
||||
this.comboBox4 = new System.Windows.Forms.ComboBox();
|
||||
this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.keyAEdit = new System.Windows.Forms.TextBox();
|
||||
this.label5 = new System.Windows.Forms.Label();
|
||||
this.keyBEdit = new System.Windows.Forms.TextBox();
|
||||
this.keyAEdit = new System.Windows.Forms.TextBox();
|
||||
this.block2Edit = new System.Windows.Forms.TextBox();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.block1Edit = new System.Windows.Forms.TextBox();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.block0Edit = new System.Windows.Forms.TextBox();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.labelCurSec = new System.Windows.Forms.Label();
|
||||
this.buttonSaveSectorEdit = new System.Windows.Forms.Button();
|
||||
this.flowLayoutPanel2 = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.block0Edit = new System.Windows.Forms.TextBox();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.block1Edit = new System.Windows.Forms.TextBox();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.block2Edit = new System.Windows.Forms.TextBox();
|
||||
this.groupBox3 = new System.Windows.Forms.GroupBox();
|
||||
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
|
||||
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.s50BindingSource = new System.Windows.Forms.BindingSource(this.components);
|
||||
this.menuStrip1.SuspendLayout();
|
||||
this.groupBox1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
|
||||
this.groupBox2.SuspendLayout();
|
||||
this.tableLayoutPanel2.SuspendLayout();
|
||||
this.flowLayoutPanel3.SuspendLayout();
|
||||
this.tableLayoutPanel3.SuspendLayout();
|
||||
this.flowLayoutPanel1.SuspendLayout();
|
||||
this.flowLayoutPanel2.SuspendLayout();
|
||||
this.groupBox3.SuspendLayout();
|
||||
this.tableLayoutPanel1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.s50BindingSource)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// menuStrip1
|
||||
//
|
||||
resources.ApplyResources(this.menuStrip1, "menuStrip1");
|
||||
this.menuStrip1.ImageScalingSize = new System.Drawing.Size(24, 24);
|
||||
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.文件ToolStripMenuItem,
|
||||
this.工具ToolStripMenuItem});
|
||||
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
|
||||
this.menuStrip1.Name = "menuStrip1";
|
||||
this.menuStrip1.Padding = new System.Windows.Forms.Padding(4, 2, 0, 2);
|
||||
this.menuStrip1.Size = new System.Drawing.Size(628, 25);
|
||||
this.menuStrip1.TabIndex = 0;
|
||||
this.menuStrip1.Text = "menuStrip1";
|
||||
//
|
||||
// 文件ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.文件ToolStripMenuItem, "文件ToolStripMenuItem");
|
||||
this.文件ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.新建ToolStripMenuItem,
|
||||
this.打开ToolStripMenuItem,
|
||||
@ -105,57 +118,45 @@
|
||||
this.toolStripSeparator1,
|
||||
this.退出ToolStripMenuItem});
|
||||
this.文件ToolStripMenuItem.Name = "文件ToolStripMenuItem";
|
||||
this.文件ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
|
||||
this.文件ToolStripMenuItem.Text = "文件";
|
||||
//
|
||||
// 新建ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.新建ToolStripMenuItem, "新建ToolStripMenuItem");
|
||||
this.新建ToolStripMenuItem.Name = "新建ToolStripMenuItem";
|
||||
this.新建ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.N)));
|
||||
this.新建ToolStripMenuItem.Size = new System.Drawing.Size(190, 22);
|
||||
this.新建ToolStripMenuItem.Text = "新建";
|
||||
this.新建ToolStripMenuItem.Click += new System.EventHandler(this.新建ToolStripMenuItem_Click);
|
||||
//
|
||||
// 打开ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.打开ToolStripMenuItem, "打开ToolStripMenuItem");
|
||||
this.打开ToolStripMenuItem.Name = "打开ToolStripMenuItem";
|
||||
this.打开ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.O)));
|
||||
this.打开ToolStripMenuItem.Size = new System.Drawing.Size(190, 22);
|
||||
this.打开ToolStripMenuItem.Text = "打开";
|
||||
this.打开ToolStripMenuItem.Click += new System.EventHandler(this.打开ToolStripMenuItem_Click);
|
||||
//
|
||||
// 保存ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.保存ToolStripMenuItem, "保存ToolStripMenuItem");
|
||||
this.保存ToolStripMenuItem.Name = "保存ToolStripMenuItem";
|
||||
this.保存ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.S)));
|
||||
this.保存ToolStripMenuItem.Size = new System.Drawing.Size(190, 22);
|
||||
this.保存ToolStripMenuItem.Text = "保存";
|
||||
this.保存ToolStripMenuItem.Click += new System.EventHandler(this.保存ToolStripMenuItem_Click);
|
||||
//
|
||||
// 另存为ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.另存为ToolStripMenuItem, "另存为ToolStripMenuItem");
|
||||
this.另存为ToolStripMenuItem.Name = "另存为ToolStripMenuItem";
|
||||
this.另存为ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)(((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.Shift)
|
||||
| System.Windows.Forms.Keys.S)));
|
||||
this.另存为ToolStripMenuItem.Size = new System.Drawing.Size(190, 22);
|
||||
this.另存为ToolStripMenuItem.Text = "另存为";
|
||||
this.另存为ToolStripMenuItem.Click += new System.EventHandler(this.另存为ToolStripMenuItem_Click);
|
||||
//
|
||||
// toolStripSeparator1
|
||||
//
|
||||
resources.ApplyResources(this.toolStripSeparator1, "toolStripSeparator1");
|
||||
this.toolStripSeparator1.Name = "toolStripSeparator1";
|
||||
this.toolStripSeparator1.Size = new System.Drawing.Size(187, 6);
|
||||
//
|
||||
// 退出ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.退出ToolStripMenuItem, "退出ToolStripMenuItem");
|
||||
this.退出ToolStripMenuItem.Name = "退出ToolStripMenuItem";
|
||||
this.退出ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Alt | System.Windows.Forms.Keys.X)));
|
||||
this.退出ToolStripMenuItem.Size = new System.Drawing.Size(190, 22);
|
||||
this.退出ToolStripMenuItem.Text = "退出";
|
||||
this.退出ToolStripMenuItem.Click += new System.EventHandler(this.退出ToolStripMenuItem_Click);
|
||||
//
|
||||
// 工具ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.工具ToolStripMenuItem, "工具ToolStripMenuItem");
|
||||
this.工具ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.修改UIDToolStripMenuItem,
|
||||
this.toolStripSeparator2,
|
||||
@ -168,418 +169,373 @@
|
||||
this.toolStripSeparator4,
|
||||
this.列出全卡密钥ToolStripMenuItem});
|
||||
this.工具ToolStripMenuItem.Name = "工具ToolStripMenuItem";
|
||||
this.工具ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
|
||||
this.工具ToolStripMenuItem.Text = "工具";
|
||||
//
|
||||
// 修改UIDToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.修改UIDToolStripMenuItem, "修改UIDToolStripMenuItem");
|
||||
this.修改UIDToolStripMenuItem.Name = "修改UIDToolStripMenuItem";
|
||||
this.修改UIDToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.U)));
|
||||
this.修改UIDToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.修改UIDToolStripMenuItem.Text = "修改UID";
|
||||
this.修改UIDToolStripMenuItem.Click += new System.EventHandler(this.修改UIDToolStripMenuItem_Click);
|
||||
//
|
||||
// toolStripSeparator2
|
||||
//
|
||||
resources.ApplyResources(this.toolStripSeparator2, "toolStripSeparator2");
|
||||
this.toolStripSeparator2.Name = "toolStripSeparator2";
|
||||
this.toolStripSeparator2.Size = new System.Drawing.Size(209, 6);
|
||||
//
|
||||
// 检查全卡ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.检查全卡ToolStripMenuItem, "检查全卡ToolStripMenuItem");
|
||||
this.检查全卡ToolStripMenuItem.Name = "检查全卡ToolStripMenuItem";
|
||||
this.检查全卡ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.J)));
|
||||
this.检查全卡ToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.检查全卡ToolStripMenuItem.Text = "检查全卡";
|
||||
this.检查全卡ToolStripMenuItem.Click += new System.EventHandler(this.检查全卡ToolStripMenuItem_Click);
|
||||
//
|
||||
// 检查并纠正全卡ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.检查并纠正全卡ToolStripMenuItem, "检查并纠正全卡ToolStripMenuItem");
|
||||
this.检查并纠正全卡ToolStripMenuItem.Name = "检查并纠正全卡ToolStripMenuItem";
|
||||
this.检查并纠正全卡ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.K)));
|
||||
this.检查并纠正全卡ToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.检查并纠正全卡ToolStripMenuItem.Text = "检查并纠正全卡";
|
||||
this.检查并纠正全卡ToolStripMenuItem.Click += new System.EventHandler(this.检查并纠正全卡ToolStripMenuItem_Click);
|
||||
//
|
||||
// toolStripSeparator3
|
||||
//
|
||||
resources.ApplyResources(this.toolStripSeparator3, "toolStripSeparator3");
|
||||
this.toolStripSeparator3.Name = "toolStripSeparator3";
|
||||
this.toolStripSeparator3.Size = new System.Drawing.Size(209, 6);
|
||||
//
|
||||
// 导入MCT格式ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.导入MCT格式ToolStripMenuItem, "导入MCT格式ToolStripMenuItem");
|
||||
this.导入MCT格式ToolStripMenuItem.Name = "导入MCT格式ToolStripMenuItem";
|
||||
this.导入MCT格式ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.L)));
|
||||
this.导入MCT格式ToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.导入MCT格式ToolStripMenuItem.Text = "导入MCT格式";
|
||||
this.导入MCT格式ToolStripMenuItem.Click += new System.EventHandler(this.导入MCT格式ToolStripMenuItem_Click);
|
||||
//
|
||||
// 导出为MCT格式ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.导出为MCT格式ToolStripMenuItem, "导出为MCT格式ToolStripMenuItem");
|
||||
this.导出为MCT格式ToolStripMenuItem.Name = "导出为MCT格式ToolStripMenuItem";
|
||||
this.导出为MCT格式ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.M)));
|
||||
this.导出为MCT格式ToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.导出为MCT格式ToolStripMenuItem.Text = "导出为MCT格式";
|
||||
this.导出为MCT格式ToolStripMenuItem.Click += new System.EventHandler(this.导出为MCT格式ToolStripMenuItem_Click);
|
||||
//
|
||||
// 导出密钥字典ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.导出密钥字典ToolStripMenuItem, "导出密钥字典ToolStripMenuItem");
|
||||
this.导出密钥字典ToolStripMenuItem.Name = "导出密钥字典ToolStripMenuItem";
|
||||
this.导出密钥字典ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.N)));
|
||||
this.导出密钥字典ToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.导出密钥字典ToolStripMenuItem.Text = "导出密钥字典";
|
||||
this.导出密钥字典ToolStripMenuItem.Click += new System.EventHandler(this.导出密钥字典ToolStripMenuItem_Click);
|
||||
//
|
||||
// toolStripSeparator4
|
||||
//
|
||||
resources.ApplyResources(this.toolStripSeparator4, "toolStripSeparator4");
|
||||
this.toolStripSeparator4.Name = "toolStripSeparator4";
|
||||
this.toolStripSeparator4.Size = new System.Drawing.Size(209, 6);
|
||||
//
|
||||
// 列出全卡密钥ToolStripMenuItem
|
||||
//
|
||||
resources.ApplyResources(this.列出全卡密钥ToolStripMenuItem, "列出全卡密钥ToolStripMenuItem");
|
||||
this.列出全卡密钥ToolStripMenuItem.Name = "列出全卡密钥ToolStripMenuItem";
|
||||
this.列出全卡密钥ToolStripMenuItem.ShortcutKeys = ((System.Windows.Forms.Keys)((System.Windows.Forms.Keys.Control | System.Windows.Forms.Keys.I)));
|
||||
this.列出全卡密钥ToolStripMenuItem.Size = new System.Drawing.Size(212, 22);
|
||||
this.列出全卡密钥ToolStripMenuItem.Text = "列出全卡密钥";
|
||||
this.列出全卡密钥ToolStripMenuItem.Click += new System.EventHandler(this.列出全卡密钥ToolStripMenuItem_Click);
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
resources.ApplyResources(this.groupBox1, "groupBox1");
|
||||
this.groupBox1.BackColor = System.Drawing.Color.DodgerBlue;
|
||||
this.groupBox1.Controls.Add(this.dataGridView1);
|
||||
this.groupBox1.Location = new System.Drawing.Point(9, 25);
|
||||
this.groupBox1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.groupBox1.ForeColor = System.Drawing.Color.White;
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.groupBox1.Size = new System.Drawing.Size(188, 327);
|
||||
this.groupBox1.TabIndex = 1;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "扇区列表";
|
||||
//
|
||||
// dataGridView1
|
||||
//
|
||||
resources.ApplyResources(this.dataGridView1, "dataGridView1");
|
||||
this.dataGridView1.AllowUserToAddRows = false;
|
||||
this.dataGridView1.AllowUserToDeleteRows = false;
|
||||
this.dataGridView1.AllowUserToResizeColumns = false;
|
||||
this.dataGridView1.AllowUserToResizeRows = false;
|
||||
this.dataGridView1.AutoSizeColumnsMode = System.Windows.Forms.DataGridViewAutoSizeColumnsMode.Fill;
|
||||
this.dataGridView1.AutoSizeRowsMode = System.Windows.Forms.DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders;
|
||||
this.dataGridView1.BackgroundColor = System.Drawing.Color.AliceBlue;
|
||||
this.dataGridView1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
|
||||
dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
|
||||
dataGridViewCellStyle1.BackColor = System.Drawing.Color.AliceBlue;
|
||||
dataGridViewCellStyle1.Font = new System.Drawing.Font("Yu Gothic UI Semibold", 9.75F, System.Drawing.FontStyle.Bold);
|
||||
dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText;
|
||||
dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight;
|
||||
dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
|
||||
dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
|
||||
this.dataGridView1.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1;
|
||||
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||
this.dataGridView1.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
|
||||
this.Column1});
|
||||
this.dataGridView1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
|
||||
dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Window;
|
||||
dataGridViewCellStyle2.Font = new System.Drawing.Font("Yu Gothic UI Semibold", 9.75F, System.Drawing.FontStyle.Bold);
|
||||
dataGridViewCellStyle2.ForeColor = System.Drawing.Color.Black;
|
||||
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
|
||||
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
|
||||
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
|
||||
this.dataGridView1.DefaultCellStyle = dataGridViewCellStyle2;
|
||||
this.dataGridView1.EditMode = System.Windows.Forms.DataGridViewEditMode.EditProgrammatically;
|
||||
this.dataGridView1.Location = new System.Drawing.Point(2, 16);
|
||||
this.dataGridView1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.dataGridView1.GridColor = System.Drawing.Color.SkyBlue;
|
||||
this.dataGridView1.MultiSelect = false;
|
||||
this.dataGridView1.Name = "dataGridView1";
|
||||
this.dataGridView1.ReadOnly = true;
|
||||
this.dataGridView1.RowHeadersWidth = 20;
|
||||
this.dataGridView1.RowTemplate.Height = 27;
|
||||
this.dataGridView1.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
|
||||
this.dataGridView1.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||
this.dataGridView1.Size = new System.Drawing.Size(184, 309);
|
||||
this.dataGridView1.TabIndex = 0;
|
||||
this.dataGridView1.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dataGridView1_CellClick);
|
||||
//
|
||||
// Column1
|
||||
//
|
||||
this.Column1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill;
|
||||
this.Column1.HeaderText = "扇区";
|
||||
resources.ApplyResources(this.Column1, "Column1");
|
||||
this.Column1.Name = "Column1";
|
||||
this.Column1.ReadOnly = true;
|
||||
this.Column1.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.NotSortable;
|
||||
//
|
||||
// groupBox2
|
||||
//
|
||||
this.groupBox2.Controls.Add(this.buttonSaveSectorEdit);
|
||||
this.groupBox2.Controls.Add(this.comboBox4);
|
||||
this.groupBox2.Controls.Add(this.comboBox3);
|
||||
this.groupBox2.Controls.Add(this.comboBox2);
|
||||
this.groupBox2.Controls.Add(this.comboBox1);
|
||||
this.groupBox2.Controls.Add(this.label9);
|
||||
this.groupBox2.Controls.Add(this.label8);
|
||||
this.groupBox2.Controls.Add(this.label7);
|
||||
this.groupBox2.Controls.Add(this.label6);
|
||||
this.groupBox2.Controls.Add(this.label5);
|
||||
this.groupBox2.Controls.Add(this.keyBEdit);
|
||||
this.groupBox2.Controls.Add(this.keyAEdit);
|
||||
this.groupBox2.Controls.Add(this.block2Edit);
|
||||
this.groupBox2.Controls.Add(this.label4);
|
||||
this.groupBox2.Controls.Add(this.label3);
|
||||
this.groupBox2.Controls.Add(this.block1Edit);
|
||||
this.groupBox2.Controls.Add(this.label2);
|
||||
this.groupBox2.Controls.Add(this.block0Edit);
|
||||
this.groupBox2.Controls.Add(this.label1);
|
||||
this.groupBox2.Controls.Add(this.labelCurSec);
|
||||
this.groupBox2.Location = new System.Drawing.Point(201, 25);
|
||||
this.groupBox2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
resources.ApplyResources(this.groupBox2, "groupBox2");
|
||||
this.groupBox2.BackColor = System.Drawing.Color.DodgerBlue;
|
||||
this.groupBox2.Controls.Add(this.tableLayoutPanel2);
|
||||
this.groupBox2.ForeColor = System.Drawing.Color.White;
|
||||
this.groupBox2.Name = "groupBox2";
|
||||
this.groupBox2.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.groupBox2.Size = new System.Drawing.Size(219, 327);
|
||||
this.groupBox2.TabIndex = 2;
|
||||
this.groupBox2.TabStop = false;
|
||||
this.groupBox2.Text = "扇区信息";
|
||||
//
|
||||
// buttonSaveSectorEdit
|
||||
// tableLayoutPanel2
|
||||
//
|
||||
this.buttonSaveSectorEdit.Location = new System.Drawing.Point(110, 13);
|
||||
this.buttonSaveSectorEdit.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.buttonSaveSectorEdit.Name = "buttonSaveSectorEdit";
|
||||
this.buttonSaveSectorEdit.Size = new System.Drawing.Size(104, 20);
|
||||
this.buttonSaveSectorEdit.TabIndex = 20;
|
||||
this.buttonSaveSectorEdit.Text = "修改扇区(Enter)";
|
||||
this.buttonSaveSectorEdit.UseVisualStyleBackColor = true;
|
||||
this.buttonSaveSectorEdit.Click += new System.EventHandler(this.buttonSaveSectorEdit_Click);
|
||||
resources.ApplyResources(this.tableLayoutPanel2, "tableLayoutPanel2");
|
||||
this.tableLayoutPanel2.BackColor = System.Drawing.Color.White;
|
||||
this.tableLayoutPanel2.Controls.Add(this.flowLayoutPanel3, 0, 3);
|
||||
this.tableLayoutPanel2.Controls.Add(this.tableLayoutPanel3, 0, 2);
|
||||
this.tableLayoutPanel2.Controls.Add(this.flowLayoutPanel1, 0, 0);
|
||||
this.tableLayoutPanel2.Controls.Add(this.flowLayoutPanel2, 0, 1);
|
||||
this.tableLayoutPanel2.ForeColor = System.Drawing.Color.Black;
|
||||
this.tableLayoutPanel2.Name = "tableLayoutPanel2";
|
||||
//
|
||||
// flowLayoutPanel3
|
||||
//
|
||||
resources.ApplyResources(this.flowLayoutPanel3, "flowLayoutPanel3");
|
||||
this.flowLayoutPanel3.Controls.Add(this.label6);
|
||||
this.flowLayoutPanel3.Controls.Add(this.comboBox1);
|
||||
this.flowLayoutPanel3.Controls.Add(this.label7);
|
||||
this.flowLayoutPanel3.Controls.Add(this.comboBox2);
|
||||
this.flowLayoutPanel3.Controls.Add(this.label8);
|
||||
this.flowLayoutPanel3.Controls.Add(this.comboBox3);
|
||||
this.flowLayoutPanel3.Controls.Add(this.label9);
|
||||
this.flowLayoutPanel3.Controls.Add(this.comboBox4);
|
||||
this.flowLayoutPanel3.Name = "flowLayoutPanel3";
|
||||
//
|
||||
// label6
|
||||
//
|
||||
resources.ApplyResources(this.label6, "label6");
|
||||
this.label6.Name = "label6";
|
||||
//
|
||||
// comboBox1
|
||||
//
|
||||
resources.ApplyResources(this.comboBox1, "comboBox1");
|
||||
this.comboBox1.BackColor = System.Drawing.Color.AliceBlue;
|
||||
this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboBox1.FormattingEnabled = true;
|
||||
this.comboBox1.Items.AddRange(new object[] {
|
||||
resources.GetString("comboBox1.Items"),
|
||||
resources.GetString("comboBox1.Items1"),
|
||||
resources.GetString("comboBox1.Items2"),
|
||||
resources.GetString("comboBox1.Items3"),
|
||||
resources.GetString("comboBox1.Items4"),
|
||||
resources.GetString("comboBox1.Items5"),
|
||||
resources.GetString("comboBox1.Items6"),
|
||||
resources.GetString("comboBox1.Items7")});
|
||||
this.comboBox1.Name = "comboBox1";
|
||||
this.comboBox1.Validating += new System.ComponentModel.CancelEventHandler(this.comboBox1_Validating);
|
||||
//
|
||||
// label7
|
||||
//
|
||||
resources.ApplyResources(this.label7, "label7");
|
||||
this.label7.Name = "label7";
|
||||
//
|
||||
// comboBox2
|
||||
//
|
||||
resources.ApplyResources(this.comboBox2, "comboBox2");
|
||||
this.comboBox2.BackColor = System.Drawing.Color.AliceBlue;
|
||||
this.comboBox2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboBox2.FormattingEnabled = true;
|
||||
this.comboBox2.Items.AddRange(new object[] {
|
||||
resources.GetString("comboBox2.Items"),
|
||||
resources.GetString("comboBox2.Items1"),
|
||||
resources.GetString("comboBox2.Items2"),
|
||||
resources.GetString("comboBox2.Items3"),
|
||||
resources.GetString("comboBox2.Items4"),
|
||||
resources.GetString("comboBox2.Items5"),
|
||||
resources.GetString("comboBox2.Items6"),
|
||||
resources.GetString("comboBox2.Items7")});
|
||||
this.comboBox2.Name = "comboBox2";
|
||||
this.comboBox2.Validating += new System.ComponentModel.CancelEventHandler(this.comboBox1_Validating);
|
||||
//
|
||||
// label8
|
||||
//
|
||||
resources.ApplyResources(this.label8, "label8");
|
||||
this.label8.Name = "label8";
|
||||
//
|
||||
// comboBox3
|
||||
//
|
||||
resources.ApplyResources(this.comboBox3, "comboBox3");
|
||||
this.comboBox3.BackColor = System.Drawing.Color.AliceBlue;
|
||||
this.comboBox3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboBox3.FormattingEnabled = true;
|
||||
this.comboBox3.Items.AddRange(new object[] {
|
||||
resources.GetString("comboBox3.Items"),
|
||||
resources.GetString("comboBox3.Items1"),
|
||||
resources.GetString("comboBox3.Items2"),
|
||||
resources.GetString("comboBox3.Items3"),
|
||||
resources.GetString("comboBox3.Items4"),
|
||||
resources.GetString("comboBox3.Items5"),
|
||||
resources.GetString("comboBox3.Items6"),
|
||||
resources.GetString("comboBox3.Items7")});
|
||||
this.comboBox3.Name = "comboBox3";
|
||||
this.comboBox3.Validating += new System.ComponentModel.CancelEventHandler(this.comboBox1_Validating);
|
||||
//
|
||||
// label9
|
||||
//
|
||||
resources.ApplyResources(this.label9, "label9");
|
||||
this.label9.Name = "label9";
|
||||
//
|
||||
// comboBox4
|
||||
//
|
||||
resources.ApplyResources(this.comboBox4, "comboBox4");
|
||||
this.comboBox4.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboBox4.DropDownWidth = 400;
|
||||
this.comboBox4.FormattingEnabled = true;
|
||||
this.comboBox4.Items.AddRange(new object[] {
|
||||
"[不可逆]KeyA:A写/AC:A只读/KeyB:A读写",
|
||||
"KeyA:A写/AC:A读写/KeyB:A读写",
|
||||
"[不可逆]KeyA:不能读写/AC:A只读/KeyB:A读",
|
||||
"KeyA:B写/AC:A只读B读写/KeyB:B写",
|
||||
"[不可逆]KeyA:B写/AC:AB只读/KeyB:B写",
|
||||
"KeyA:不能读写/AC:A只读B读写/KeyB:不能读写",
|
||||
"[不可逆]KeyA:不能读写/AC:AB只读/KeyB:不能读写",
|
||||
"[不可逆]KeyA:不能读写/AC:AB只读/KeyB:不能读写(重复了?)"});
|
||||
this.comboBox4.Location = new System.Drawing.Point(4, 303);
|
||||
this.comboBox4.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
resources.GetString("comboBox4.Items"),
|
||||
resources.GetString("comboBox4.Items1"),
|
||||
resources.GetString("comboBox4.Items2"),
|
||||
resources.GetString("comboBox4.Items3"),
|
||||
resources.GetString("comboBox4.Items4"),
|
||||
resources.GetString("comboBox4.Items5"),
|
||||
resources.GetString("comboBox4.Items6"),
|
||||
resources.GetString("comboBox4.Items7")});
|
||||
this.comboBox4.Name = "comboBox4";
|
||||
this.comboBox4.Size = new System.Drawing.Size(211, 20);
|
||||
this.comboBox4.TabIndex = 19;
|
||||
this.comboBox4.Validating += new System.ComponentModel.CancelEventHandler(this.comboBox1_Validating);
|
||||
//
|
||||
// comboBox3
|
||||
// tableLayoutPanel3
|
||||
//
|
||||
this.comboBox3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboBox3.FormattingEnabled = true;
|
||||
this.comboBox3.Items.AddRange(new object[] {
|
||||
"KeyAB读写及增减值",
|
||||
"[只读]KeyAB读及减值/不可写及增值",
|
||||
"[只读]KeyAB读/不可写及增减值",
|
||||
"KeyB读写/不可增减值",
|
||||
"KeyAB读/KeyB写/不可增减值",
|
||||
"[只读]KeyB读/不可写及增减值",
|
||||
"KeyAB读及减值/KeyB写及增值",
|
||||
"[只读]锁死该扇区"});
|
||||
this.comboBox3.Location = new System.Drawing.Point(4, 268);
|
||||
this.comboBox3.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.comboBox3.Name = "comboBox3";
|
||||
this.comboBox3.Size = new System.Drawing.Size(211, 20);
|
||||
this.comboBox3.TabIndex = 18;
|
||||
this.comboBox3.Validating += new System.ComponentModel.CancelEventHandler(this.comboBox1_Validating);
|
||||
//
|
||||
// comboBox2
|
||||
//
|
||||
this.comboBox2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboBox2.FormattingEnabled = true;
|
||||
this.comboBox2.Items.AddRange(new object[] {
|
||||
"KeyAB读写及增减值",
|
||||
"[只读]KeyAB读及减值/不可写及增值",
|
||||
"[只读]KeyAB读/不可写及增减值",
|
||||
"KeyB读写/不可增减值",
|
||||
"KeyAB读/KeyB写/不可增减值",
|
||||
"[只读]KeyB读/不可写及增减值",
|
||||
"KeyAB读及减值/KeyB写及增值",
|
||||
"[只读]锁死该扇区"});
|
||||
this.comboBox2.Location = new System.Drawing.Point(4, 233);
|
||||
this.comboBox2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.comboBox2.Name = "comboBox2";
|
||||
this.comboBox2.Size = new System.Drawing.Size(211, 20);
|
||||
this.comboBox2.TabIndex = 17;
|
||||
this.comboBox2.Validating += new System.ComponentModel.CancelEventHandler(this.comboBox1_Validating);
|
||||
//
|
||||
// comboBox1
|
||||
//
|
||||
this.comboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboBox1.FormattingEnabled = true;
|
||||
this.comboBox1.Items.AddRange(new object[] {
|
||||
"KeyAB读写及增减值",
|
||||
"[只读]KeyAB读及减值/不可写及增值",
|
||||
"[只读]KeyAB读/不可写及增减值",
|
||||
"KeyB读写/不可增减值",
|
||||
"KeyAB读/KeyB写/不可增减值",
|
||||
"[只读]KeyB读/不可写及增减值",
|
||||
"KeyAB读及减值/KeyB写及增值",
|
||||
"[只读]锁死该扇区"});
|
||||
this.comboBox1.Location = new System.Drawing.Point(4, 198);
|
||||
this.comboBox1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.comboBox1.Name = "comboBox1";
|
||||
this.comboBox1.Size = new System.Drawing.Size(211, 20);
|
||||
this.comboBox1.TabIndex = 16;
|
||||
this.comboBox1.Validating += new System.ComponentModel.CancelEventHandler(this.comboBox1_Validating);
|
||||
//
|
||||
// label9
|
||||
//
|
||||
this.label9.AutoSize = true;
|
||||
this.label9.Location = new System.Drawing.Point(2, 289);
|
||||
this.label9.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.label9.Name = "label9";
|
||||
this.label9.Size = new System.Drawing.Size(89, 12);
|
||||
this.label9.TabIndex = 15;
|
||||
this.label9.Text = "Key/ACbits权限";
|
||||
//
|
||||
// label8
|
||||
//
|
||||
this.label8.AutoSize = true;
|
||||
this.label8.Location = new System.Drawing.Point(4, 254);
|
||||
this.label8.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.label8.Name = "label8";
|
||||
this.label8.Size = new System.Drawing.Size(47, 12);
|
||||
this.label8.TabIndex = 14;
|
||||
this.label8.Text = "2块权限";
|
||||
//
|
||||
// label7
|
||||
//
|
||||
this.label7.AutoSize = true;
|
||||
this.label7.Location = new System.Drawing.Point(2, 218);
|
||||
this.label7.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.label7.Name = "label7";
|
||||
this.label7.Size = new System.Drawing.Size(47, 12);
|
||||
this.label7.TabIndex = 13;
|
||||
this.label7.Text = "1块权限";
|
||||
//
|
||||
// label6
|
||||
//
|
||||
this.label6.AutoSize = true;
|
||||
this.label6.Location = new System.Drawing.Point(4, 183);
|
||||
this.label6.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.label6.Name = "label6";
|
||||
this.label6.Size = new System.Drawing.Size(47, 12);
|
||||
this.label6.TabIndex = 12;
|
||||
this.label6.Text = "0块权限";
|
||||
//
|
||||
// label5
|
||||
//
|
||||
this.label5.AutoSize = true;
|
||||
this.label5.Location = new System.Drawing.Point(124, 146);
|
||||
this.label5.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.label5.Name = "label5";
|
||||
this.label5.Size = new System.Drawing.Size(29, 12);
|
||||
this.label5.TabIndex = 11;
|
||||
this.label5.Text = "KeyB";
|
||||
//
|
||||
// keyBEdit
|
||||
//
|
||||
this.keyBEdit.Location = new System.Drawing.Point(124, 161);
|
||||
this.keyBEdit.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.keyBEdit.Name = "keyBEdit";
|
||||
this.keyBEdit.Size = new System.Drawing.Size(91, 21);
|
||||
this.keyBEdit.TabIndex = 10;
|
||||
this.keyBEdit.Validating += new System.ComponentModel.CancelEventHandler(this.keyAEdit_Validating);
|
||||
//
|
||||
// keyAEdit
|
||||
//
|
||||
this.keyAEdit.Location = new System.Drawing.Point(4, 161);
|
||||
this.keyAEdit.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.keyAEdit.Name = "keyAEdit";
|
||||
this.keyAEdit.Size = new System.Drawing.Size(91, 21);
|
||||
this.keyAEdit.TabIndex = 9;
|
||||
this.keyAEdit.TextChanged += new System.EventHandler(this.keyAEdit_TextChanged);
|
||||
this.keyAEdit.Validating += new System.ComponentModel.CancelEventHandler(this.keyAEdit_Validating);
|
||||
//
|
||||
// block2Edit
|
||||
//
|
||||
this.block2Edit.Location = new System.Drawing.Point(4, 124);
|
||||
this.block2Edit.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.block2Edit.Name = "block2Edit";
|
||||
this.block2Edit.Size = new System.Drawing.Size(211, 21);
|
||||
this.block2Edit.TabIndex = 8;
|
||||
this.block2Edit.Validating += new System.ComponentModel.CancelEventHandler(this.block0Edit_Validating);
|
||||
resources.ApplyResources(this.tableLayoutPanel3, "tableLayoutPanel3");
|
||||
this.tableLayoutPanel3.Controls.Add(this.label4, 0, 0);
|
||||
this.tableLayoutPanel3.Controls.Add(this.keyAEdit, 0, 1);
|
||||
this.tableLayoutPanel3.Controls.Add(this.label5, 1, 0);
|
||||
this.tableLayoutPanel3.Controls.Add(this.keyBEdit, 1, 1);
|
||||
this.tableLayoutPanel3.Name = "tableLayoutPanel3";
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Location = new System.Drawing.Point(4, 146);
|
||||
this.label4.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
resources.ApplyResources(this.label4, "label4");
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(29, 12);
|
||||
this.label4.TabIndex = 7;
|
||||
this.label4.Text = "KeyA";
|
||||
//
|
||||
// label3
|
||||
// keyAEdit
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(4, 110);
|
||||
this.label3.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(35, 12);
|
||||
this.label3.TabIndex = 5;
|
||||
this.label3.Text = "第2块";
|
||||
resources.ApplyResources(this.keyAEdit, "keyAEdit");
|
||||
this.keyAEdit.BackColor = System.Drawing.Color.White;
|
||||
this.keyAEdit.Name = "keyAEdit";
|
||||
this.keyAEdit.TextChanged += new System.EventHandler(this.keyAEdit_TextChanged);
|
||||
this.keyAEdit.Validating += new System.ComponentModel.CancelEventHandler(this.keyAEdit_Validating);
|
||||
//
|
||||
// block1Edit
|
||||
// label5
|
||||
//
|
||||
this.block1Edit.Location = new System.Drawing.Point(4, 87);
|
||||
this.block1Edit.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.block1Edit.Name = "block1Edit";
|
||||
this.block1Edit.Size = new System.Drawing.Size(211, 21);
|
||||
this.block1Edit.TabIndex = 4;
|
||||
this.block1Edit.Validating += new System.ComponentModel.CancelEventHandler(this.block0Edit_Validating);
|
||||
resources.ApplyResources(this.label5, "label5");
|
||||
this.label5.Name = "label5";
|
||||
//
|
||||
// label2
|
||||
// keyBEdit
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(4, 73);
|
||||
this.label2.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(35, 12);
|
||||
this.label2.TabIndex = 3;
|
||||
this.label2.Text = "第1块";
|
||||
resources.ApplyResources(this.keyBEdit, "keyBEdit");
|
||||
this.keyBEdit.BackColor = System.Drawing.Color.White;
|
||||
this.keyBEdit.Name = "keyBEdit";
|
||||
this.keyBEdit.Validating += new System.ComponentModel.CancelEventHandler(this.keyAEdit_Validating);
|
||||
//
|
||||
// block0Edit
|
||||
// flowLayoutPanel1
|
||||
//
|
||||
this.block0Edit.Location = new System.Drawing.Point(4, 50);
|
||||
this.block0Edit.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.block0Edit.Name = "block0Edit";
|
||||
this.block0Edit.Size = new System.Drawing.Size(211, 21);
|
||||
this.block0Edit.TabIndex = 2;
|
||||
this.block0Edit.Validating += new System.ComponentModel.CancelEventHandler(this.block0Edit_Validating);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(4, 36);
|
||||
this.label1.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(35, 12);
|
||||
this.label1.TabIndex = 1;
|
||||
this.label1.Text = "第0块";
|
||||
resources.ApplyResources(this.flowLayoutPanel1, "flowLayoutPanel1");
|
||||
this.flowLayoutPanel1.Controls.Add(this.labelCurSec);
|
||||
this.flowLayoutPanel1.Controls.Add(this.buttonSaveSectorEdit);
|
||||
this.flowLayoutPanel1.Name = "flowLayoutPanel1";
|
||||
//
|
||||
// labelCurSec
|
||||
//
|
||||
this.labelCurSec.AutoSize = true;
|
||||
this.labelCurSec.Location = new System.Drawing.Point(4, 17);
|
||||
this.labelCurSec.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
resources.ApplyResources(this.labelCurSec, "labelCurSec");
|
||||
this.labelCurSec.Name = "labelCurSec";
|
||||
this.labelCurSec.Size = new System.Drawing.Size(113, 12);
|
||||
this.labelCurSec.TabIndex = 0;
|
||||
this.labelCurSec.Text = "当前选定扇区:??";
|
||||
//
|
||||
// buttonSaveSectorEdit
|
||||
//
|
||||
resources.ApplyResources(this.buttonSaveSectorEdit, "buttonSaveSectorEdit");
|
||||
this.buttonSaveSectorEdit.BackColor = System.Drawing.Color.DodgerBlue;
|
||||
this.buttonSaveSectorEdit.FlatAppearance.BorderColor = System.Drawing.Color.DodgerBlue;
|
||||
this.buttonSaveSectorEdit.ForeColor = System.Drawing.Color.White;
|
||||
this.buttonSaveSectorEdit.Name = "buttonSaveSectorEdit";
|
||||
this.buttonSaveSectorEdit.UseVisualStyleBackColor = false;
|
||||
this.buttonSaveSectorEdit.Click += new System.EventHandler(this.buttonSaveSectorEdit_Click);
|
||||
//
|
||||
// flowLayoutPanel2
|
||||
//
|
||||
resources.ApplyResources(this.flowLayoutPanel2, "flowLayoutPanel2");
|
||||
this.flowLayoutPanel2.Controls.Add(this.label1);
|
||||
this.flowLayoutPanel2.Controls.Add(this.block0Edit);
|
||||
this.flowLayoutPanel2.Controls.Add(this.label2);
|
||||
this.flowLayoutPanel2.Controls.Add(this.block1Edit);
|
||||
this.flowLayoutPanel2.Controls.Add(this.label3);
|
||||
this.flowLayoutPanel2.Controls.Add(this.block2Edit);
|
||||
this.flowLayoutPanel2.Name = "flowLayoutPanel2";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
resources.ApplyResources(this.label1, "label1");
|
||||
this.label1.Name = "label1";
|
||||
//
|
||||
// block0Edit
|
||||
//
|
||||
resources.ApplyResources(this.block0Edit, "block0Edit");
|
||||
this.block0Edit.BackColor = System.Drawing.Color.White;
|
||||
this.block0Edit.Name = "block0Edit";
|
||||
this.block0Edit.Validating += new System.ComponentModel.CancelEventHandler(this.block0Edit_Validating);
|
||||
//
|
||||
// label2
|
||||
//
|
||||
resources.ApplyResources(this.label2, "label2");
|
||||
this.label2.Name = "label2";
|
||||
//
|
||||
// block1Edit
|
||||
//
|
||||
resources.ApplyResources(this.block1Edit, "block1Edit");
|
||||
this.block1Edit.BackColor = System.Drawing.Color.White;
|
||||
this.block1Edit.Name = "block1Edit";
|
||||
this.block1Edit.Validating += new System.ComponentModel.CancelEventHandler(this.block0Edit_Validating);
|
||||
//
|
||||
// label3
|
||||
//
|
||||
resources.ApplyResources(this.label3, "label3");
|
||||
this.label3.Name = "label3";
|
||||
//
|
||||
// block2Edit
|
||||
//
|
||||
resources.ApplyResources(this.block2Edit, "block2Edit");
|
||||
this.block2Edit.BackColor = System.Drawing.Color.White;
|
||||
this.block2Edit.Name = "block2Edit";
|
||||
this.block2Edit.Validating += new System.ComponentModel.CancelEventHandler(this.block0Edit_Validating);
|
||||
//
|
||||
// groupBox3
|
||||
//
|
||||
resources.ApplyResources(this.groupBox3, "groupBox3");
|
||||
this.groupBox3.BackColor = System.Drawing.Color.DodgerBlue;
|
||||
this.groupBox3.Controls.Add(this.richTextBox1);
|
||||
this.groupBox3.Location = new System.Drawing.Point(424, 25);
|
||||
this.groupBox3.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.groupBox3.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.groupBox3.ForeColor = System.Drawing.Color.White;
|
||||
this.groupBox3.Name = "groupBox3";
|
||||
this.groupBox3.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.groupBox3.Size = new System.Drawing.Size(195, 327);
|
||||
this.groupBox3.TabIndex = 3;
|
||||
this.groupBox3.TabStop = false;
|
||||
this.groupBox3.Text = "输出";
|
||||
//
|
||||
// richTextBox1
|
||||
//
|
||||
this.richTextBox1.BackColor = System.Drawing.Color.Black;
|
||||
this.richTextBox1.ForeColor = System.Drawing.Color.Cyan;
|
||||
this.richTextBox1.Location = new System.Drawing.Point(4, 19);
|
||||
this.richTextBox1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
resources.ApplyResources(this.richTextBox1, "richTextBox1");
|
||||
this.richTextBox1.BackColor = System.Drawing.Color.AliceBlue;
|
||||
this.richTextBox1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.richTextBox1.ForeColor = System.Drawing.Color.Black;
|
||||
this.richTextBox1.Name = "richTextBox1";
|
||||
this.richTextBox1.ReadOnly = true;
|
||||
this.richTextBox1.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.Vertical;
|
||||
this.richTextBox1.Size = new System.Drawing.Size(187, 304);
|
||||
this.richTextBox1.TabIndex = 0;
|
||||
this.richTextBox1.Text = "欢迎使用M1T的集成编辑器S50HTool!\n打开文件请点左上角文件-打开或Ctrl+O\n";
|
||||
//
|
||||
// tableLayoutPanel1
|
||||
//
|
||||
resources.ApplyResources(this.tableLayoutPanel1, "tableLayoutPanel1");
|
||||
this.tableLayoutPanel1.Controls.Add(this.groupBox1, 0, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.groupBox3, 2, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.groupBox2, 1, 0);
|
||||
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
|
||||
//
|
||||
// s50BindingSource
|
||||
//
|
||||
@ -588,19 +544,15 @@
|
||||
// FormHTool
|
||||
//
|
||||
this.AcceptButton = this.buttonSaveSectorEdit;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(628, 362);
|
||||
this.Controls.Add(this.groupBox3);
|
||||
this.Controls.Add(this.groupBox2);
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.BackColor = System.Drawing.Color.White;
|
||||
this.Controls.Add(this.tableLayoutPanel1);
|
||||
this.Controls.Add(this.menuStrip1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MainMenuStrip = this.menuStrip1;
|
||||
this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "FormHTool";
|
||||
this.Text = "S50HTool-beta";
|
||||
this.Load += new System.EventHandler(this.FormHTool_Load);
|
||||
this.menuStrip1.ResumeLayout(false);
|
||||
this.menuStrip1.PerformLayout();
|
||||
@ -608,7 +560,19 @@
|
||||
((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
|
||||
this.groupBox2.ResumeLayout(false);
|
||||
this.groupBox2.PerformLayout();
|
||||
this.tableLayoutPanel2.ResumeLayout(false);
|
||||
this.tableLayoutPanel2.PerformLayout();
|
||||
this.flowLayoutPanel3.ResumeLayout(false);
|
||||
this.flowLayoutPanel3.PerformLayout();
|
||||
this.tableLayoutPanel3.ResumeLayout(false);
|
||||
this.tableLayoutPanel3.PerformLayout();
|
||||
this.flowLayoutPanel1.ResumeLayout(false);
|
||||
this.flowLayoutPanel1.PerformLayout();
|
||||
this.flowLayoutPanel2.ResumeLayout(false);
|
||||
this.flowLayoutPanel2.PerformLayout();
|
||||
this.groupBox3.ResumeLayout(false);
|
||||
this.tableLayoutPanel1.ResumeLayout(false);
|
||||
this.tableLayoutPanel1.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.s50BindingSource)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
@ -663,5 +627,11 @@
|
||||
private System.Windows.Forms.ToolStripMenuItem 导入MCT格式ToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripSeparator4;
|
||||
private System.Windows.Forms.ToolStripMenuItem 列出全卡密钥ToolStripMenuItem;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
|
||||
private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel3;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
|
||||
private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
|
||||
private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel2;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
|
||||
}
|
||||
}
|
||||
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using MifareOneTool.Properties;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
@ -30,7 +31,7 @@ namespace MifareOneTool
|
||||
{
|
||||
int sectorIndex = dataGridView1.SelectedRows[0].Index;
|
||||
reloadEdit(sectorIndex);
|
||||
logAppend("显示扇区" + sectorIndex.ToString());
|
||||
logAppend(Resources.显示扇区 + sectorIndex.ToString());
|
||||
}
|
||||
}
|
||||
private void logAppend(string msg)
|
||||
@ -52,10 +53,10 @@ namespace MifareOneTool
|
||||
this.block2Edit.Text = "";
|
||||
this.block1Edit.Text = "";
|
||||
this.block0Edit.Text = "";
|
||||
this.labelCurSec.Text = "当前选定扇区:??";
|
||||
this.labelCurSec.Text = Resources.当前选定扇区;
|
||||
return;
|
||||
}
|
||||
labelCurSec.Text = "当前选定扇区:" + sectorIndex.ToString();
|
||||
labelCurSec.Text = Resources.当前选定扇区0 + sectorIndex.ToString();
|
||||
block0Edit.Text = Form1.hex(currentS50.Sectors[sectorIndex].Block[0]);
|
||||
block1Edit.Text = Form1.hex(currentS50.Sectors[sectorIndex].Block[1]);
|
||||
block2Edit.Text = Form1.hex(currentS50.Sectors[sectorIndex].Block[2]);
|
||||
@ -76,7 +77,7 @@ namespace MifareOneTool
|
||||
^ currentS50.Sectors[sectorIndex].Block[0][2]
|
||||
^ currentS50.Sectors[sectorIndex].Block[0][3]);
|
||||
block0Edit.Text = Form1.hex(currentS50.Sectors[sectorIndex].Block[0]);
|
||||
msg += "该扇区UID校验值错误,已经自动为您更正。\n";
|
||||
msg += Resources.该扇区UID校验值错误_已经自动为您更正;
|
||||
}
|
||||
if ((res & 0x02) == 0x02)
|
||||
{
|
||||
@ -84,7 +85,7 @@ namespace MifareOneTool
|
||||
comboBox2.SelectedIndex = 0;
|
||||
comboBox3.SelectedIndex = 0;
|
||||
comboBox4.SelectedIndex = 1;
|
||||
msg += "该扇区访问控制位无效,写入将会损坏卡片,已重新设置。\n";
|
||||
msg += Resources.该扇区访问控制位无效_写入将会损坏卡片_已重新设置;
|
||||
}
|
||||
if ((res & 0x04) == 0x04)
|
||||
{
|
||||
@ -92,7 +93,7 @@ namespace MifareOneTool
|
||||
comboBox2.SelectedIndex = 0;
|
||||
comboBox3.SelectedIndex = 0;
|
||||
comboBox4.SelectedIndex = 1;
|
||||
msg += "该扇区访问控制位损坏,写入将会损坏卡片,已重新设置。\n";
|
||||
msg += Resources.该扇区访问控制位损坏_写入将会损坏卡片_已重新设置;
|
||||
}
|
||||
if (res != 0x00) { MessageBox.Show(msg.Trim()); }
|
||||
|
||||
@ -104,8 +105,8 @@ namespace MifareOneTool
|
||||
reloadEdit(-1);
|
||||
OpenFileDialog ofd = new OpenFileDialog();
|
||||
ofd.CheckFileExists = true;
|
||||
ofd.Filter = "MFD文件|*.mfd;*.dump";
|
||||
ofd.Title = "请选择需要打开的MFD文件";
|
||||
ofd.Filter = Resources.MFD文件_mfd_dump;
|
||||
ofd.Title = Resources.请选择需要打开的MFD文件;
|
||||
ofd.Multiselect = false;
|
||||
if (ofd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
@ -122,12 +123,12 @@ namespace MifareOneTool
|
||||
}
|
||||
catch (IOException ioe)
|
||||
{
|
||||
MessageBox.Show(ioe.Message, "打开出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(ioe.Message, Resources.打开出错, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
this.currentS50 = new S50();
|
||||
return;
|
||||
}
|
||||
reloadList();
|
||||
logAppend("打开了" + ofd.FileName);
|
||||
logAppend(Resources.打开了 + ofd.FileName);
|
||||
}
|
||||
|
||||
private void reloadList()
|
||||
@ -154,9 +155,9 @@ namespace MifareOneTool
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.Message, "写入出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(ex.Message, Resources.写入出错, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
}
|
||||
logAppend("已保存到" + currentFilename + "。");
|
||||
logAppend(Resources.已保存到 + currentFilename + Resources.res);
|
||||
}
|
||||
|
||||
private void 另存为ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
@ -165,9 +166,9 @@ namespace MifareOneTool
|
||||
SaveFileDialog ofd = new SaveFileDialog();
|
||||
ofd.AddExtension = true;
|
||||
ofd.DefaultExt = ".mfd";
|
||||
ofd.Title = "请选择MFD文件保存位置及文件名";
|
||||
ofd.Title = Resources.请选择MFD文件保存位置及文件名;
|
||||
ofd.OverwritePrompt = true;
|
||||
ofd.Filter = "MFD文件|*.mfd|DUMP文件|*.dump";
|
||||
ofd.Filter = Resources.MFD文件_mfd_DUMP文件_dump;
|
||||
if (ofd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
filename = ofd.FileName;
|
||||
@ -182,9 +183,9 @@ namespace MifareOneTool
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.Message, "写入出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(ex.Message, Resources.写入出错, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
}
|
||||
logAppend("已保存到" + filename + "。");
|
||||
logAppend(Resources.已保存到 + filename + Resources.res);
|
||||
}
|
||||
|
||||
private void block0Edit_Validating(object sender, CancelEventArgs e)
|
||||
@ -232,7 +233,7 @@ namespace MifareOneTool
|
||||
|| keyAEdit.BackColor != Color.Aquamarine
|
||||
|| keyBEdit.BackColor != Color.Aquamarine)
|
||||
{
|
||||
MessageBox.Show("当前扇区数据仍有错误,不能执行修改。");
|
||||
MessageBox.Show(Resources.当前扇区数据仍有错误_不能执行修改);
|
||||
return;
|
||||
}
|
||||
currentS50.Sectors[currentSector].Block[0] = Utils.Hex2Block(block0Edit.Text.Trim(),16);
|
||||
@ -257,14 +258,14 @@ namespace MifareOneTool
|
||||
{
|
||||
dataGridView1.Rows[i].Cells[0].Value = currentS50.Sectors[i].Info(i);
|
||||
}
|
||||
logAppend("已更新扇区" + currentSector.ToString());
|
||||
logAppend(Resources.已更新扇区 + currentSector.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
private void comboBox1_Validating(object sender, CancelEventArgs e)
|
||||
{
|
||||
ComboBox tb = ((ComboBox)sender);
|
||||
if (tb.SelectedIndex < 0 || tb.Text == "##文件中的值错误##")
|
||||
if (tb.SelectedIndex < 0 || tb.Text == Resources._文件中的值错误)
|
||||
{
|
||||
tb.BackColor = Color.Tomato;
|
||||
//e.Cancel = true;
|
||||
@ -280,29 +281,29 @@ namespace MifareOneTool
|
||||
int[] res = currentS50.Verify();
|
||||
if (res[16] == 0)
|
||||
{
|
||||
MessageBox.Show("该文件一切正常。");
|
||||
MessageBox.Show(Resources.该文件一切正常);
|
||||
}
|
||||
else
|
||||
{
|
||||
string msg = "该文件存在以下错误:\n";
|
||||
string msg = Resources.该文件存在以下错误;
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
msg += "扇区" + i.ToString() + ":\n";
|
||||
msg += Resources.扇区 + i.ToString() + Resources.res4;
|
||||
if ((res[i] & 0x01) == 0x01)
|
||||
{
|
||||
msg += "该扇区UID校验值错误,请点击打开扇区0来自动更正。\n";
|
||||
msg += Resources.该扇区UID校验值错误_请点击打开扇区0来自动更正;
|
||||
}
|
||||
if ((res[i] & 0x02) == 0x02)
|
||||
{
|
||||
msg += "该扇区访问控制位无效,写入将会损坏卡片,请重新设置。\n";
|
||||
msg += Resources.该扇区访问控制位无效_写入将会损坏卡片_请重新设置;
|
||||
}
|
||||
if ((res[i] & 0x04) == 0x04)
|
||||
{
|
||||
msg += "该扇区访问控制位损坏,写入将会损坏卡片,请重新设置。\n";
|
||||
msg += Resources.该扇区访问控制位损坏_写入将会损坏卡片_请重新设置;
|
||||
}
|
||||
if (res[i] == 0)
|
||||
{
|
||||
msg += "该扇区一切正常。\n";
|
||||
msg += Resources.该扇区一切正常;
|
||||
}
|
||||
}
|
||||
richTextBox1.Clear();
|
||||
@ -316,11 +317,11 @@ namespace MifareOneTool
|
||||
byte[] buid = new byte[4];
|
||||
RNGCryptoServiceProvider rng = new RNGCryptoServiceProvider();
|
||||
rng.GetNonZeroBytes(buid);
|
||||
string uid = Interaction.InputBox("请输入需要更改的UID卡号,共8位十六进制数,如E44A3BF1。", "请输入UID号", Form1.hex(buid), -1, -1).Trim();
|
||||
string uid = Interaction.InputBox(Resources.请输入需要更改的UID卡号_共8位十六进制数_如E44A3B, Resources.请输入UID号, Form1.hex(buid), -1, -1).Trim();
|
||||
string pat = "[0-9A-Fa-f]{8}";
|
||||
if (!Regex.IsMatch(uid, pat))
|
||||
{
|
||||
MessageBox.Show("输入的UID号不合法", "InputError", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(Resources.输入的UID号不合法, Resources.InputError, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return;
|
||||
}
|
||||
buid = Utils.Hex2Block(uid, 4);
|
||||
@ -330,7 +331,7 @@ namespace MifareOneTool
|
||||
currentS50.Sectors[0].Block[0][2] = buid[2];
|
||||
currentS50.Sectors[0].Block[0][3] = buid[3];
|
||||
currentS50.Sectors[0].Block[0][4] = bcc;
|
||||
logAppend("UID已改为" + Form1.hex(buid) + ",计算得到BCC=" + Form1.hex(new byte[]{bcc}));
|
||||
logAppend(Resources.UID已改为 + Form1.hex(buid) + Resources._计算得到BCC + Form1.hex(new byte[]{bcc}));
|
||||
reloadEdit(0);
|
||||
}
|
||||
|
||||
@ -339,7 +340,7 @@ namespace MifareOneTool
|
||||
reloadEdit(-1);
|
||||
this.currentS50 = new S50();
|
||||
reloadList();
|
||||
logAppend("已重置并新建卡。");
|
||||
logAppend(Resources.已重置并新建卡);
|
||||
}
|
||||
|
||||
private void 检查并纠正全卡ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
@ -348,14 +349,14 @@ namespace MifareOneTool
|
||||
int[] res = currentS50.Verify();
|
||||
if (res[16] == 0)
|
||||
{
|
||||
MessageBox.Show("该文件一切正常。");
|
||||
MessageBox.Show(Resources.该文件一切正常);
|
||||
}
|
||||
else
|
||||
{
|
||||
string msg = "该文件存在以下错误:\n";
|
||||
string msg = Resources.该文件存在以下错误;
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
msg += "扇区" + i.ToString() + ":\n";
|
||||
msg += Resources.扇区 + i.ToString() + Resources.res4;
|
||||
if ((res[i] & 0x01) == 0x01)
|
||||
{
|
||||
currentS50.Sectors[i].Block[0][4]
|
||||
@ -364,7 +365,7 @@ namespace MifareOneTool
|
||||
^ currentS50.Sectors[i].Block[0][2]
|
||||
^ currentS50.Sectors[i].Block[0][3]);
|
||||
block0Edit.Text = Form1.hex(currentS50.Sectors[i].Block[0]);
|
||||
msg += "该扇区UID校验值错误,已自动更正。\n";
|
||||
msg += Resources.该扇区UID校验值错误_已自动更正;
|
||||
}
|
||||
if ((res[i] & 0x02) == 0x02)
|
||||
{
|
||||
@ -372,7 +373,7 @@ namespace MifareOneTool
|
||||
{
|
||||
currentS50.Sectors[i].Block[3][j] = defaultAC[j - 6];
|
||||
}
|
||||
msg += "该扇区访问控制位无效,写入将会损坏卡片,已重新设置。\n";
|
||||
msg += Resources.该扇区访问控制位无效_写入将会损坏卡片_已重新设置;
|
||||
}
|
||||
if ((res[i] & 0x04) == 0x04)
|
||||
{
|
||||
@ -380,11 +381,11 @@ namespace MifareOneTool
|
||||
{
|
||||
currentS50.Sectors[i].Block[3][j] = defaultAC[j - 6];
|
||||
}
|
||||
msg += "该扇区访问控制位损坏,写入将会损坏卡片,已重新设置。\n";
|
||||
msg += Resources.该扇区访问控制位损坏_写入将会损坏卡片_已重新设置;
|
||||
}
|
||||
if (res[i] == 0)
|
||||
{
|
||||
msg += "该扇区一切正常。\n";
|
||||
msg += Resources.该扇区一切正常;
|
||||
}
|
||||
}
|
||||
richTextBox1.Clear();
|
||||
@ -398,9 +399,9 @@ namespace MifareOneTool
|
||||
SaveFileDialog ofd = new SaveFileDialog();
|
||||
ofd.AddExtension = true;
|
||||
ofd.DefaultExt = ".txt";
|
||||
ofd.Title = "请选择MCT.txt文件保存位置及文件名";
|
||||
ofd.Title = Resources.请选择MCT_txt文件保存位置及文件名;
|
||||
ofd.OverwritePrompt = true;
|
||||
ofd.Filter = "txt文件|*.txt";
|
||||
ofd.Filter = Resources.txt文件_txt;
|
||||
if (ofd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
filename = ofd.FileName;
|
||||
@ -415,9 +416,9 @@ namespace MifareOneTool
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.Message, "写入出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(ex.Message, Resources.写入出错, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
}
|
||||
logAppend("已导出MCT文件" + filename + "。");
|
||||
logAppend(Resources.已导出MCT文件 + filename + "。");
|
||||
}
|
||||
|
||||
private void 导出密钥字典ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
@ -426,9 +427,9 @@ namespace MifareOneTool
|
||||
SaveFileDialog ofd = new SaveFileDialog();
|
||||
ofd.AddExtension = true;
|
||||
ofd.DefaultExt = ".dic";
|
||||
ofd.Title = "请选择密钥字典文件保存位置及文件名";
|
||||
ofd.Title = Resources.请选择密钥字典文件保存位置及文件名;
|
||||
ofd.OverwritePrompt = true;
|
||||
ofd.Filter = "字典文件|*.dic";
|
||||
ofd.Filter = Resources.字典文件_dic;
|
||||
if (ofd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
filename = ofd.FileName;
|
||||
@ -438,7 +439,7 @@ namespace MifareOneTool
|
||||
return;
|
||||
}
|
||||
File.WriteAllLines(filename, this.currentS50.KeyListStr().ToArray());
|
||||
logAppend("已导出密钥字典文件" + filename + "。");
|
||||
logAppend(Resources.已导出密钥字典文件 + filename + Resources.res);
|
||||
}
|
||||
|
||||
private void 导入MCT格式ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
@ -446,8 +447,8 @@ namespace MifareOneTool
|
||||
reloadEdit(-1);
|
||||
OpenFileDialog ofd = new OpenFileDialog();
|
||||
ofd.CheckFileExists = true;
|
||||
ofd.Filter = "MCT格式|*.*";
|
||||
ofd.Title = "请选择需要打开的MCT格式文件";
|
||||
ofd.Filter = Resources.MCT格式;
|
||||
ofd.Title = Resources.请选择需要打开的MCT格式文件;
|
||||
ofd.Multiselect = false;
|
||||
if (ofd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
@ -464,12 +465,12 @@ namespace MifareOneTool
|
||||
}
|
||||
catch (IOException ioe)
|
||||
{
|
||||
MessageBox.Show(ioe.Message, "打开出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(ioe.Message, Resources.打开出错, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
this.currentS50 = new S50();
|
||||
return;
|
||||
}
|
||||
reloadList();
|
||||
logAppend("打开了" + ofd.FileName);
|
||||
logAppend(Resources.打开了 + ofd.FileName);
|
||||
}
|
||||
|
||||
private void 列出全卡密钥ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
@ -477,7 +478,7 @@ namespace MifareOneTool
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (int i = 0; i < 16; i++)
|
||||
{
|
||||
sb.AppendLine("#扇区 " + i.ToString());
|
||||
sb.AppendLine(Resources._扇区 + i.ToString());
|
||||
sb.AppendLine("[A] " + Utils.Hex2Str(this.currentS50.Sectors[i].KeyA));
|
||||
sb.AppendLine("[B] " + Utils.Hex2Str(this.currentS50.Sectors[i].KeyB));
|
||||
}
|
||||
|
||||
702
MifareOneTool/FormHTool.ru.resx
Normal file
@ -0,0 +1,702 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="buttonSaveSectorEdit.Text" xml:space="preserve">
|
||||
<value>Изменить сектор (Enter)</value>
|
||||
</data>
|
||||
<data name="Column1.HeaderText" xml:space="preserve">
|
||||
<value>Cектор </value>
|
||||
</data>
|
||||
<data name="comboBox1.Items" xml:space="preserve">
|
||||
<value>KeyAB читать, писать, увеличивать и уменьшать</value>
|
||||
<comment>Previous text: KeyAB读写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items1" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения и амортизации / недоступен для записи и добавляет ценность</value>
|
||||
<comment>Previous text: [只读]KeyAB读及减值/不可写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items2" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения / записи, а также для увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyAB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items3" xml:space="preserve">
|
||||
<value>KeyB чтение / запись / не сложение и вычитание</value>
|
||||
<comment>Previous text: KeyB读写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items4" xml:space="preserve">
|
||||
<value>KeyAB чтение / KeyB запись / без увеличения или уменьшения</value>
|
||||
<comment>Previous text: KeyAB读/KeyB写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items5" xml:space="preserve">
|
||||
<value>[Только для чтения] KeyB для чтения / не для записи и увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items6" xml:space="preserve">
|
||||
<value>KeyAB чтение и ухудшение / KeyB написание и добавленная стоимость</value>
|
||||
<comment>Previous text: KeyAB读及减值/KeyB写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items7" xml:space="preserve">
|
||||
<value>[только для чтения] заблокировать сектор</value>
|
||||
<comment>Previous text: [只读]锁死该扇区</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items" xml:space="preserve">
|
||||
<value>KeyAB читать, писать, увеличивать и уменьшать</value>
|
||||
<comment>Previous text: KeyAB读写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items1" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения и амортизации / недоступен для записи и добавляет ценность</value>
|
||||
<comment>Previous text: [只读]KeyAB读及减值/不可写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items2" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения / записи, а также для увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyAB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items3" xml:space="preserve">
|
||||
<value>KeyB чтение / запись / не сложение и вычитание</value>
|
||||
<comment>Previous text: KeyB读写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items4" xml:space="preserve">
|
||||
<value>KeyAB чтение / KeyB запись / без увеличения или уменьшения</value>
|
||||
<comment>Previous text: KeyAB读/KeyB写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items5" xml:space="preserve">
|
||||
<value>[Только для чтения] KeyB для чтения / не для записи и увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items6" xml:space="preserve">
|
||||
<value>KeyAB чтение и ухудшение / KeyB написание и добавленная стоимость</value>
|
||||
<comment>Previous text: KeyAB读及减值/KeyB写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items7" xml:space="preserve">
|
||||
<value>[только для чтения] заблокировать сектор</value>
|
||||
<comment>Previous text: [只读]锁死该扇区</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items" xml:space="preserve">
|
||||
<value>KeyAB читать, писать, увеличивать и уменьшать</value>
|
||||
<comment>Previous text: KeyAB读写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items1" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения и амортизации / недоступен для записи и добавляет ценность</value>
|
||||
<comment>Previous text: [只读]KeyAB读及减值/不可写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items2" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения / записи, а также для увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyAB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items3" xml:space="preserve">
|
||||
<value>KeyB чтение / запись / не сложение и вычитание</value>
|
||||
<comment>Previous text: KeyB读写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items4" xml:space="preserve">
|
||||
<value>KeyAB чтение / KeyB запись / без увеличения или уменьшения</value>
|
||||
<comment>Previous text: KeyAB读/KeyB写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items5" xml:space="preserve">
|
||||
<value>[Только для чтения] KeyB для чтения / не для записи и увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items6" xml:space="preserve">
|
||||
<value>KeyAB чтение и ухудшение / KeyB написание и добавленная стоимость</value>
|
||||
<comment>Previous text: KeyAB读及减值/KeyB写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items7" xml:space="preserve">
|
||||
<value>[только для чтения] заблокировать сектор</value>
|
||||
<comment>Previous text: [只读]锁死该扇区</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items" xml:space="preserve">
|
||||
<value>[Необратимый] KeyA: запись / AC: только чтение / KeyB: чтение и запись</value>
|
||||
<comment>Previous text: [不可逆]KeyA:A写/AC:A只读/KeyB:A读写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items1" xml:space="preserve">
|
||||
<value>KeyA: запись / AC: чтение / запись / KeyB: чтение и запись</value>
|
||||
<comment>Previous text: KeyA:A写/AC:A读写/KeyB:A读写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items2" xml:space="preserve">
|
||||
<value>[Необратимый] KeyA: невозможно чтение / запись / AC: только для чтения / KeyB: чтение</value>
|
||||
<comment>Previous text: [不可逆]KeyA:不能读写/AC:A只读/KeyB:A读</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items3" xml:space="preserve">
|
||||
<value>KeyA: B запись / AC: A только для чтения B чтение / запись / KeyB: B запись</value>
|
||||
<comment>Previous text: KeyA:B写/AC:A只读B读写/KeyB:B写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items4" xml:space="preserve">
|
||||
<value>[необратимый] KeyA: запись B / AC: только чтение AB / KeyB: запись B</value>
|
||||
<comment>Previous text: [不可逆]KeyA:B写/AC:AB只读/KeyB:B写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items5" xml:space="preserve">
|
||||
<value>KeyA: невозможно чтение / запись / AC: A только для чтения B чтение / запись / KeyB: невозможно чтение или запись</value>
|
||||
<comment>Previous text: KeyA:不能读写/AC:A只读B读写/KeyB:不能读写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items6" xml:space="preserve">
|
||||
<value>[Необратимый] KeyA: невозможно чтение / запись / AC: AB только для чтения / KeyB: невозможно чтение или запись</value>
|
||||
<comment>Previous text: [不可逆]KeyA:不能读写/AC:AB只读/KeyB:不能读写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items7" xml:space="preserve">
|
||||
<value>[Необратимый] KeyA: невозможно чтение / запись / AC: AB только для чтения / KeyB: невозможно чтение или запись (повторяется?)</value>
|
||||
<comment>Previous text: [不可逆]KeyA:不能读写/AC:AB只读/KeyB:不能读写(重复了?)</comment>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>Редактор дампа (бета)</value>
|
||||
</data>
|
||||
<data name="groupBox1.Text" xml:space="preserve">
|
||||
<value>Список секторов</value>
|
||||
</data>
|
||||
<data name="groupBox2.Text" xml:space="preserve">
|
||||
<value>Информация о секторе</value>
|
||||
</data>
|
||||
<data name="groupBox3.Text" xml:space="preserve">
|
||||
<value>Просмотр</value>
|
||||
</data>
|
||||
<data name="label1.Text" xml:space="preserve">
|
||||
<value>Блок 0</value>
|
||||
</data>
|
||||
<data name="label2.Text" xml:space="preserve">
|
||||
<value>Блок 1</value>
|
||||
</data>
|
||||
<data name="label3.Text" xml:space="preserve">
|
||||
<value>Блок 2</value>
|
||||
</data>
|
||||
<data name="label4.Text" xml:space="preserve">
|
||||
<value>Ключ A</value>
|
||||
</data>
|
||||
<data name="label5.Text" xml:space="preserve">
|
||||
<value>Ключ B</value>
|
||||
</data>
|
||||
<data name="label6.Text" xml:space="preserve">
|
||||
<value>Условия доступа блока 0</value>
|
||||
</data>
|
||||
<data name="label7.Text" xml:space="preserve">
|
||||
<value>Условия доступа блока 1</value>
|
||||
</data>
|
||||
<data name="label8.Text" xml:space="preserve">
|
||||
<value>Условия доступа блока 2</value>
|
||||
</data>
|
||||
<data name="label9.Text" xml:space="preserve">
|
||||
<value>Ключ / ACbits разрешение</value>
|
||||
</data>
|
||||
<data name="labelCurSec.Text" xml:space="preserve">
|
||||
<value>Текущий выбранный сектор: ?</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[0]" xml:space="preserve">
|
||||
<value>Добро пожаловать в интегрированный редактор M1T S50HTool!</value>
|
||||
<comment>Previous text: 欢迎使用M1T的集成编辑器S50HTool!</comment>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[1]" xml:space="preserve">
|
||||
<value>Откройте файл, пожалуйста, нажмите на файл в верхнем левом углу - открыть или Ctrl + O</value>
|
||||
<comment>Previous text: 打开文件请点左上角文件-打开或Ctrl+O</comment>
|
||||
</data>
|
||||
<data name="richTextBox1.Text" xml:space="preserve">
|
||||
<value>Добро пожаловать в интегрированный редактор дампа!
|
||||
Чтобы открыть файл, пожалуйста, нажмите на Файл в верхнем левом углу - Открыть или Ctrl + O
|
||||
Вы можете обновить данные вашей карты.</value>
|
||||
<comment>Previous text: 欢迎使用M1T的集成编辑器S50HTool!
|
||||
打开文件请点左上角文件-打开或Ctrl+O
|
||||
</comment>
|
||||
</data>
|
||||
<data name="保存ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Сохранить</value>
|
||||
</data>
|
||||
<data name="修改UIDToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Изменить UID</value>
|
||||
</data>
|
||||
<data name="列出全卡密钥ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Перечислите полный ключ карты</value>
|
||||
</data>
|
||||
<data name="另存为ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Сохранить как</value>
|
||||
</data>
|
||||
<data name="导入MCT格式ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Импортировать формат MCT</value>
|
||||
</data>
|
||||
<data name="导出为MCT格式ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Экспорт в формат MCT</value>
|
||||
</data>
|
||||
<data name="导出密钥字典ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Словарь ключей экспорта</value>
|
||||
</data>
|
||||
<data name="工具ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Инструменты</value>
|
||||
</data>
|
||||
<data name="打开ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Открыть</value>
|
||||
</data>
|
||||
<data name="文件ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Файл</value>
|
||||
</data>
|
||||
<data name="新建ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Создать</value>
|
||||
</data>
|
||||
<data name="检查全卡ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Проверка полной карты</value>
|
||||
</data>
|
||||
<data name="检查并纠正全卡ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Проверка и исправление полной карты</value>
|
||||
</data>
|
||||
<data name="退出ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>Выход</value>
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="新建ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>226, 22</value>
|
||||
</data>
|
||||
<data name="打开ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>226, 22</value>
|
||||
</data>
|
||||
<data name="保存ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>226, 22</value>
|
||||
</data>
|
||||
<data name="另存为ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>226, 22</value>
|
||||
</data>
|
||||
<data name="toolStripSeparator1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>223, 6</value>
|
||||
</data>
|
||||
<data name="退出ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>226, 22</value>
|
||||
</data>
|
||||
<data name="文件ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>48, 20</value>
|
||||
</data>
|
||||
<data name="修改UIDToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>336, 22</value>
|
||||
</data>
|
||||
<data name="toolStripSeparator2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>333, 6</value>
|
||||
</data>
|
||||
<data name="检查全卡ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>336, 22</value>
|
||||
</data>
|
||||
<data name="检查并纠正全卡ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>336, 22</value>
|
||||
</data>
|
||||
<data name="toolStripSeparator3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>333, 6</value>
|
||||
</data>
|
||||
<data name="导入MCT格式ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>336, 22</value>
|
||||
</data>
|
||||
<data name="导出为MCT格式ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>336, 22</value>
|
||||
</data>
|
||||
<data name="导出密钥字典ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>336, 22</value>
|
||||
</data>
|
||||
<data name="toolStripSeparator4.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>333, 6</value>
|
||||
</data>
|
||||
<data name="列出全卡密钥ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>336, 22</value>
|
||||
</data>
|
||||
<data name="工具ToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>95, 20</value>
|
||||
</data>
|
||||
<data name="menuStrip1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>670, 24</value>
|
||||
</data>
|
||||
<data name="dataGridView1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 19</value>
|
||||
</data>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="dataGridView1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="dataGridView1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>186, 560</value>
|
||||
</data>
|
||||
<data name="groupBox1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 1</value>
|
||||
</data>
|
||||
<data name="groupBox1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="groupBox1.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="groupBox1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>188, 580</value>
|
||||
</data>
|
||||
<data name="label6.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 0</value>
|
||||
</data>
|
||||
<data name="label6.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 0, 1, 0</value>
|
||||
</data>
|
||||
<data name="label6.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>147, 15</value>
|
||||
</data>
|
||||
<data name="comboBox1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 16</value>
|
||||
</data>
|
||||
<data name="comboBox1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="comboBox1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>260, 23</value>
|
||||
</data>
|
||||
<data name="label7.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 40</value>
|
||||
</data>
|
||||
<data name="label7.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 0, 1, 0</value>
|
||||
</data>
|
||||
<data name="label7.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>145, 15</value>
|
||||
</data>
|
||||
<data name="comboBox2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 56</value>
|
||||
</data>
|
||||
<data name="comboBox2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="comboBox2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>260, 23</value>
|
||||
</data>
|
||||
<data name="label8.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 80</value>
|
||||
</data>
|
||||
<data name="label8.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 0, 1, 0</value>
|
||||
</data>
|
||||
<data name="label8.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>147, 15</value>
|
||||
</data>
|
||||
<data name="comboBox3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 96</value>
|
||||
</data>
|
||||
<data name="comboBox3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="comboBox3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>260, 23</value>
|
||||
</data>
|
||||
<data name="label9.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 120</value>
|
||||
</data>
|
||||
<data name="label9.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 0, 1, 0</value>
|
||||
</data>
|
||||
<data name="label9.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>154, 15</value>
|
||||
</data>
|
||||
<data name="comboBox4.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 136</value>
|
||||
</data>
|
||||
<data name="comboBox4.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="comboBox4.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>260, 23</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 211</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>274, 348</value>
|
||||
</data>
|
||||
<data name="label4.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 0</value>
|
||||
</data>
|
||||
<data name="label4.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 0, 1, 0</value>
|
||||
</data>
|
||||
<data name="label4.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>49, 15</value>
|
||||
</data>
|
||||
<data name="keyAEdit.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 16</value>
|
||||
</data>
|
||||
<data name="keyAEdit.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="keyAEdit.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>135, 23</value>
|
||||
</data>
|
||||
<data name="label5.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>138, 0</value>
|
||||
</data>
|
||||
<data name="label5.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 0, 1, 0</value>
|
||||
</data>
|
||||
<data name="label5.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>48, 15</value>
|
||||
</data>
|
||||
<data name="keyBEdit.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>138, 16</value>
|
||||
</data>
|
||||
<data name="keyBEdit.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="keyBEdit.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>135, 23</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 169</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>274, 40</value>
|
||||
</data>
|
||||
<data name="labelCurSec.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 0</value>
|
||||
</data>
|
||||
<data name="labelCurSec.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 0, 1, 0</value>
|
||||
</data>
|
||||
<data name="labelCurSec.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>176, 15</value>
|
||||
</data>
|
||||
<data name="buttonSaveSectorEdit.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 16</value>
|
||||
</data>
|
||||
<data name="buttonSaveSectorEdit.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="buttonSaveSectorEdit.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>152, 27</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 1</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>274, 44</value>
|
||||
</data>
|
||||
<data name="label1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 0</value>
|
||||
</data>
|
||||
<data name="label1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 0, 1, 0</value>
|
||||
</data>
|
||||
<data name="label1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>44, 15</value>
|
||||
</data>
|
||||
<data name="block0Edit.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 16</value>
|
||||
</data>
|
||||
<data name="block0Edit.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="label2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 40</value>
|
||||
</data>
|
||||
<data name="label2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 0, 1, 0</value>
|
||||
</data>
|
||||
<data name="label2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>42, 15</value>
|
||||
</data>
|
||||
<data name="block1Edit.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 56</value>
|
||||
</data>
|
||||
<data name="block1Edit.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="label3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 80</value>
|
||||
</data>
|
||||
<data name="label3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 0, 1, 0</value>
|
||||
</data>
|
||||
<data name="label3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>44, 15</value>
|
||||
</data>
|
||||
<data name="block2Edit.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 96</value>
|
||||
</data>
|
||||
<data name="block2Edit.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 47</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="flowLayoutPanel2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>274, 120</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>1, 19</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>276, 560</value>
|
||||
</data>
|
||||
<data name="groupBox2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>191, 1</value>
|
||||
</data>
|
||||
<data name="groupBox2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="groupBox2.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="groupBox2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>278, 580</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>Yu Gothic UI, 9.75pt</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>0, 20</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>194, 386</value>
|
||||
</data>
|
||||
<data name="groupBox3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>471, 1</value>
|
||||
</data>
|
||||
<data name="groupBox3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="groupBox3.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="groupBox3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>196, 580</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
<data name="tableLayoutPanel1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>668, 582</value>
|
||||
</data>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="$this.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>False</value>
|
||||
</data>
|
||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>670, 432</value>
|
||||
</data>
|
||||
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>1, 1, 1, 1</value>
|
||||
</data>
|
||||
</root>
|
||||
360
MifareOneTool/FormHTool.zh.resx
Normal file
@ -0,0 +1,360 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="buttonSaveSectorEdit.Text" xml:space="preserve">
|
||||
<value>修改扇区(Enter)</value>
|
||||
</data>
|
||||
<data name="Column1.HeaderText" xml:space="preserve">
|
||||
<value>扇区</value>
|
||||
</data>
|
||||
<data name="comboBox1.Items" xml:space="preserve">
|
||||
<value>KeyAB читать, писать, увеличивать и уменьшать</value>
|
||||
<comment>Previous text: KeyAB读写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items1" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения и амортизации / недоступен для записи и добавляет ценность</value>
|
||||
<comment>Previous text: [只读]KeyAB读及减值/不可写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items2" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения / записи, а также для увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyAB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items3" xml:space="preserve">
|
||||
<value>KeyB чтение / запись / не сложение и вычитание</value>
|
||||
<comment>Previous text: KeyB读写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items4" xml:space="preserve">
|
||||
<value>KeyAB чтение / KeyB запись / без увеличения или уменьшения</value>
|
||||
<comment>Previous text: KeyAB读/KeyB写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items5" xml:space="preserve">
|
||||
<value>[Только для чтения] KeyB для чтения / не для записи и увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items6" xml:space="preserve">
|
||||
<value>KeyAB чтение и ухудшение / KeyB написание и добавленная стоимость</value>
|
||||
<comment>Previous text: KeyAB读及减值/KeyB写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox1.Items7" xml:space="preserve">
|
||||
<value>[только для чтения] заблокировать сектор</value>
|
||||
<comment>Previous text: [只读]锁死该扇区</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items" xml:space="preserve">
|
||||
<value>KeyAB читать, писать, увеличивать и уменьшать</value>
|
||||
<comment>Previous text: KeyAB读写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items1" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения и амортизации / недоступен для записи и добавляет ценность</value>
|
||||
<comment>Previous text: [只读]KeyAB读及减值/不可写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items2" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения / записи, а также для увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyAB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items3" xml:space="preserve">
|
||||
<value>KeyB чтение / запись / не сложение и вычитание</value>
|
||||
<comment>Previous text: KeyB读写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items4" xml:space="preserve">
|
||||
<value>KeyAB чтение / KeyB запись / без увеличения или уменьшения</value>
|
||||
<comment>Previous text: KeyAB读/KeyB写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items5" xml:space="preserve">
|
||||
<value>[Только для чтения] KeyB для чтения / не для записи и увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items6" xml:space="preserve">
|
||||
<value>KeyAB чтение и ухудшение / KeyB написание и добавленная стоимость</value>
|
||||
<comment>Previous text: KeyAB读及减值/KeyB写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox2.Items7" xml:space="preserve">
|
||||
<value>[только для чтения] заблокировать сектор</value>
|
||||
<comment>Previous text: [只读]锁死该扇区</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items" xml:space="preserve">
|
||||
<value>KeyAB читать, писать, увеличивать и уменьшать</value>
|
||||
<comment>Previous text: KeyAB读写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items1" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения и амортизации / недоступен для записи и добавляет ценность</value>
|
||||
<comment>Previous text: [只读]KeyAB读及减值/不可写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items2" xml:space="preserve">
|
||||
<value>[только для чтения] KeyAB для чтения / записи, а также для увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyAB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items3" xml:space="preserve">
|
||||
<value>KeyB чтение / запись / не сложение и вычитание</value>
|
||||
<comment>Previous text: KeyB读写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items4" xml:space="preserve">
|
||||
<value>KeyAB чтение / KeyB запись / без увеличения или уменьшения</value>
|
||||
<comment>Previous text: KeyAB读/KeyB写/不可增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items5" xml:space="preserve">
|
||||
<value>[Только для чтения] KeyB для чтения / не для записи и увеличения или уменьшения</value>
|
||||
<comment>Previous text: [只读]KeyB读/不可写及增减值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items6" xml:space="preserve">
|
||||
<value>KeyAB чтение и ухудшение / KeyB написание и добавленная стоимость</value>
|
||||
<comment>Previous text: KeyAB读及减值/KeyB写及增值</comment>
|
||||
</data>
|
||||
<data name="comboBox3.Items7" xml:space="preserve">
|
||||
<value>[только для чтения] заблокировать сектор</value>
|
||||
<comment>Previous text: [只读]锁死该扇区</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items" xml:space="preserve">
|
||||
<value>[Необратимый] KeyA: запись / AC: только чтение / KeyB: чтение и запись</value>
|
||||
<comment>Previous text: [不可逆]KeyA:A写/AC:A只读/KeyB:A读写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items1" xml:space="preserve">
|
||||
<value>KeyA: запись / AC: чтение / запись / KeyB: чтение и запись</value>
|
||||
<comment>Previous text: KeyA:A写/AC:A读写/KeyB:A读写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items2" xml:space="preserve">
|
||||
<value>[Необратимый] KeyA: невозможно чтение / запись / AC: только для чтения / KeyB: чтение</value>
|
||||
<comment>Previous text: [不可逆]KeyA:不能读写/AC:A只读/KeyB:A读</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items3" xml:space="preserve">
|
||||
<value>KeyA: B запись / AC: A только для чтения B чтение / запись / KeyB: B запись</value>
|
||||
<comment>Previous text: KeyA:B写/AC:A只读B读写/KeyB:B写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items4" xml:space="preserve">
|
||||
<value>[необратимый] KeyA: запись B / AC: только чтение AB / KeyB: запись B</value>
|
||||
<comment>Previous text: [不可逆]KeyA:B写/AC:AB只读/KeyB:B写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items5" xml:space="preserve">
|
||||
<value>KeyA: невозможно чтение / запись / AC: A только для чтения B чтение / запись / KeyB: невозможно чтение или запись</value>
|
||||
<comment>Previous text: KeyA:不能读写/AC:A只读B读写/KeyB:不能读写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items6" xml:space="preserve">
|
||||
<value>[Необратимый] KeyA: невозможно чтение / запись / AC: AB только для чтения / KeyB: невозможно чтение или запись</value>
|
||||
<comment>Previous text: [不可逆]KeyA:不能读写/AC:AB只读/KeyB:不能读写</comment>
|
||||
</data>
|
||||
<data name="comboBox4.Items7" xml:space="preserve">
|
||||
<value>[Необратимый] KeyA: невозможно чтение / запись / AC: AB только для чтения / KeyB: невозможно чтение или запись (повторяется?)</value>
|
||||
<comment>Previous text: [不可逆]KeyA:不能读写/AC:AB只读/KeyB:不能读写(重复了?)</comment>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>S50HTool-beta</value>
|
||||
</data>
|
||||
<data name="groupBox1.Text" xml:space="preserve">
|
||||
<value>扇区列表</value>
|
||||
</data>
|
||||
<data name="groupBox2.Text" xml:space="preserve">
|
||||
<value>扇区信息</value>
|
||||
</data>
|
||||
<data name="groupBox3.Text" xml:space="preserve">
|
||||
<value>输出</value>
|
||||
</data>
|
||||
<data name="label1.Text" xml:space="preserve">
|
||||
<value>第0块</value>
|
||||
</data>
|
||||
<data name="label2.Text" xml:space="preserve">
|
||||
<value>第1块</value>
|
||||
</data>
|
||||
<data name="label3.Text" xml:space="preserve">
|
||||
<value>第2块</value>
|
||||
</data>
|
||||
<data name="label4.Text" xml:space="preserve">
|
||||
<value>KeyA</value>
|
||||
</data>
|
||||
<data name="label5.Text" xml:space="preserve">
|
||||
<value>KeyB</value>
|
||||
</data>
|
||||
<data name="label6.Text" xml:space="preserve">
|
||||
<value>0块权限</value>
|
||||
</data>
|
||||
<data name="label7.Text" xml:space="preserve">
|
||||
<value>1块权限</value>
|
||||
</data>
|
||||
<data name="label8.Text" xml:space="preserve">
|
||||
<value>2块权限</value>
|
||||
</data>
|
||||
<data name="label9.Text" xml:space="preserve">
|
||||
<value>Key/ACbits权限</value>
|
||||
</data>
|
||||
<data name="labelCurSec.Text" xml:space="preserve">
|
||||
<value>当前选定扇区:??</value>
|
||||
</data>
|
||||
<data name="menuStrip1.Text" xml:space="preserve">
|
||||
<value>menuStrip1</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[0]" xml:space="preserve">
|
||||
<value>Добро пожаловать в интегрированный редактор дампа!</value>
|
||||
<comment>Previous text: 欢迎使用M1T的集成编辑器S50HTool!</comment>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[1]" xml:space="preserve">
|
||||
<value>Чтобы открыть файл, пожалуйста, нажмите на Файл в верхнем левом углу - Открыть или Ctrl + O</value>
|
||||
<comment>Previous text: 打开文件请点左上角文件-打开或Ctrl+O</comment>
|
||||
</data>
|
||||
<data name="richTextBox1.Lines[2]" xml:space="preserve">
|
||||
<value>Вы можете обновить данные вашей карты.</value>
|
||||
</data>
|
||||
<data name="richTextBox1.Text" xml:space="preserve">
|
||||
<value>欢迎使用M1T的集成编辑器S50HTool!
|
||||
打开文件请点左上角文件-打开或Ctrl+O
|
||||
</value>
|
||||
<comment>Previous text: 欢迎使用M1T的集成编辑器S50HTool!
|
||||
打开文件请点左上角文件-打开或Ctrl+O
|
||||
</comment>
|
||||
</data>
|
||||
<data name="保存ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>保存</value>
|
||||
</data>
|
||||
<data name="修改UIDToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>修改UID</value>
|
||||
</data>
|
||||
<data name="列出全卡密钥ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>列出全卡密钥</value>
|
||||
</data>
|
||||
<data name="另存为ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>另存为</value>
|
||||
</data>
|
||||
<data name="导入MCT格式ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>导入MCT格式</value>
|
||||
</data>
|
||||
<data name="导出为MCT格式ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>导出为MCT格式</value>
|
||||
</data>
|
||||
<data name="导出密钥字典ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>导出密钥字典</value>
|
||||
</data>
|
||||
<data name="工具ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>工具</value>
|
||||
</data>
|
||||
<data name="打开ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>打开</value>
|
||||
</data>
|
||||
<data name="文件ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>文件</value>
|
||||
</data>
|
||||
<data name="新建ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>新建</value>
|
||||
</data>
|
||||
<data name="检查全卡ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>检查全卡</value>
|
||||
</data>
|
||||
<data name="检查并纠正全卡ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>检查并纠正全卡</value>
|
||||
</data>
|
||||
<data name="退出ToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>退出</value>
|
||||
</data>
|
||||
</root>
|
||||
316
MifareOneTool/FormHardNes.Designer.cs
generated
@ -28,255 +28,251 @@
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormHardNes));
|
||||
this.button1 = new System.Windows.Forms.Button();
|
||||
this.button2 = new System.Windows.Forms.Button();
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.radioKey1B = new System.Windows.Forms.RadioButton();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.radioKey1A = new System.Windows.Forms.RadioButton();
|
||||
this.keyEdit = new System.Windows.Forms.TextBox();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.sector1 = new System.Windows.Forms.TextBox();
|
||||
this.keyEdit = new System.Windows.Forms.TextBox();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.radioKey2B = new System.Windows.Forms.RadioButton();
|
||||
this.radioKey2A = new System.Windows.Forms.RadioButton();
|
||||
this.label5 = new System.Windows.Forms.Label();
|
||||
this.label6 = new System.Windows.Forms.Label();
|
||||
this.groupBox2 = new System.Windows.Forms.GroupBox();
|
||||
this.checkBoxColOnly = new System.Windows.Forms.CheckBox();
|
||||
this.tableLayoutPanel4 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.sector2 = new System.Windows.Forms.TextBox();
|
||||
this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.tableLayoutPanel5 = new System.Windows.Forms.TableLayoutPanel();
|
||||
this.label7 = new System.Windows.Forms.Label();
|
||||
this.groupBox1.SuspendLayout();
|
||||
this.tableLayoutPanel1.SuspendLayout();
|
||||
this.groupBox2.SuspendLayout();
|
||||
this.tableLayoutPanel4.SuspendLayout();
|
||||
this.tableLayoutPanel2.SuspendLayout();
|
||||
this.tableLayoutPanel3.SuspendLayout();
|
||||
this.flowLayoutPanel1.SuspendLayout();
|
||||
this.tableLayoutPanel5.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// button1
|
||||
//
|
||||
this.button1.Location = new System.Drawing.Point(231, 150);
|
||||
this.button1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
resources.ApplyResources(this.button1, "button1");
|
||||
this.button1.BackColor = System.Drawing.Color.DodgerBlue;
|
||||
this.button1.FlatAppearance.BorderColor = System.Drawing.Color.DodgerBlue;
|
||||
this.button1.ForeColor = System.Drawing.Color.White;
|
||||
this.button1.Name = "button1";
|
||||
this.button1.Size = new System.Drawing.Size(56, 20);
|
||||
this.button1.TabIndex = 0;
|
||||
this.button1.Text = "执行!";
|
||||
this.button1.UseVisualStyleBackColor = true;
|
||||
this.button1.UseVisualStyleBackColor = false;
|
||||
this.button1.Click += new System.EventHandler(this.button1_Click);
|
||||
//
|
||||
// button2
|
||||
//
|
||||
resources.ApplyResources(this.button2, "button2");
|
||||
this.button2.DialogResult = System.Windows.Forms.DialogResult.Cancel;
|
||||
this.button2.Location = new System.Drawing.Point(170, 150);
|
||||
this.button2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.button2.FlatAppearance.BorderColor = System.Drawing.Color.DodgerBlue;
|
||||
this.button2.FlatAppearance.BorderSize = 2;
|
||||
this.button2.ForeColor = System.Drawing.Color.DodgerBlue;
|
||||
this.button2.Name = "button2";
|
||||
this.button2.Size = new System.Drawing.Size(56, 20);
|
||||
this.button2.TabIndex = 1;
|
||||
this.button2.Text = "取消";
|
||||
this.button2.UseVisualStyleBackColor = true;
|
||||
this.button2.Click += new System.EventHandler(this.button2_Click);
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Controls.Add(this.radioKey1B);
|
||||
this.groupBox1.Controls.Add(this.radioKey1A);
|
||||
this.groupBox1.Controls.Add(this.label4);
|
||||
this.groupBox1.Controls.Add(this.label3);
|
||||
this.groupBox1.Controls.Add(this.sector1);
|
||||
this.groupBox1.Controls.Add(this.keyEdit);
|
||||
this.groupBox1.Controls.Add(this.label2);
|
||||
this.groupBox1.Location = new System.Drawing.Point(9, 10);
|
||||
this.groupBox1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
resources.ApplyResources(this.groupBox1, "groupBox1");
|
||||
this.groupBox1.BackColor = System.Drawing.Color.DodgerBlue;
|
||||
this.groupBox1.Controls.Add(this.tableLayoutPanel1);
|
||||
this.groupBox1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.groupBox1.ForeColor = System.Drawing.Color.White;
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.groupBox1.Size = new System.Drawing.Size(278, 65);
|
||||
this.groupBox1.TabIndex = 2;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "目标卡-已知信息";
|
||||
//
|
||||
// tableLayoutPanel1
|
||||
//
|
||||
resources.ApplyResources(this.tableLayoutPanel1, "tableLayoutPanel1");
|
||||
this.tableLayoutPanel1.BackColor = System.Drawing.Color.White;
|
||||
this.tableLayoutPanel1.Controls.Add(this.radioKey1B, 3, 1);
|
||||
this.tableLayoutPanel1.Controls.Add(this.label2, 0, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.radioKey1A, 2, 1);
|
||||
this.tableLayoutPanel1.Controls.Add(this.keyEdit, 0, 1);
|
||||
this.tableLayoutPanel1.Controls.Add(this.label4, 2, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.label3, 1, 0);
|
||||
this.tableLayoutPanel1.Controls.Add(this.sector1, 1, 1);
|
||||
this.tableLayoutPanel1.ForeColor = System.Drawing.Color.DodgerBlue;
|
||||
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
|
||||
//
|
||||
// radioKey1B
|
||||
//
|
||||
this.radioKey1B.AutoSize = true;
|
||||
this.radioKey1B.Location = new System.Drawing.Point(194, 32);
|
||||
this.radioKey1B.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
resources.ApplyResources(this.radioKey1B, "radioKey1B");
|
||||
this.radioKey1B.Name = "radioKey1B";
|
||||
this.radioKey1B.Size = new System.Drawing.Size(47, 16);
|
||||
this.radioKey1B.TabIndex = 15;
|
||||
this.radioKey1B.Text = "KeyB";
|
||||
this.radioKey1B.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// radioKey1A
|
||||
//
|
||||
this.radioKey1A.AutoSize = true;
|
||||
this.radioKey1A.Checked = true;
|
||||
this.radioKey1A.Location = new System.Drawing.Point(145, 32);
|
||||
this.radioKey1A.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.radioKey1A.Name = "radioKey1A";
|
||||
this.radioKey1A.Size = new System.Drawing.Size(47, 16);
|
||||
this.radioKey1A.TabIndex = 14;
|
||||
this.radioKey1A.TabStop = true;
|
||||
this.radioKey1A.Text = "KeyA";
|
||||
this.radioKey1A.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Location = new System.Drawing.Point(142, 17);
|
||||
this.label4.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(29, 12);
|
||||
this.label4.TabIndex = 13;
|
||||
this.label4.Text = "类型";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(99, 17);
|
||||
this.label3.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(41, 12);
|
||||
this.label3.TabIndex = 12;
|
||||
this.label3.Text = "扇区号";
|
||||
//
|
||||
// sector1
|
||||
//
|
||||
this.sector1.Location = new System.Drawing.Point(101, 31);
|
||||
this.sector1.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.sector1.Name = "sector1";
|
||||
this.sector1.Size = new System.Drawing.Size(36, 21);
|
||||
this.sector1.TabIndex = 11;
|
||||
this.sector1.Text = "0";
|
||||
//
|
||||
// keyEdit
|
||||
//
|
||||
this.keyEdit.Location = new System.Drawing.Point(7, 31);
|
||||
this.keyEdit.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.keyEdit.Name = "keyEdit";
|
||||
this.keyEdit.Size = new System.Drawing.Size(91, 21);
|
||||
this.keyEdit.TabIndex = 10;
|
||||
this.keyEdit.Text = "ffffffffffff";
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(4, 17);
|
||||
this.label2.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
resources.ApplyResources(this.label2, "label2");
|
||||
this.label2.ForeColor = System.Drawing.Color.MediumBlue;
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(59, 12);
|
||||
this.label2.TabIndex = 0;
|
||||
this.label2.Text = "已知的Key";
|
||||
//
|
||||
// radioKey1A
|
||||
//
|
||||
resources.ApplyResources(this.radioKey1A, "radioKey1A");
|
||||
this.radioKey1A.Checked = true;
|
||||
this.radioKey1A.Name = "radioKey1A";
|
||||
this.radioKey1A.TabStop = true;
|
||||
this.radioKey1A.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// keyEdit
|
||||
//
|
||||
this.keyEdit.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
resources.ApplyResources(this.keyEdit, "keyEdit");
|
||||
this.keyEdit.Name = "keyEdit";
|
||||
//
|
||||
// label4
|
||||
//
|
||||
resources.ApplyResources(this.label4, "label4");
|
||||
this.label4.ForeColor = System.Drawing.Color.MediumBlue;
|
||||
this.label4.Name = "label4";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
resources.ApplyResources(this.label3, "label3");
|
||||
this.label3.ForeColor = System.Drawing.Color.MediumBlue;
|
||||
this.label3.Name = "label3";
|
||||
//
|
||||
// sector1
|
||||
//
|
||||
resources.ApplyResources(this.sector1, "sector1");
|
||||
this.sector1.Name = "sector1";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.ForeColor = System.Drawing.Color.Blue;
|
||||
this.label1.Location = new System.Drawing.Point(9, 154);
|
||||
this.label1.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
resources.ApplyResources(this.label1, "label1");
|
||||
this.label1.ForeColor = System.Drawing.Color.MediumBlue;
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(161, 12);
|
||||
this.label1.TabIndex = 3;
|
||||
this.label1.Text = "连续工作时请注意设备散热!";
|
||||
//
|
||||
// radioKey2B
|
||||
//
|
||||
this.radioKey2B.AutoSize = true;
|
||||
this.radioKey2B.Location = new System.Drawing.Point(194, 32);
|
||||
this.radioKey2B.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
resources.ApplyResources(this.radioKey2B, "radioKey2B");
|
||||
this.radioKey2B.Name = "radioKey2B";
|
||||
this.radioKey2B.Size = new System.Drawing.Size(47, 16);
|
||||
this.radioKey2B.TabIndex = 15;
|
||||
this.radioKey2B.Text = "KeyB";
|
||||
this.radioKey2B.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// radioKey2A
|
||||
//
|
||||
this.radioKey2A.AutoSize = true;
|
||||
resources.ApplyResources(this.radioKey2A, "radioKey2A");
|
||||
this.radioKey2A.Checked = true;
|
||||
this.radioKey2A.Location = new System.Drawing.Point(145, 32);
|
||||
this.radioKey2A.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.radioKey2A.Name = "radioKey2A";
|
||||
this.radioKey2A.Size = new System.Drawing.Size(47, 16);
|
||||
this.radioKey2A.TabIndex = 14;
|
||||
this.radioKey2A.TabStop = true;
|
||||
this.radioKey2A.Text = "KeyA";
|
||||
this.radioKey2A.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// label5
|
||||
//
|
||||
this.label5.AutoSize = true;
|
||||
this.label5.Location = new System.Drawing.Point(142, 17);
|
||||
this.label5.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
resources.ApplyResources(this.label5, "label5");
|
||||
this.label5.ForeColor = System.Drawing.Color.MediumBlue;
|
||||
this.label5.Name = "label5";
|
||||
this.label5.Size = new System.Drawing.Size(29, 12);
|
||||
this.label5.TabIndex = 13;
|
||||
this.label5.Text = "类型";
|
||||
//
|
||||
// label6
|
||||
//
|
||||
this.label6.AutoSize = true;
|
||||
this.label6.Location = new System.Drawing.Point(99, 17);
|
||||
this.label6.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0);
|
||||
resources.ApplyResources(this.label6, "label6");
|
||||
this.label6.ForeColor = System.Drawing.Color.MediumBlue;
|
||||
this.label6.Name = "label6";
|
||||
this.label6.Size = new System.Drawing.Size(41, 12);
|
||||
this.label6.TabIndex = 12;
|
||||
this.label6.Text = "扇区号";
|
||||
//
|
||||
// groupBox2
|
||||
//
|
||||
this.groupBox2.Controls.Add(this.checkBoxColOnly);
|
||||
this.groupBox2.Controls.Add(this.radioKey2B);
|
||||
this.groupBox2.Controls.Add(this.radioKey2A);
|
||||
this.groupBox2.Controls.Add(this.label5);
|
||||
this.groupBox2.Controls.Add(this.label6);
|
||||
this.groupBox2.Controls.Add(this.sector2);
|
||||
this.groupBox2.Location = new System.Drawing.Point(9, 79);
|
||||
this.groupBox2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
resources.ApplyResources(this.groupBox2, "groupBox2");
|
||||
this.groupBox2.BackColor = System.Drawing.Color.DodgerBlue;
|
||||
this.groupBox2.Controls.Add(this.tableLayoutPanel4);
|
||||
this.groupBox2.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.groupBox2.ForeColor = System.Drawing.Color.White;
|
||||
this.groupBox2.Name = "groupBox2";
|
||||
this.groupBox2.Padding = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.groupBox2.Size = new System.Drawing.Size(278, 65);
|
||||
this.groupBox2.TabIndex = 16;
|
||||
this.groupBox2.TabStop = false;
|
||||
this.groupBox2.Text = "目标扇区解密设置";
|
||||
this.groupBox2.Enter += new System.EventHandler(this.groupBox2_Enter);
|
||||
//
|
||||
// checkBoxColOnly
|
||||
// tableLayoutPanel4
|
||||
//
|
||||
this.checkBoxColOnly.AutoSize = true;
|
||||
this.checkBoxColOnly.Location = new System.Drawing.Point(5, 19);
|
||||
this.checkBoxColOnly.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.checkBoxColOnly.Name = "checkBoxColOnly";
|
||||
this.checkBoxColOnly.Size = new System.Drawing.Size(96, 16);
|
||||
this.checkBoxColOnly.TabIndex = 17;
|
||||
this.checkBoxColOnly.Text = "只采集不计算";
|
||||
this.checkBoxColOnly.UseVisualStyleBackColor = true;
|
||||
resources.ApplyResources(this.tableLayoutPanel4, "tableLayoutPanel4");
|
||||
this.tableLayoutPanel4.BackColor = System.Drawing.Color.White;
|
||||
this.tableLayoutPanel4.Controls.Add(this.tableLayoutPanel2, 1, 0);
|
||||
this.tableLayoutPanel4.Controls.Add(this.label7, 0, 0);
|
||||
this.tableLayoutPanel4.ForeColor = System.Drawing.Color.DodgerBlue;
|
||||
this.tableLayoutPanel4.Name = "tableLayoutPanel4";
|
||||
//
|
||||
// tableLayoutPanel2
|
||||
//
|
||||
resources.ApplyResources(this.tableLayoutPanel2, "tableLayoutPanel2");
|
||||
this.tableLayoutPanel2.Controls.Add(this.radioKey2B, 3, 1);
|
||||
this.tableLayoutPanel2.Controls.Add(this.radioKey2A, 2, 1);
|
||||
this.tableLayoutPanel2.Controls.Add(this.label6, 1, 0);
|
||||
this.tableLayoutPanel2.Controls.Add(this.label5, 2, 0);
|
||||
this.tableLayoutPanel2.Controls.Add(this.sector2, 1, 1);
|
||||
this.tableLayoutPanel2.Name = "tableLayoutPanel2";
|
||||
//
|
||||
// sector2
|
||||
//
|
||||
this.sector2.Location = new System.Drawing.Point(101, 31);
|
||||
this.sector2.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
resources.ApplyResources(this.sector2, "sector2");
|
||||
this.sector2.Name = "sector2";
|
||||
this.sector2.Size = new System.Drawing.Size(36, 21);
|
||||
this.sector2.TabIndex = 11;
|
||||
//
|
||||
// tableLayoutPanel3
|
||||
//
|
||||
resources.ApplyResources(this.tableLayoutPanel3, "tableLayoutPanel3");
|
||||
this.tableLayoutPanel3.Controls.Add(this.groupBox1, 0, 0);
|
||||
this.tableLayoutPanel3.Controls.Add(this.flowLayoutPanel1, 0, 2);
|
||||
this.tableLayoutPanel3.Controls.Add(this.groupBox2, 0, 1);
|
||||
this.tableLayoutPanel3.Name = "tableLayoutPanel3";
|
||||
//
|
||||
// flowLayoutPanel1
|
||||
//
|
||||
resources.ApplyResources(this.flowLayoutPanel1, "flowLayoutPanel1");
|
||||
this.flowLayoutPanel1.Controls.Add(this.label1);
|
||||
this.flowLayoutPanel1.Controls.Add(this.tableLayoutPanel5);
|
||||
this.flowLayoutPanel1.Name = "flowLayoutPanel1";
|
||||
//
|
||||
// tableLayoutPanel5
|
||||
//
|
||||
resources.ApplyResources(this.tableLayoutPanel5, "tableLayoutPanel5");
|
||||
this.tableLayoutPanel5.Controls.Add(this.button2, 0, 0);
|
||||
this.tableLayoutPanel5.Controls.Add(this.button1, 1, 0);
|
||||
this.tableLayoutPanel5.Name = "tableLayoutPanel5";
|
||||
//
|
||||
// label7
|
||||
//
|
||||
resources.ApplyResources(this.label7, "label7");
|
||||
this.label7.Name = "label7";
|
||||
//
|
||||
// FormHardNes
|
||||
//
|
||||
this.AcceptButton = this.button1;
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.BackColor = System.Drawing.Color.White;
|
||||
this.CancelButton = this.button2;
|
||||
this.ClientSize = new System.Drawing.Size(296, 179);
|
||||
this.ControlBox = false;
|
||||
this.Controls.Add(this.groupBox2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.Controls.Add(this.button2);
|
||||
this.Controls.Add(this.button1);
|
||||
this.Controls.Add(this.tableLayoutPanel3);
|
||||
this.KeyPreview = true;
|
||||
this.Margin = new System.Windows.Forms.Padding(2, 2, 2, 2);
|
||||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "FormHardNes";
|
||||
this.Text = "初始化HardNested解密";
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.groupBox1.PerformLayout();
|
||||
this.tableLayoutPanel1.ResumeLayout(false);
|
||||
this.tableLayoutPanel1.PerformLayout();
|
||||
this.groupBox2.ResumeLayout(false);
|
||||
this.groupBox2.PerformLayout();
|
||||
this.tableLayoutPanel4.ResumeLayout(false);
|
||||
this.tableLayoutPanel4.PerformLayout();
|
||||
this.tableLayoutPanel2.ResumeLayout(false);
|
||||
this.tableLayoutPanel2.PerformLayout();
|
||||
this.tableLayoutPanel3.ResumeLayout(false);
|
||||
this.tableLayoutPanel3.PerformLayout();
|
||||
this.flowLayoutPanel1.ResumeLayout(false);
|
||||
this.flowLayoutPanel1.PerformLayout();
|
||||
this.tableLayoutPanel5.ResumeLayout(false);
|
||||
this.tableLayoutPanel5.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
@ -301,6 +297,12 @@
|
||||
private System.Windows.Forms.GroupBox groupBox2;
|
||||
private System.Windows.Forms.TextBox sector2;
|
||||
private System.Windows.Forms.TextBox sector1;
|
||||
private System.Windows.Forms.CheckBox checkBoxColOnly;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel4;
|
||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel5;
|
||||
private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
|
||||
private System.Windows.Forms.Label label7;
|
||||
}
|
||||
}
|
||||
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using MifareOneTool.Properties;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
@ -51,11 +52,6 @@ namespace MifareOneTool
|
||||
return a;
|
||||
}
|
||||
|
||||
public bool collectOnly()
|
||||
{
|
||||
return checkBoxColOnly.Checked;
|
||||
}
|
||||
|
||||
private void button2_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.DialogResult = DialogResult.Cancel;
|
||||
@ -115,11 +111,16 @@ namespace MifareOneTool
|
||||
}
|
||||
if (error)
|
||||
{
|
||||
MessageBox.Show("设置错误,请修改。");
|
||||
MessageBox.Show(Resources.设置错误_请修改);
|
||||
return;
|
||||
}
|
||||
this.DialogResult = DialogResult.Yes;
|
||||
this.Close();
|
||||
}
|
||||
|
||||
private void groupBox2_Enter(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
176
MifareOneTool/FormHardNes.ru.resx
Normal file
@ -0,0 +1,176 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="button1.Text" xml:space="preserve">
|
||||
<value>Начать!</value>
|
||||
</data>
|
||||
<data name="button2.Text" xml:space="preserve">
|
||||
<value>Отмена</value>
|
||||
</data>
|
||||
<data name="checkBoxColOnly.Text" xml:space="preserve">
|
||||
<value>Только сбор
|
||||
не засчитывается</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>Расшифровка HardNested</value>
|
||||
</data>
|
||||
<data name="groupBox1.Text" xml:space="preserve">
|
||||
<value>Известная информция о карте</value>
|
||||
</data>
|
||||
<data name="groupBox2.Text" xml:space="preserve">
|
||||
<value>Настройка расшифровки сектора</value>
|
||||
</data>
|
||||
<data name="keyEdit.Lines[0]" xml:space="preserve">
|
||||
<value>FFFFFFFFFFFF</value>
|
||||
</data>
|
||||
<data name="keyEdit.Text" xml:space="preserve">
|
||||
<value>FFFFFFFFFFFF</value>
|
||||
</data>
|
||||
<data name="label1.Text" xml:space="preserve">
|
||||
<value>Обратите внимание на устройство
|
||||
при непрерывной работе!</value>
|
||||
</data>
|
||||
<data name="label2.Text" xml:space="preserve">
|
||||
<value>Известный ключ</value>
|
||||
</data>
|
||||
<data name="label3.Text" xml:space="preserve">
|
||||
<value>Номер сектора</value>
|
||||
</data>
|
||||
<data name="label4.Text" xml:space="preserve">
|
||||
<value>Тип ключа</value>
|
||||
</data>
|
||||
<data name="label5.Text" xml:space="preserve">
|
||||
<value>Тип ключа</value>
|
||||
</data>
|
||||
<data name="label6.Text" xml:space="preserve">
|
||||
<value>Номер сектора</value>
|
||||
</data>
|
||||
<data name="radioKey1A.Text" xml:space="preserve">
|
||||
<value>Ключ A</value>
|
||||
</data>
|
||||
<data name="radioKey1B.Text" xml:space="preserve">
|
||||
<value>Ключ B</value>
|
||||
</data>
|
||||
<data name="radioKey2A.Text" xml:space="preserve">
|
||||
<value>Ключ A</value>
|
||||
</data>
|
||||
<data name="radioKey2B.Text" xml:space="preserve">
|
||||
<value>Ключ B</value>
|
||||
</data>
|
||||
</root>
|
||||
186
MifareOneTool/FormHardNes.zh.resx
Normal file
@ -0,0 +1,186 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="button1.Text" xml:space="preserve">
|
||||
<value>执行!</value>
|
||||
</data>
|
||||
<data name="button2.Text" xml:space="preserve">
|
||||
<value>取消</value>
|
||||
</data>
|
||||
<data name="checkBoxColOnly.Text" xml:space="preserve">
|
||||
<value>只采集不计算</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>Bitsliced Crypto-1 brute-forcer</value>
|
||||
<comment>Previous text: 初始化HardNested解密</comment>
|
||||
</data>
|
||||
<data name="groupBox1.Text" xml:space="preserve">
|
||||
<value>目标卡-已知信息</value>
|
||||
</data>
|
||||
<data name="groupBox2.Text" xml:space="preserve">
|
||||
<value>目标扇区解密设置</value>
|
||||
</data>
|
||||
<data name="keyEdit.Lines[0]" xml:space="preserve">
|
||||
<value>ffffffffffff</value>
|
||||
</data>
|
||||
<data name="keyEdit.Text" xml:space="preserve">
|
||||
<value>ffffffffffff</value>
|
||||
</data>
|
||||
<data name="label1.Text" xml:space="preserve">
|
||||
<value>连续工作时请注意设备散热!</value>
|
||||
</data>
|
||||
<data name="label2.Text" xml:space="preserve">
|
||||
<value>已知的Key</value>
|
||||
</data>
|
||||
<data name="label3.Text" xml:space="preserve">
|
||||
<value>扇区号</value>
|
||||
</data>
|
||||
<data name="label4.Text" xml:space="preserve">
|
||||
<value>类型</value>
|
||||
</data>
|
||||
<data name="label5.Text" xml:space="preserve">
|
||||
<value>类型</value>
|
||||
</data>
|
||||
<data name="label6.Text" xml:space="preserve">
|
||||
<value>扇区号</value>
|
||||
</data>
|
||||
<data name="label7.Text" xml:space="preserve">
|
||||
<value>После того, как вы нажмете
|
||||
кнопку "Начать",
|
||||
ожидайте около 1 минуты.</value>
|
||||
</data>
|
||||
<data name="radioKey1A.Text" xml:space="preserve">
|
||||
<value>KeyA</value>
|
||||
</data>
|
||||
<data name="radioKey1B.Text" xml:space="preserve">
|
||||
<value>KeyB</value>
|
||||
</data>
|
||||
<data name="radioKey2A.Text" xml:space="preserve">
|
||||
<value>KeyA</value>
|
||||
</data>
|
||||
<data name="radioKey2B.Text" xml:space="preserve">
|
||||
<value>KeyB</value>
|
||||
</data>
|
||||
<data name="sector1.Lines[0]" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="sector1.Text" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
</root>
|
||||
66
MifareOneTool/FormMFF08.Designer.cs
generated
@ -48,24 +48,15 @@
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Controls.Add(this.label1);
|
||||
this.groupBox1.Location = new System.Drawing.Point(12, 12);
|
||||
resources.ApplyResources(this.groupBox1, "groupBox1");
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(635, 100);
|
||||
this.groupBox1.TabIndex = 0;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "说明";
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Font = new System.Drawing.Font("宋体", 9.5F);
|
||||
resources.ApplyResources(this.label1, "label1");
|
||||
this.label1.ForeColor = System.Drawing.Color.Blue;
|
||||
this.label1.Location = new System.Drawing.Point(6, 17);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(584, 39);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "本工具由nfc-mfclassic做少许修改而来。可用于1K大小CUID卡0块损坏的修复。\r\n本工具可以修复:SAK写错(不认卡类型)、ATQA写错(不认卡大小)" +
|
||||
",对于BCC写错暂时无能为力。\r\n请准备好你最后一次写入该卡导致0块损坏的卡数据文件(如果卡片有加密)。";
|
||||
//
|
||||
// groupBox2
|
||||
//
|
||||
@ -75,106 +66,73 @@
|
||||
this.groupBox2.Controls.Add(this.label2);
|
||||
this.groupBox2.Controls.Add(this.buttonKeyWrite);
|
||||
this.groupBox2.Controls.Add(this.buttonWriteEmpty);
|
||||
this.groupBox2.Location = new System.Drawing.Point(12, 118);
|
||||
resources.ApplyResources(this.groupBox2, "groupBox2");
|
||||
this.groupBox2.Name = "groupBox2";
|
||||
this.groupBox2.Size = new System.Drawing.Size(635, 100);
|
||||
this.groupBox2.TabIndex = 1;
|
||||
this.groupBox2.TabStop = false;
|
||||
this.groupBox2.Text = "操作";
|
||||
//
|
||||
// buttonClr
|
||||
//
|
||||
this.buttonClr.Location = new System.Drawing.Point(585, 33);
|
||||
resources.ApplyResources(this.buttonClr, "buttonClr");
|
||||
this.buttonClr.Name = "buttonClr";
|
||||
this.buttonClr.Size = new System.Drawing.Size(44, 23);
|
||||
this.buttonClr.TabIndex = 4;
|
||||
this.buttonClr.Text = "清除";
|
||||
this.buttonClr.UseVisualStyleBackColor = true;
|
||||
this.buttonClr.Click += new System.EventHandler(this.buttonClr_Click);
|
||||
//
|
||||
// buttonLoadKey
|
||||
//
|
||||
this.buttonLoadKey.Location = new System.Drawing.Point(504, 33);
|
||||
resources.ApplyResources(this.buttonLoadKey, "buttonLoadKey");
|
||||
this.buttonLoadKey.Name = "buttonLoadKey";
|
||||
this.buttonLoadKey.Size = new System.Drawing.Size(75, 23);
|
||||
this.buttonLoadKey.TabIndex = 1;
|
||||
this.buttonLoadKey.Text = "加载…";
|
||||
this.buttonLoadKey.UseVisualStyleBackColor = true;
|
||||
this.buttonLoadKey.Click += new System.EventHandler(this.buttonLoadKey_Click);
|
||||
//
|
||||
// keyfileBox
|
||||
//
|
||||
this.keyfileBox.Location = new System.Drawing.Point(237, 35);
|
||||
resources.ApplyResources(this.keyfileBox, "keyfileBox");
|
||||
this.keyfileBox.Name = "keyfileBox";
|
||||
this.keyfileBox.Size = new System.Drawing.Size(261, 21);
|
||||
this.keyfileBox.TabIndex = 3;
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(235, 20);
|
||||
resources.ApplyResources(this.label2, "label2");
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(227, 12);
|
||||
this.label2.TabIndex = 2;
|
||||
this.label2.Text = "最后一次写卡导致0块损坏的卡数据文件:";
|
||||
//
|
||||
// buttonKeyWrite
|
||||
//
|
||||
this.buttonKeyWrite.Font = new System.Drawing.Font("宋体", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.buttonKeyWrite.Location = new System.Drawing.Point(121, 20);
|
||||
resources.ApplyResources(this.buttonKeyWrite, "buttonKeyWrite");
|
||||
this.buttonKeyWrite.Name = "buttonKeyWrite";
|
||||
this.buttonKeyWrite.Size = new System.Drawing.Size(83, 74);
|
||||
this.buttonKeyWrite.TabIndex = 1;
|
||||
this.buttonKeyWrite.Text = "修复写入\r\n有密码\r\nCUID卡";
|
||||
this.buttonKeyWrite.UseVisualStyleBackColor = true;
|
||||
this.buttonKeyWrite.Click += new System.EventHandler(this.buttonKeyWrite_Click);
|
||||
//
|
||||
// buttonWriteEmpty
|
||||
//
|
||||
this.buttonWriteEmpty.Font = new System.Drawing.Font("宋体", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.buttonWriteEmpty.Location = new System.Drawing.Point(8, 20);
|
||||
resources.ApplyResources(this.buttonWriteEmpty, "buttonWriteEmpty");
|
||||
this.buttonWriteEmpty.Name = "buttonWriteEmpty";
|
||||
this.buttonWriteEmpty.Size = new System.Drawing.Size(83, 74);
|
||||
this.buttonWriteEmpty.TabIndex = 0;
|
||||
this.buttonWriteEmpty.Text = "修复写入\r\n无密空白\r\nCUID卡";
|
||||
this.buttonWriteEmpty.UseVisualStyleBackColor = true;
|
||||
this.buttonWriteEmpty.Click += new System.EventHandler(this.buttonWriteEmpty_Click);
|
||||
//
|
||||
// groupBox3
|
||||
//
|
||||
this.groupBox3.Controls.Add(this.logBox);
|
||||
this.groupBox3.Location = new System.Drawing.Point(12, 224);
|
||||
resources.ApplyResources(this.groupBox3, "groupBox3");
|
||||
this.groupBox3.Name = "groupBox3";
|
||||
this.groupBox3.Size = new System.Drawing.Size(635, 188);
|
||||
this.groupBox3.TabIndex = 0;
|
||||
this.groupBox3.TabStop = false;
|
||||
this.groupBox3.Text = "日志";
|
||||
//
|
||||
// logBox
|
||||
//
|
||||
this.logBox.BackColor = System.Drawing.Color.Black;
|
||||
this.logBox.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
resources.ApplyResources(this.logBox, "logBox");
|
||||
this.logBox.ForeColor = System.Drawing.Color.Gold;
|
||||
this.logBox.Location = new System.Drawing.Point(3, 17);
|
||||
this.logBox.Name = "logBox";
|
||||
this.logBox.ReadOnly = true;
|
||||
this.logBox.ScrollBars = System.Windows.Forms.RichTextBoxScrollBars.ForcedVertical;
|
||||
this.logBox.Size = new System.Drawing.Size(629, 168);
|
||||
this.logBox.TabIndex = 0;
|
||||
this.logBox.Text = resources.GetString("logBox.Text");
|
||||
//
|
||||
// FormMFF08
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
resources.ApplyResources(this, "$this");
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(659, 424);
|
||||
this.Controls.Add(this.groupBox3);
|
||||
this.Controls.Add(this.groupBox2);
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
|
||||
this.MaximizeBox = false;
|
||||
this.Name = "FormMFF08";
|
||||
this.Text = "MFF08 Tool-CUID修复工具";
|
||||
this.Load += new System.EventHandler(this.FormMFF08_Load);
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.groupBox1.PerformLayout();
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using MifareOneTool.Properties;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
@ -22,8 +23,8 @@ namespace MifareOneTool
|
||||
{
|
||||
OpenFileDialog ofd = new OpenFileDialog();
|
||||
ofd.CheckFileExists = true;
|
||||
ofd.Filter = "MFD文件|*.mfd|DUMP文件|*.dump";
|
||||
ofd.Title = "请选择最后一次写卡导致0块损坏的卡数据文件";
|
||||
ofd.Filter = Resources.MFD文件_mfd_DUMP文件_dump;
|
||||
ofd.Title = Resources.请选择最后一次写卡导致0块损坏的卡数据文件;
|
||||
ofd.Multiselect = false;
|
||||
if (ofd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
@ -66,7 +67,7 @@ namespace MifareOneTool
|
||||
|
||||
private void buttonWriteEmpty_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (lprocess) { MessageBox.Show("有任务运行中,不可执行。", "设备忙", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; }
|
||||
if (lprocess) { MessageBox.Show(Resources.有任务运行中_不可执行, Resources.设备忙, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; }
|
||||
S50 empty = new S50();
|
||||
empty.ExportToMfd("mff08_empty.kmf");
|
||||
BackgroundWorker bgw = new BackgroundWorker();
|
||||
@ -101,17 +102,17 @@ namespace MifareOneTool
|
||||
process.BeginErrorReadLine();
|
||||
process.WaitForExit();
|
||||
lprocess = false;
|
||||
b.ReportProgress(100, "##运行完毕##");
|
||||
b.ReportProgress(100, Resources._运行完毕);
|
||||
}
|
||||
|
||||
private void buttonKeyWrite_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (lprocess) { MessageBox.Show("有任务运行中,不可执行。", "设备忙", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; }
|
||||
if (lprocess) { MessageBox.Show(Resources.有任务运行中_不可执行, Resources.设备忙, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; }
|
||||
S50 empty = new S50();
|
||||
empty.ExportToMfd("mff08_empty.kmf");
|
||||
if (keyfileBox.Text == "")
|
||||
{
|
||||
MessageBox.Show("您没有给定最后一次写卡导致0块损坏的卡数据文件来作为写卡时的密钥源。\n操作终止。", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(Resources.您没有给定最后一次写卡导致0块损坏的卡数据文件来作为写卡时的, Resources.错误, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return;
|
||||
}
|
||||
BackgroundWorker bgw = new BackgroundWorker();
|
||||
@ -125,7 +126,7 @@ namespace MifareOneTool
|
||||
{
|
||||
if (!File.Exists("nfc-bin/mff08.exe"))
|
||||
{
|
||||
MessageBox.Show("无法找到MFF08程序文件。\n操作终止。", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
MessageBox.Show(Resources.无法找到MFF08程序文件_操作终止, Resources.错误, MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -117,6 +117,54 @@
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="buttonClr.Text" xml:space="preserve">
|
||||
<value>清除</value>
|
||||
</data>
|
||||
<data name="buttonKeyWrite.Text" xml:space="preserve">
|
||||
<value>修复写入
|
||||
有密码
|
||||
CUID卡</value>
|
||||
</data>
|
||||
<data name="buttonLoadKey.Text" xml:space="preserve">
|
||||
<value>加载…</value>
|
||||
</data>
|
||||
<data name="buttonWriteEmpty.Text" xml:space="preserve">
|
||||
<value>修复写入
|
||||
无密空白
|
||||
CUID卡</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>MFF08 Tool-CUID修复工具</value>
|
||||
</data>
|
||||
<data name="groupBox1.Text" xml:space="preserve">
|
||||
<value>说明</value>
|
||||
</data>
|
||||
<data name="groupBox2.Text" xml:space="preserve">
|
||||
<value>操作</value>
|
||||
</data>
|
||||
<data name="groupBox3.Text" xml:space="preserve">
|
||||
<value>日志</value>
|
||||
</data>
|
||||
<data name="label1.Text" xml:space="preserve">
|
||||
<value>本工具由nfc-mfclassic做少许修改而来。可用于1K大小CUID卡0块损坏的修复。
|
||||
本工具可以修复:SAK写错(不认卡类型)、ATQA写错(不认卡大小),对于BCC写错暂时无能为力。
|
||||
请准备好你最后一次写入该卡导致0块损坏的卡数据文件(如果卡片有加密)。</value>
|
||||
</data>
|
||||
<data name="label2.Text" xml:space="preserve">
|
||||
<value>最后一次写卡导致0块损坏的卡数据文件:</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[0]" xml:space="preserve">
|
||||
<value>每个人使用CUID卡的时候,总会因不了解或是不经意犯下一些小错误。</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[1]" xml:space="preserve">
|
||||
<value>比如使用编辑器修改UID却没有改BCC,SAK=28的卡片解密后的文件直接写入,又或是从S70卡片导入数据写入1K卡却没有更正ATQA。</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[2]" xml:space="preserve">
|
||||
<value>MFF08工具给了你一次修复这些损坏卡片的机会。</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[3]" xml:space="preserve">
|
||||
<value>------------------------------------------------------------------------</value>
|
||||
</data>
|
||||
<data name="logBox.Text" xml:space="preserve">
|
||||
<value>每个人使用CUID卡的时候,总会因不了解或是不经意犯下一些小错误。
|
||||
比如使用编辑器修改UID却没有改BCC,SAK=28的卡片解密后的文件直接写入,又或是从S70卡片导入数据写入1K卡却没有更正ATQA。
|
||||
@ -124,5 +172,326 @@ MFF08工具给了你一次修复这些损坏卡片的机会。
|
||||
------------------------------------------------------------------------
|
||||
|
||||
</value>
|
||||
<comment>Previous text: 每个人使用CUID卡的时候,总会因不了解或是不经意犯下一些小错误。
|
||||
比如使用编辑器修改UID却没有改BCC,SAK=28的卡片解密后的文件直接写入,又或是从S70卡片导入数据写入1K卡却没有更正ATQA。
|
||||
MFF08工具给了你一次修复这些损坏卡片的机会。
|
||||
------------------------------------------------------------------------
|
||||
|
||||
</comment>
|
||||
</data>
|
||||
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<assembly alias="mscorlib" name="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="label1.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="label1.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>SimSun, 9.5pt</value>
|
||||
</data>
|
||||
<data name="label1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>9, 28</value>
|
||||
</data>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="label1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 0, 4, 0</value>
|
||||
</data>
|
||||
<data name="label1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>850, 57</value>
|
||||
</data>
|
||||
<data name="label1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>label1.Name" xml:space="preserve">
|
||||
<value>label1</value>
|
||||
</data>
|
||||
<data name=">>label1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>label1.Parent" xml:space="preserve">
|
||||
<value>groupBox1</value>
|
||||
</data>
|
||||
<data name=">>label1.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="groupBox1.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>18, 20</value>
|
||||
</data>
|
||||
<data name="groupBox1.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="groupBox1.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="groupBox1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>952, 167</value>
|
||||
</data>
|
||||
<data name="groupBox1.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>groupBox1.Name" xml:space="preserve">
|
||||
<value>groupBox1</value>
|
||||
</data>
|
||||
<data name=">>groupBox1.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>groupBox1.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>groupBox1.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="buttonClr.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>878, 55</value>
|
||||
</data>
|
||||
<data name="buttonClr.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="buttonClr.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>66, 38</value>
|
||||
</data>
|
||||
<data name="buttonClr.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name=">>buttonClr.Name" xml:space="preserve">
|
||||
<value>buttonClr</value>
|
||||
</data>
|
||||
<data name=">>buttonClr.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonClr.Parent" xml:space="preserve">
|
||||
<value>groupBox2</value>
|
||||
</data>
|
||||
<data name=">>buttonClr.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="buttonLoadKey.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>756, 55</value>
|
||||
</data>
|
||||
<data name="buttonLoadKey.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="buttonLoadKey.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>112, 38</value>
|
||||
</data>
|
||||
<data name="buttonLoadKey.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name=">>buttonLoadKey.Name" xml:space="preserve">
|
||||
<value>buttonLoadKey</value>
|
||||
</data>
|
||||
<data name=">>buttonLoadKey.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonLoadKey.Parent" xml:space="preserve">
|
||||
<value>groupBox2</value>
|
||||
</data>
|
||||
<data name=">>buttonLoadKey.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="keyfileBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>356, 58</value>
|
||||
</data>
|
||||
<data name="keyfileBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="keyfileBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>390, 26</value>
|
||||
</data>
|
||||
<data name="keyfileBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name=">>keyfileBox.Name" xml:space="preserve">
|
||||
<value>keyfileBox</value>
|
||||
</data>
|
||||
<data name=">>keyfileBox.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.TextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>keyfileBox.Parent" xml:space="preserve">
|
||||
<value>groupBox2</value>
|
||||
</data>
|
||||
<data name=">>keyfileBox.ZOrder" xml:space="preserve">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name="label2.AutoSize" type="System.Boolean, mscorlib">
|
||||
<value>True</value>
|
||||
</data>
|
||||
<data name="label2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>352, 33</value>
|
||||
</data>
|
||||
<data name="label2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 0, 4, 0</value>
|
||||
</data>
|
||||
<data name="label2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>298, 20</value>
|
||||
</data>
|
||||
<data name="label2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>2</value>
|
||||
</data>
|
||||
<data name=">>label2.Name" xml:space="preserve">
|
||||
<value>label2</value>
|
||||
</data>
|
||||
<data name=">>label2.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Label, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>label2.Parent" xml:space="preserve">
|
||||
<value>groupBox2</value>
|
||||
</data>
|
||||
<data name=">>label2.ZOrder" xml:space="preserve">
|
||||
<value>3</value>
|
||||
</data>
|
||||
<data name="buttonKeyWrite.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>SimSun, 11.25pt, style=Bold</value>
|
||||
</data>
|
||||
<data name="buttonKeyWrite.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>182, 33</value>
|
||||
</data>
|
||||
<data name="buttonKeyWrite.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="buttonKeyWrite.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>124, 123</value>
|
||||
</data>
|
||||
<data name="buttonKeyWrite.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name=">>buttonKeyWrite.Name" xml:space="preserve">
|
||||
<value>buttonKeyWrite</value>
|
||||
</data>
|
||||
<data name=">>buttonKeyWrite.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonKeyWrite.Parent" xml:space="preserve">
|
||||
<value>groupBox2</value>
|
||||
</data>
|
||||
<data name=">>buttonKeyWrite.ZOrder" xml:space="preserve">
|
||||
<value>4</value>
|
||||
</data>
|
||||
<data name="buttonWriteEmpty.Font" type="System.Drawing.Font, System.Drawing">
|
||||
<value>SimSun, 11.25pt, style=Bold</value>
|
||||
</data>
|
||||
<data name="buttonWriteEmpty.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>12, 33</value>
|
||||
</data>
|
||||
<data name="buttonWriteEmpty.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="buttonWriteEmpty.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>124, 123</value>
|
||||
</data>
|
||||
<data name="buttonWriteEmpty.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>buttonWriteEmpty.Name" xml:space="preserve">
|
||||
<value>buttonWriteEmpty</value>
|
||||
</data>
|
||||
<data name=">>buttonWriteEmpty.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>buttonWriteEmpty.Parent" xml:space="preserve">
|
||||
<value>groupBox2</value>
|
||||
</data>
|
||||
<data name=">>buttonWriteEmpty.ZOrder" xml:space="preserve">
|
||||
<value>5</value>
|
||||
</data>
|
||||
<data name="groupBox2.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>18, 197</value>
|
||||
</data>
|
||||
<data name="groupBox2.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="groupBox2.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="groupBox2.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>952, 167</value>
|
||||
</data>
|
||||
<data name="groupBox2.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name=">>groupBox2.Name" xml:space="preserve">
|
||||
<value>groupBox2</value>
|
||||
</data>
|
||||
<data name=">>groupBox2.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>groupBox2.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>groupBox2.ZOrder" xml:space="preserve">
|
||||
<value>1</value>
|
||||
</data>
|
||||
<data name="logBox.Dock" type="System.Windows.Forms.DockStyle, System.Windows.Forms">
|
||||
<value>Fill</value>
|
||||
</data>
|
||||
<data name="logBox.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>4, 24</value>
|
||||
</data>
|
||||
<data name="logBox.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="logBox.ScrollBars" type="System.Windows.Forms.RichTextBoxScrollBars, System.Windows.Forms">
|
||||
<value>ForcedVertical</value>
|
||||
</data>
|
||||
<data name="logBox.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>944, 284</value>
|
||||
</data>
|
||||
<data name="logBox.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>logBox.Name" xml:space="preserve">
|
||||
<value>logBox</value>
|
||||
</data>
|
||||
<data name=">>logBox.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.RichTextBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>logBox.Parent" xml:space="preserve">
|
||||
<value>groupBox3</value>
|
||||
</data>
|
||||
<data name=">>logBox.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="groupBox3.Location" type="System.Drawing.Point, System.Drawing">
|
||||
<value>18, 373</value>
|
||||
</data>
|
||||
<data name="groupBox3.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="groupBox3.Padding" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name="groupBox3.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>952, 313</value>
|
||||
</data>
|
||||
<data name="groupBox3.TabIndex" type="System.Int32, mscorlib">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name=">>groupBox3.Name" xml:space="preserve">
|
||||
<value>groupBox3</value>
|
||||
</data>
|
||||
<data name=">>groupBox3.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.GroupBox, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>groupBox3.Parent" xml:space="preserve">
|
||||
<value>$this</value>
|
||||
</data>
|
||||
<data name=">>groupBox3.ZOrder" xml:space="preserve">
|
||||
<value>0</value>
|
||||
</data>
|
||||
<data name="$this.AutoScaleDimensions" type="System.Drawing.SizeF, System.Drawing">
|
||||
<value>9, 20</value>
|
||||
</data>
|
||||
<data name="$this.ClientSize" type="System.Drawing.Size, System.Drawing">
|
||||
<value>988, 707</value>
|
||||
</data>
|
||||
<data name="$this.Margin" type="System.Windows.Forms.Padding, System.Windows.Forms">
|
||||
<value>4, 5, 4, 5</value>
|
||||
</data>
|
||||
<data name=">>$this.Name" xml:space="preserve">
|
||||
<value>FormMFF08</value>
|
||||
</data>
|
||||
<data name=">>$this.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.Form, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
</root>
|
||||
182
MifareOneTool/FormMFF08.ru.resx
Normal file
@ -0,0 +1,182 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="buttonClr.Text" xml:space="preserve">
|
||||
<value>Очистить</value>
|
||||
</data>
|
||||
<data name="buttonKeyWrite.Text" xml:space="preserve">
|
||||
<value>Ремонт написать
|
||||
Есть пароль
|
||||
CUID карта</value>
|
||||
</data>
|
||||
<data name="buttonLoadKey.Text" xml:space="preserve">
|
||||
<value>Loading ...</value>
|
||||
</data>
|
||||
<data name="buttonWriteEmpty.Text" xml:space="preserve">
|
||||
<value>Ремонт написать
|
||||
Нет секретного бланка
|
||||
CUID карта</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>MFF08 Tool-CUID Ремонт инструмента</value>
|
||||
</data>
|
||||
<data name="groupBox1.Text" xml:space="preserve">
|
||||
<value>объяснение</value>
|
||||
</data>
|
||||
<data name="groupBox2.Text" xml:space="preserve">
|
||||
<value>операционная</value>
|
||||
</data>
|
||||
<data name="groupBox3.Text" xml:space="preserve">
|
||||
<value>журнал</value>
|
||||
</data>
|
||||
<data name="label1.Text" xml:space="preserve">
|
||||
<value>Этот инструмент был слегка изменен с помощью nfc-mfclassic. Может быть использован для ремонта 0U блока карты размера 1K.
|
||||
Этот инструмент можно починить: неверный SAK (не распознанный тип карты), неправильный ATQA (не распознанный размер карты) и BCC невозможно записать неправильно.
|
||||
Пожалуйста, подготовьте файл данных карты, который вызвал последние 0 повреждений карты (если карта зашифрована).</value>
|
||||
</data>
|
||||
<data name="label2.Text" xml:space="preserve">
|
||||
<value>В последний раз при записи карты получено 0 поврежденных файлов данных карты:</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[0]" xml:space="preserve">
|
||||
<value>Когда все используют карту CUID, они всегда делают маленькие ошибки, потому что они не понимают или непреднамеренно.</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[1]" xml:space="preserve">
|
||||
<value>Например, если редактор используется для изменения UID, но BCC не изменяется, файл, дешифрованный картой SAK = 28, записывается напрямую или данные импортируются с карты S70 на карту 1K, но ATQA не исправляется.</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[2]" xml:space="preserve">
|
||||
<value>Инструмент MFF08 дает вам возможность исправить эти поврежденные карты сразу.</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[3]" xml:space="preserve">
|
||||
<value>-------------------------------------------------- ----------------------</value>
|
||||
</data>
|
||||
<data name="logBox.Text" xml:space="preserve">
|
||||
<value>Когда все используют карту CUID, они всегда делают маленькие ошибки, потому что они не понимают или непреднамеренно.
|
||||
Например, если редактор используется для изменения UID, но BCC не изменяется, файл, дешифрованный картой SAK = 28, записывается напрямую или данные импортируются с карты S70 на карту 1K, но ATQA не исправляется.
|
||||
Инструмент MFF08 дает вам возможность исправить эти поврежденные карты сразу.
|
||||
-------------------------------------------------- ----------------------
|
||||
|
||||
</value>
|
||||
<comment>Previous text: 每个人使用CUID卡的时候,总会因不了解或是不经意犯下一些小错误。
|
||||
比如使用编辑器修改UID却没有改BCC,SAK=28的卡片解密后的文件直接写入,又或是从S70卡片导入数据写入1K卡却没有更正ATQA。
|
||||
MFF08工具给了你一次修复这些损坏卡片的机会。
|
||||
------------------------------------------------------------------------
|
||||
|
||||
</comment>
|
||||
</data>
|
||||
</root>
|
||||
182
MifareOneTool/FormMFF08.zh.resx
Normal file
@ -0,0 +1,182 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="buttonClr.Text" xml:space="preserve">
|
||||
<value>清除</value>
|
||||
</data>
|
||||
<data name="buttonKeyWrite.Text" xml:space="preserve">
|
||||
<value>修复写入
|
||||
有密码
|
||||
CUID卡</value>
|
||||
</data>
|
||||
<data name="buttonLoadKey.Text" xml:space="preserve">
|
||||
<value>加载…</value>
|
||||
</data>
|
||||
<data name="buttonWriteEmpty.Text" xml:space="preserve">
|
||||
<value>修复写入
|
||||
无密空白
|
||||
CUID卡</value>
|
||||
</data>
|
||||
<data name="$this.Text" xml:space="preserve">
|
||||
<value>MFF08 Tool-CUID修复工具</value>
|
||||
</data>
|
||||
<data name="groupBox1.Text" xml:space="preserve">
|
||||
<value>说明</value>
|
||||
</data>
|
||||
<data name="groupBox2.Text" xml:space="preserve">
|
||||
<value>操作</value>
|
||||
</data>
|
||||
<data name="groupBox3.Text" xml:space="preserve">
|
||||
<value>日志</value>
|
||||
</data>
|
||||
<data name="label1.Text" xml:space="preserve">
|
||||
<value>本工具由nfc-mfclassic做少许修改而来。可用于1K大小CUID卡0块损坏的修复。
|
||||
本工具可以修复:SAK写错(不认卡类型)、ATQA写错(不认卡大小),对于BCC写错暂时无能为力。
|
||||
请准备好你最后一次写入该卡导致0块损坏的卡数据文件(如果卡片有加密)。</value>
|
||||
</data>
|
||||
<data name="label2.Text" xml:space="preserve">
|
||||
<value>最后一次写卡导致0块损坏的卡数据文件:</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[0]" xml:space="preserve">
|
||||
<value>每个人使用CUID卡的时候,总会因不了解或是不经意犯下一些小错误。</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[1]" xml:space="preserve">
|
||||
<value>比如使用编辑器修改UID却没有改BCC,SAK=28的卡片解密后的文件直接写入,又或是从S70卡片导入数据写入1K卡却没有更正ATQA。</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[2]" xml:space="preserve">
|
||||
<value>MFF08工具给了你一次修复这些损坏卡片的机会。</value>
|
||||
</data>
|
||||
<data name="logBox.Lines[3]" xml:space="preserve">
|
||||
<value>------------------------------------------------------------------------</value>
|
||||
</data>
|
||||
<data name="logBox.Text" xml:space="preserve">
|
||||
<value>每个人使用CUID卡的时候,总会因不了解或是不经意犯下一些小错误。
|
||||
比如使用编辑器修改UID却没有改BCC,SAK=28的卡片解密后的文件直接写入,又或是从S70卡片导入数据写入1K卡却没有更正ATQA。
|
||||
MFF08工具给了你一次修复这些损坏卡片的机会。
|
||||
------------------------------------------------------------------------
|
||||
|
||||
</value>
|
||||
<comment>Previous text: 每个人使用CUID卡的时候,总会因不了解或是不经意犯下一些小错误。
|
||||
比如使用编辑器修改UID却没有改BCC,SAK=28的卡片解密后的文件直接写入,又或是从S70卡片导入数据写入1K卡却没有更正ATQA。
|
||||
MFF08工具给了你一次修复这些损坏卡片的机会。
|
||||
------------------------------------------------------------------------
|
||||
|
||||
</comment>
|
||||
</data>
|
||||
</root>
|
||||
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using MifareOneTool.Properties;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
@ -13,7 +14,7 @@ namespace MifareOneTool
|
||||
class GitHubUpdate
|
||||
{
|
||||
public Version localVersion;
|
||||
public string remoteVersion="未知";
|
||||
public string remoteVersion=Resources.未知;
|
||||
public void Update(string GitHubR)
|
||||
{
|
||||
try
|
||||
|
||||
@ -35,7 +35,7 @@
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<OutputPath>..\..\Сборки\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
@ -44,7 +44,7 @@
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<OutputPath>..\..\Сборки\Release\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
@ -52,6 +52,24 @@
|
||||
<PropertyGroup>
|
||||
<ApplicationIcon>nfc_128.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'beta|x86'">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<OutputPath>..\..\Сборки\Beta\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<DebugType>full</DebugType>
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'MifareOneTool|x86'">
|
||||
<OutputPath>..\..\Сборки\MifareOneTool\</OutputPath>
|
||||
<DefineConstants>TRACE</DefineConstants>
|
||||
<Optimize>true</Optimize>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Microsoft.VisualBasic" />
|
||||
<Reference Include="Newtonsoft.Json">
|
||||
@ -107,27 +125,66 @@
|
||||
<EmbeddedResource Include="Form1.resx">
|
||||
<DependentUpon>Form1.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Form1.ru.resx">
|
||||
<DependentUpon>Form1.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Form1.zh.resx">
|
||||
<DependentUpon>Form1.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormDiff.resx">
|
||||
<DependentUpon>FormDiff.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormDiff.ru.resx">
|
||||
<DependentUpon>FormDiff.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormDiff.zh.resx">
|
||||
<DependentUpon>FormDiff.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormHardNes.resx">
|
||||
<DependentUpon>FormHardNes.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormHardNes.ru.resx">
|
||||
<DependentUpon>FormHardNes.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormHardNes.zh.resx">
|
||||
<DependentUpon>FormHardNes.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormHTool.resx">
|
||||
<DependentUpon>FormHTool.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormHTool.ru.resx">
|
||||
<DependentUpon>FormHTool.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormHTool.zh.resx">
|
||||
<DependentUpon>FormHTool.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormMFF08.resx">
|
||||
<DependentUpon>FormMFF08.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormMFF08.ru.resx">
|
||||
<DependentUpon>FormMFF08.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="FormMFF08.zh.resx">
|
||||
<DependentUpon>FormMFF08.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.resx">
|
||||
<Generator>ResXFileCodeGenerator</Generator>
|
||||
<Generator>PublicResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<Compile Include="Properties\Resources.Designer.cs">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
<DesignTime>True</DesignTime>
|
||||
</Compile>
|
||||
<EmbeddedResource Include="Properties\Resources.ru.resx">
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Properties\Resources.zh.resx">
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<None Include="app.config" />
|
||||
<None Include="Properties\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
@ -162,7 +219,25 @@
|
||||
</BootstrapperPackage>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="MifareOneTool_ml.xml" />
|
||||
<Content Include="nfc_128.ico" />
|
||||
<None Include="Resources\round_sync_black_18pt_1x.png" />
|
||||
<None Include="Resources\outline_info_black_18pt_1x.png" />
|
||||
<None Include="Resources\round_info_black_18pt_1x.png" />
|
||||
<None Include="Resources\round_timer_black_18pt_1x.png" />
|
||||
<None Include="Resources\round_update_black_18pt_1x.png" />
|
||||
<None Include="Resources\round_update_black_24pt_1x.png" />
|
||||
<None Include="Resources\round_done_black_48pt_1x.png" />
|
||||
<None Include="Resources\round_done_black_24pt_1x.png" />
|
||||
<None Include="Resources\round_done_outline_black_24pt_1x.png" />
|
||||
<None Include="Resources\round_done_all_black_24pt_1x.png" />
|
||||
<None Include="Resources\round_done_all_black_36pt_1x.png" />
|
||||
<None Include="Resources\round_done_all_black_18pt_1x.png" />
|
||||
<None Include="Resources\round_done_all_black_18pt_2x.png" />
|
||||
<None Include="Resources\round_clear_black_24dp.png" />
|
||||
<None Include="Resources\round_done_all_black_36dp.png" />
|
||||
<None Include="Resources\round_done_all_black_24dp.png" />
|
||||
<None Include="Resources\round_chevron_right_black_24dp.png" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
|
||||
10807
MifareOneTool/MifareOneTool_ml.xml
Normal file
@ -1,4 +1,5 @@
|
||||
using System;
|
||||
using MifareOneTool.Properties;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Windows.Forms;
|
||||
@ -34,7 +35,7 @@ namespace MifareOneTool
|
||||
}
|
||||
else
|
||||
{
|
||||
if (MessageBox.Show("您已经运行了MifareOne Tool,打开多个本程序可能会造成冲突及不可预料到的错误。\n确认要继续吗?", "您正在试图重复运行", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) == DialogResult.OK)
|
||||
if (MessageBox.Show(Resources.您已经运行了MifareOne_Tool_打开多个本程序可能, Resources.您正在试图重复运行, MessageBoxButtons.OKCancel, MessageBoxIcon.Warning) == DialogResult.OK)
|
||||
{
|
||||
Application.EnableVisualStyles();
|
||||
Application.SetCompatibleTextRenderingDefault(false);
|
||||
|
||||
1598
MifareOneTool/Properties/Resources.Designer.cs
generated
@ -46,7 +46,7 @@
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
@ -60,6 +60,7 @@
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
@ -68,9 +69,10 @@
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
@ -85,9 +87,10 @@
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
@ -109,9 +112,533 @@
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="_0_9A_Fa_f_32" xml:space="preserve">
|
||||
<value>[0-9A-Fa-f]{32}</value>
|
||||
</data>
|
||||
<data name="_false" xml:space="preserve">
|
||||
<value>false</value>
|
||||
</data>
|
||||
<data name="_mfd" xml:space="preserve">
|
||||
<value>.mfd</value>
|
||||
</data>
|
||||
<data name="_Nonce收集完毕" xml:space="preserve">
|
||||
<value>##Nonce收集完毕##</value>
|
||||
</data>
|
||||
<data name="_Sector" xml:space="preserve">
|
||||
<value>+Sector: </value>
|
||||
</data>
|
||||
<data name="_true" xml:space="preserve">
|
||||
<value>true</value>
|
||||
</data>
|
||||
<data name="_个块不同" xml:space="preserve">
|
||||
<value> 个块不同
|
||||
</value>
|
||||
</data>
|
||||
<data name="_已保存" xml:space="preserve">
|
||||
<value>##已保存-</value>
|
||||
</data>
|
||||
<data name="_已自动保存" xml:space="preserve">
|
||||
<value>##已自动保存-</value>
|
||||
</data>
|
||||
<data name="_扇区" xml:space="preserve">
|
||||
<value>#扇区 </value>
|
||||
</data>
|
||||
<data name="_文件中的值错误" xml:space="preserve">
|
||||
<value>##文件中的值错误##</value>
|
||||
</data>
|
||||
<data name="_有数据" xml:space="preserve">
|
||||
<value> 有数据</value>
|
||||
</data>
|
||||
<data name="_有错误" xml:space="preserve">
|
||||
<value> 有错误</value>
|
||||
</data>
|
||||
<data name="_未保存" xml:space="preserve">
|
||||
<value>##未保存##</value>
|
||||
</data>
|
||||
<data name="_程序已被强制停止" xml:space="preserve">
|
||||
<value>##程序已被强制停止##</value>
|
||||
</data>
|
||||
<data name="_空扇区" xml:space="preserve">
|
||||
<value> 空扇区</value>
|
||||
</data>
|
||||
<data name="_缓存文件异常" xml:space="preserve">
|
||||
<value>##缓存文件异常##</value>
|
||||
</data>
|
||||
<data name="_计算得到BCC" xml:space="preserve">
|
||||
<value>,计算得到BCC=</value>
|
||||
</data>
|
||||
<data name="_软件版本" xml:space="preserve">
|
||||
<value>#软件版本 </value>
|
||||
</data>
|
||||
<data name="_运行出错" xml:space="preserve">
|
||||
<value>##运行出错##</value>
|
||||
</data>
|
||||
<data name="_运行完毕" xml:space="preserve">
|
||||
<value>##运行完毕##</value>
|
||||
</data>
|
||||
<data name="AB文件中一个或两个无效" xml:space="preserve">
|
||||
<value>AB文件中一个或两个无效。</value>
|
||||
</data>
|
||||
<data name="ACR122U支持已经打开过" xml:space="preserve">
|
||||
<value>ACR122U支持已经打开过。</value>
|
||||
</data>
|
||||
<data name="allow_autoscan" xml:space="preserve">
|
||||
<value>allow_autoscan = </value>
|
||||
</data>
|
||||
<data name="allow_intrusive_scan" xml:space="preserve">
|
||||
<value>allow_intrusive_scan = </value>
|
||||
</data>
|
||||
<data name="device_connstring" xml:space="preserve">
|
||||
<value>device.connstring = "</value>
|
||||
</data>
|
||||
<data name="device_name_NFC_Device" xml:space="preserve">
|
||||
<value>device.name = "NFC-Device"
|
||||
</value>
|
||||
</data>
|
||||
<data name="DUMP文件_dump_MFD文件_mfd" xml:space="preserve">
|
||||
<value>DUMP文件|*.dump|MFD文件|*.mfd</value>
|
||||
</data>
|
||||
<data name="Information" xml:space="preserve">
|
||||
<value>Information</value>
|
||||
</data>
|
||||
<data name="InputError" xml:space="preserve">
|
||||
<value>InputError</value>
|
||||
</data>
|
||||
<data name="KeyA_B_N" xml:space="preserve">
|
||||
<value>KeyA/B/N</value>
|
||||
</data>
|
||||
<data name="libnfc_conf" xml:space="preserve">
|
||||
<value>libnfc.conf</value>
|
||||
</data>
|
||||
<data name="MCT格式" xml:space="preserve">
|
||||
<value>MCT格式|*.*</value>
|
||||
</data>
|
||||
<data name="MFD文件_mfd_dump" xml:space="preserve">
|
||||
<value>MFD文件|*.mfd;*.dump</value>
|
||||
</data>
|
||||
<data name="MFD文件_mfd_DUMP文件_dump" xml:space="preserve">
|
||||
<value>MFD文件|*.mfd|DUMP文件|*.dump</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool" xml:space="preserve">
|
||||
<value>MifareOne Tool</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_已取消" xml:space="preserve">
|
||||
<value>MifareOne Tool - отменено</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_已终止" xml:space="preserve">
|
||||
<value>MifareOne Tool - 已终止</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_运行中" xml:space="preserve">
|
||||
<value>MifareOne Tool - 运行中</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_运行完毕" xml:space="preserve">
|
||||
<value>MifareOne Tool - 运行完毕</value>
|
||||
</data>
|
||||
<data name="res" xml:space="preserve">
|
||||
<value>。</value>
|
||||
</data>
|
||||
<data name="res0" xml:space="preserve">
|
||||
<value>
|
||||
</value>
|
||||
</data>
|
||||
<data name="res1" xml:space="preserve">
|
||||
<value>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</value>
|
||||
</data>
|
||||
<data name="res2" xml:space="preserve">
|
||||
<value>-- </value>
|
||||
</data>
|
||||
<data name="res3" xml:space="preserve">
|
||||
<value>## </value>
|
||||
</data>
|
||||
<data name="res4" xml:space="preserve">
|
||||
<value>:
|
||||
</value>
|
||||
</data>
|
||||
<data name="txt文件_txt" xml:space="preserve">
|
||||
<value>txt文件|*.txt</value>
|
||||
</data>
|
||||
<data name="UID已改为" xml:space="preserve">
|
||||
<value>UID已改为</value>
|
||||
</data>
|
||||
<data name="不恰当的4字节UID长度" xml:space="preserve">
|
||||
<value>不恰当的4字节UID长度</value>
|
||||
</data>
|
||||
<data name="使用KeyA_是_或KeyB_否" xml:space="preserve">
|
||||
<value>使用KeyA(是)或KeyB(否)?</value>
|
||||
</data>
|
||||
<data name="使用KeyA_是_或KeyB_否_还是不使用_用于全新白卡_" xml:space="preserve">
|
||||
<value>使用KeyA(是)或KeyB(否),还是不使用(用于全新白卡)(取消)?</value>
|
||||
</data>
|
||||
<data name="俄语" xml:space="preserve">
|
||||
<value>俄语</value>
|
||||
</data>
|
||||
<data name="共找到" xml:space="preserve">
|
||||
<value>共找到 </value>
|
||||
</data>
|
||||
<data name="写入出错" xml:space="preserve">
|
||||
<value>写入出错</value>
|
||||
</data>
|
||||
<data name="加载的S50卡文件大小异常" xml:space="preserve">
|
||||
<value>加载的S50卡文件大小异常。</value>
|
||||
</data>
|
||||
<data name="加载的文件不存在" xml:space="preserve">
|
||||
<value>加载的文件不存在。</value>
|
||||
</data>
|
||||
<data name="危险操作警告" xml:space="preserve">
|
||||
<value>危险操作警告</value>
|
||||
</data>
|
||||
<data name="同时打开ACR122U支持可能会引起操作速度下降_请确认是否" xml:space="preserve">
|
||||
<value>同时打开ACR122U支持可能会引起操作速度下降。
|
||||
请确认是否要继续操作?</value>
|
||||
</data>
|
||||
<data name="字典文件_dic" xml:space="preserve">
|
||||
<value>字典文件|*.dic</value>
|
||||
</data>
|
||||
<data name="密钥字典文件_dic" xml:space="preserve">
|
||||
<value>密钥字典文件|*.dic</value>
|
||||
</data>
|
||||
<data name="将自动选择首个设备" xml:space="preserve">
|
||||
<value>将自动选择首个设备:</value>
|
||||
</data>
|
||||
<data name="将要写入的文件存在错误_请用高级模式中的Hex工具打开查看" xml:space="preserve">
|
||||
<value>将要写入的文件存在错误,请用高级模式中的Hex工具打开查看。</value>
|
||||
</data>
|
||||
<data name="已保存到" xml:space="preserve">
|
||||
<value>已保存到</value>
|
||||
</data>
|
||||
<data name="已启用CUID空卡写入补丁" xml:space="preserve">
|
||||
<value>已启用CUID空卡写入补丁</value>
|
||||
</data>
|
||||
<data name="已导出MCT文件" xml:space="preserve">
|
||||
<value>已导出MCT文件</value>
|
||||
</data>
|
||||
<data name="已导出密钥字典文件" xml:space="preserve">
|
||||
<value>已导出密钥字典文件</value>
|
||||
</data>
|
||||
<data name="已打开" xml:space="preserve">
|
||||
<value>已打开。</value>
|
||||
</data>
|
||||
<data name="已找到_K" xml:space="preserve">
|
||||
<value>已找到!K=</value>
|
||||
</data>
|
||||
<data name="已指定使用该NFC设备" xml:space="preserve">
|
||||
<value>已指定使用该NFC设备:</value>
|
||||
</data>
|
||||
<data name="已更新扇区" xml:space="preserve">
|
||||
<value>已更新扇区</value>
|
||||
</data>
|
||||
<data name="已重置并新建卡" xml:space="preserve">
|
||||
<value>已重置并新建卡。</value>
|
||||
</data>
|
||||
<data name="开始执行CUID_FUID卡片写入" xml:space="preserve">
|
||||
<value>开始执行CUID/FUID卡片写入……</value>
|
||||
</data>
|
||||
<data name="开始执行HardNested收集数据" xml:space="preserve">
|
||||
<value>开始执行HardNested收集数据……</value>
|
||||
</data>
|
||||
<data name="开始执行HardNested解密强化卡" xml:space="preserve">
|
||||
<value>开始执行HardNested解密强化卡……</value>
|
||||
</data>
|
||||
<data name="开始执行MFOC解密" xml:space="preserve">
|
||||
<value>开始执行MFOC解密……</value>
|
||||
</data>
|
||||
<data name="开始执行UFUID卡片锁定" xml:space="preserve">
|
||||
<value>开始执行UFUID卡片锁定……</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片全格" xml:space="preserve">
|
||||
<value>开始执行UID卡片全格……</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片写入" xml:space="preserve">
|
||||
<value>开始执行UID卡片写入……</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片设定卡号" xml:space="preserve">
|
||||
<value>开始执行UID卡片设定卡号……</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片读取" xml:space="preserve">
|
||||
<value>开始执行UID卡片读取……</value>
|
||||
</data>
|
||||
<data name="开始执行全加密卡片爆破" xml:space="preserve">
|
||||
<value>开始执行全加密卡片爆破……</value>
|
||||
</data>
|
||||
<data name="开始执行写入M1卡片" xml:space="preserve">
|
||||
<value>开始执行写入M1卡片……</value>
|
||||
</data>
|
||||
<data name="开始执行字典模式MFOC解密" xml:space="preserve">
|
||||
<value>开始执行字典模式MFOC解密……</value>
|
||||
</data>
|
||||
<data name="开始执行扫描卡片" xml:space="preserve">
|
||||
<value>开始执行扫描卡片……</value>
|
||||
</data>
|
||||
<data name="开始执行格式化M1卡片" xml:space="preserve">
|
||||
<value>开始执行格式化M1卡片……</value>
|
||||
</data>
|
||||
<data name="开始执行检测卡片加密" xml:space="preserve">
|
||||
<value>开始执行检测卡片加密……</value>
|
||||
</data>
|
||||
<data name="开始执行检测设备" xml:space="preserve">
|
||||
<value>开始执行检测设备……</value>
|
||||
</data>
|
||||
<data name="开始执行读取卡片" xml:space="preserve">
|
||||
<value>开始执行读取卡片……</value>
|
||||
</data>
|
||||
<data name="开始执行重置UID卡片卡号" xml:space="preserve">
|
||||
<value>开始执行重置UID卡片卡号……</value>
|
||||
</data>
|
||||
<data name="当前扇区数据仍有错误_不能执行修改" xml:space="preserve">
|
||||
<value>当前扇区数据仍有错误,不能执行修改。</value>
|
||||
</data>
|
||||
<data name="当前选定扇区" xml:space="preserve">
|
||||
<value>当前选定扇区:??</value>
|
||||
</data>
|
||||
<data name="当前选定扇区0" xml:space="preserve">
|
||||
<value>当前选定扇区:</value>
|
||||
</data>
|
||||
<data name="您可以上传到云计算服务节点进行计算" xml:space="preserve">
|
||||
<value>您可以上传到云计算服务节点进行计算。</value>
|
||||
</data>
|
||||
<data name="您已经运行了MifareOne_Tool_打开多个本程序可能" xml:space="preserve">
|
||||
<value>您已经运行了MifareOne Tool,打开多个本程序可能会造成冲突及不可预料到的错误。
|
||||
确认要继续吗?</value>
|
||||
</data>
|
||||
<data name="您正在试图重复运行" xml:space="preserve">
|
||||
<value>您正在试图重复运行</value>
|
||||
</data>
|
||||
<data name="您没有给定最后一次写卡导致0块损坏的卡数据文件来作为写卡时的" xml:space="preserve">
|
||||
<value>您没有给定最后一次写卡导致0块损坏的卡数据文件来作为写卡时的密钥源。
|
||||
操作终止。</value>
|
||||
</data>
|
||||
<data name="扇区" xml:space="preserve">
|
||||
<value>扇区</value>
|
||||
</data>
|
||||
<data name="扇区0" xml:space="preserve">
|
||||
<value>扇区 </value>
|
||||
</data>
|
||||
<data name="打开了" xml:space="preserve">
|
||||
<value>打开了</value>
|
||||
</data>
|
||||
<data name="打开出错" xml:space="preserve">
|
||||
<value>打开出错</value>
|
||||
</data>
|
||||
<data name="提示信息" xml:space="preserve">
|
||||
<value>提示信息</value>
|
||||
</data>
|
||||
<data name="文件内不是含有64个块数据_可能不完整或不兼容" xml:space="preserve">
|
||||
<value>文件内不是含有64个块数据,可能不完整或不兼容。</value>
|
||||
</data>
|
||||
<data name="无密钥" xml:space="preserve">
|
||||
<value>无密钥</value>
|
||||
</data>
|
||||
<data name="无法找到MFF08程序文件_操作终止" xml:space="preserve">
|
||||
<value>无法找到MFF08程序文件。
|
||||
操作终止。</value>
|
||||
</data>
|
||||
<data name="显示扇区" xml:space="preserve">
|
||||
<value>显示扇区</value>
|
||||
</data>
|
||||
<data name="有任务运行中_不可执行" xml:space="preserve">
|
||||
<value>有任务运行中,不可执行。</value>
|
||||
</data>
|
||||
<data name="未知" xml:space="preserve">
|
||||
<value>未知</value>
|
||||
</data>
|
||||
<data name="未选择有效key_mfd" xml:space="preserve">
|
||||
<value>未选择有效key.mfd。</value>
|
||||
</data>
|
||||
<data name="本地版本" xml:space="preserve">
|
||||
<value>本地版本 </value>
|
||||
</data>
|
||||
<data name="标准" xml:space="preserve">
|
||||
<value>标准</value>
|
||||
</data>
|
||||
<data name="正在使用智能KeyABN" xml:space="preserve">
|
||||
<value>正在使用智能KeyABN…</value>
|
||||
</data>
|
||||
<data name="正在打开ACR122U支持" xml:space="preserve">
|
||||
<value>正在打开ACR122U支持……</value>
|
||||
</data>
|
||||
<data name="正在检索是否存在key_mfd" xml:space="preserve">
|
||||
<value>正在检索是否存在key.mfd…</value>
|
||||
</data>
|
||||
<data name="没有发现任何有效的NFC设备" xml:space="preserve">
|
||||
<value>没有发现任何有效的NFC设备。</value>
|
||||
</data>
|
||||
<data name="秒" xml:space="preserve">
|
||||
<value>秒</value>
|
||||
</data>
|
||||
<data name="空闲" xml:space="preserve">
|
||||
<value>空闲</value>
|
||||
</data>
|
||||
<data name="终端内容已保存至m1t_log文件" xml:space="preserve">
|
||||
<value>终端内容已保存至m1t.log文件</value>
|
||||
</data>
|
||||
<data name="设备串口" xml:space="preserve">
|
||||
<value>设备串口:</value>
|
||||
</data>
|
||||
<data name="设备忙" xml:space="preserve">
|
||||
<value>设备忙</value>
|
||||
</data>
|
||||
<data name="设置错误_请修改" xml:space="preserve">
|
||||
<value>设置错误,请修改。</value>
|
||||
</data>
|
||||
<data name="识别了以下设备" xml:space="preserve">
|
||||
<value>识别了以下设备:</value>
|
||||
</data>
|
||||
<data name="该扇区UID校验值错误_已经自动为您更正" xml:space="preserve">
|
||||
<value>该扇区UID校验值错误,已经自动为您更正。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区UID校验值错误_已自动更正" xml:space="preserve">
|
||||
<value>该扇区UID校验值错误,已自动更正。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区UID校验值错误_请点击打开扇区0来自动更正" xml:space="preserve">
|
||||
<value>该扇区UID校验值错误,请点击打开扇区0来自动更正。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区一切正常" xml:space="preserve">
|
||||
<value>该扇区一切正常。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位损坏_写入将会损坏卡片_已重新设置" xml:space="preserve">
|
||||
<value>该扇区访问控制位损坏,写入将会损坏卡片,已重新设置。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位损坏_写入将会损坏卡片_请重新设置" xml:space="preserve">
|
||||
<value>该扇区访问控制位损坏,写入将会损坏卡片,请重新设置。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位无效_写入将会损坏卡片_已重新设置" xml:space="preserve">
|
||||
<value>该扇区访问控制位无效,写入将会损坏卡片,已重新设置。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位无效_写入将会损坏卡片_请重新设置" xml:space="preserve">
|
||||
<value>该扇区访问控制位无效,写入将会损坏卡片,请重新设置。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该操作将会清空UID卡内全部数据_清空后不可恢复_请确认是否" xml:space="preserve">
|
||||
<value>该操作将会清空UID卡内全部数据!!!
|
||||
清空后不可恢复!请确认是否要继续操作?</value>
|
||||
</data>
|
||||
<data name="该操作将会锁死UFUID卡片_锁死后不可恢复_无法再次更改0" xml:space="preserve">
|
||||
<value>该操作将会锁死UFUID卡片!!!
|
||||
锁死后不可恢复!无法再次更改0块!请确认是否要继续操作?</value>
|
||||
</data>
|
||||
<data name="该文件一切正常" xml:space="preserve">
|
||||
<value>该文件一切正常。</value>
|
||||
</data>
|
||||
<data name="该文件存在以下错误" xml:space="preserve">
|
||||
<value>该文件存在以下错误:
|
||||
</value>
|
||||
</data>
|
||||
<data name="请检查接线是否正确_驱动是否正常安装_设备电源是否已经打开_" xml:space="preserve">
|
||||
<value>请检查接线是否正确/驱动是否正常安装/设备电源是否已经打开(对于具有电源开关的型号)。</value>
|
||||
</data>
|
||||
<data name="请输入UID号" xml:space="preserve">
|
||||
<value>请输入UID号</value>
|
||||
</data>
|
||||
<data name="请输入已知Key" xml:space="preserve">
|
||||
<value>请输入已知Key</value>
|
||||
</data>
|
||||
<data name="请输入已知的Key_以英文半角逗号分隔" xml:space="preserve">
|
||||
<value>请输入已知的Key,以英文半角逗号分隔。</value>
|
||||
</data>
|
||||
<data name="请输入需要写入的UID卡号_共8位十六进制数_如E44A3B" xml:space="preserve">
|
||||
<value>请输入需要写入的UID卡号,共8位十六进制数,如E44A3BF1。</value>
|
||||
</data>
|
||||
<data name="请输入需要更改的UID卡号_共8位十六进制数_如E44A3B" xml:space="preserve">
|
||||
<value>请输入需要更改的UID卡号,共8位十六进制数,如E44A3BF1。</value>
|
||||
</data>
|
||||
<data name="请选择MCT_txt文件保存位置及文件名" xml:space="preserve">
|
||||
<value>请选择MCT.txt文件保存位置及文件名</value>
|
||||
</data>
|
||||
<data name="请选择MFD文件保存位置及文件名" xml:space="preserve">
|
||||
<value>请选择MFD文件保存位置及文件名</value>
|
||||
</data>
|
||||
<data name="请选择一个包含目标卡密钥的MFD文件_通常是已经破解出的该卡" xml:space="preserve">
|
||||
<value>请选择一个包含目标卡密钥的MFD文件(通常是已经破解出的该卡的MFD文件)</value>
|
||||
</data>
|
||||
<data name="请选择密钥字典文件保存位置及文件名" xml:space="preserve">
|
||||
<value>请选择密钥字典文件保存位置及文件名</value>
|
||||
</data>
|
||||
<data name="请选择最后一次写卡导致0块损坏的卡数据文件" xml:space="preserve">
|
||||
<value>请选择最后一次写卡导致0块损坏的卡数据文件</value>
|
||||
</data>
|
||||
<data name="请选择需要写入的MFD文件" xml:space="preserve">
|
||||
<value>请选择需要写入的MFD文件</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MCT格式文件" xml:space="preserve">
|
||||
<value>请选择需要打开的MCT格式文件</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MFD文件" xml:space="preserve">
|
||||
<value>请选择需要打开的MFD文件</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MFD文件_比较A" xml:space="preserve">
|
||||
<value>请选择需要打开的MFD文件(比较A)</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MFD文件_比较B" xml:space="preserve">
|
||||
<value>请选择需要打开的MFD文件(比较B)</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的密钥字典文件" xml:space="preserve">
|
||||
<value>请选择需要打开的密钥字典文件</value>
|
||||
</data>
|
||||
<data name="输入的UID号不合法" xml:space="preserve">
|
||||
<value>输入的UID号不合法</value>
|
||||
</data>
|
||||
<data name="运行中" xml:space="preserve">
|
||||
<value>运行中</value>
|
||||
</data>
|
||||
<data name="运行时间" xml:space="preserve">
|
||||
<value>运行时间:</value>
|
||||
</data>
|
||||
<data name="选择key_mfd" xml:space="preserve">
|
||||
<value>选择key.mfd</value>
|
||||
</data>
|
||||
<data name="错误" xml:space="preserve">
|
||||
<value>错误</value>
|
||||
</data>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="round_chevron_right_black_24dp" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_chevron_right_black_24dp.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="round_clear_black_24dp" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_clear_black_24dp.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="round_done_all_black_24dp" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_done_all_black_24dp.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="outline_info_black_18pt_1x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\outline_info_black_18pt_1x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="round_done_all_black_18pt_1x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_done_all_black_18pt_1x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="round_done_all_black_24pt_1x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_done_all_black_24pt_1x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="round_done_black_24pt_1x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_done_black_24pt_1x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="round_done_outline_black_24pt_1x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_done_outline_black_24pt_1x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="round_info_black_18pt_1x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_info_black_18pt_1x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="round_sync_black_18pt_1x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_sync_black_18pt_1x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="round_timer_black_18pt_1x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_timer_black_18pt_1x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="round_update_black_18pt_1x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_update_black_18pt_1x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
<data name="round_update_black_24pt_1x" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\round_update_black_24pt_1x.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
||||
560
MifareOneTool/Properties/Resources.ru.resx
Normal file
@ -0,0 +1,560 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="_Nonce收集完毕" xml:space="preserve">
|
||||
<value>## Nonce собрано ##</value>
|
||||
</data>
|
||||
<data name="_Sector" xml:space="preserve">
|
||||
<value>+ Сектор:</value>
|
||||
</data>
|
||||
<data name="_个块不同" xml:space="preserve">
|
||||
<value>разных блоков
|
||||
</value>
|
||||
</data>
|
||||
<data name="_已保存" xml:space="preserve">
|
||||
<value>## Сохранено -</value>
|
||||
</data>
|
||||
<data name="_已自动保存" xml:space="preserve">
|
||||
<value>## Файл был сохранен автоматически -</value>
|
||||
</data>
|
||||
<data name="_扇区" xml:space="preserve">
|
||||
<value># сектор </value>
|
||||
</data>
|
||||
<data name="_文件中的值错误" xml:space="preserve">
|
||||
<value>## Ошибказначения в файле ###</value>
|
||||
</data>
|
||||
<data name="_有数据" xml:space="preserve">
|
||||
<value> - есть данные</value>
|
||||
</data>
|
||||
<data name="_有错误" xml:space="preserve">
|
||||
<value> - есть ошибка</value>
|
||||
</data>
|
||||
<data name="_未保存" xml:space="preserve">
|
||||
<value>## Не сохранено ##</value>
|
||||
</data>
|
||||
<data name="_程序已被强制停止" xml:space="preserve">
|
||||
<value>## Программа была вынуждена остановить ##</value>
|
||||
</data>
|
||||
<data name="_空扇区" xml:space="preserve">
|
||||
<value> - пустой сектор</value>
|
||||
</data>
|
||||
<data name="_缓存文件异常" xml:space="preserve">
|
||||
<value>## Исключение файла кэша ##</value>
|
||||
</data>
|
||||
<data name="_计算得到BCC" xml:space="preserve">
|
||||
<value>, рассчитан BCC = </value>
|
||||
</data>
|
||||
<data name="_软件版本" xml:space="preserve">
|
||||
<value>
|
||||
Версия программы - </value>
|
||||
</data>
|
||||
<data name="_运行出错" xml:space="preserve">
|
||||
<value>## Ошибка запуска ##</value>
|
||||
</data>
|
||||
<data name="_运行完毕" xml:space="preserve">
|
||||
<value>##Операция завершена##</value>
|
||||
</data>
|
||||
<data name="AB文件中一个或两个无效" xml:space="preserve">
|
||||
<value>Один или два файла A/B недействительны.</value>
|
||||
</data>
|
||||
<data name="ACR122U支持已经打开过" xml:space="preserve">
|
||||
<value>Поддержка ACR122U включена.</value>
|
||||
</data>
|
||||
<data name="DUMP文件_dump_MFD文件_mfd" xml:space="preserve">
|
||||
<value>DUMP файл | *.dump | MFD файл | *.mfd</value>
|
||||
</data>
|
||||
<data name="Information" xml:space="preserve">
|
||||
<value>Информация</value>
|
||||
</data>
|
||||
<data name="InputError" xml:space="preserve">
|
||||
<value>Ошибка ввода</value>
|
||||
</data>
|
||||
<data name="KeyA_B_N" xml:space="preserve">
|
||||
<value>Ключ A/B для новых карт</value>
|
||||
</data>
|
||||
<data name="MCT格式" xml:space="preserve">
|
||||
<value>Формат MCT|*.*</value>
|
||||
</data>
|
||||
<data name="MFD文件_mfd_dump" xml:space="preserve">
|
||||
<value>MFD файл | *.mfd; *. Dump</value>
|
||||
</data>
|
||||
<data name="MFD文件_mfd_DUMP文件_dump" xml:space="preserve">
|
||||
<value>Файл MFD|*.mfd|Файл DUMP|*.dump</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_已取消" xml:space="preserve">
|
||||
<value>MifareOne - отменено</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_已终止" xml:space="preserve">
|
||||
<value>MifareOne Tool - прекращено</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_运行中" xml:space="preserve">
|
||||
<value>MifareOne Tool - выполнение операции</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_运行完毕" xml:space="preserve">
|
||||
<value>MifareOne Tool - операция завершена</value>
|
||||
</data>
|
||||
<data name="res" xml:space="preserve">
|
||||
<value>.</value>
|
||||
</data>
|
||||
<data name="res1" xml:space="preserve">
|
||||
<value>___________________________________________</value>
|
||||
</data>
|
||||
<data name="res4" xml:space="preserve">
|
||||
<value>:
|
||||
</value>
|
||||
</data>
|
||||
<data name="txt文件_txt" xml:space="preserve">
|
||||
<value>Txt файл|*.txt</value>
|
||||
</data>
|
||||
<data name="UID已改为" xml:space="preserve">
|
||||
<value>UID был изменен на</value>
|
||||
</data>
|
||||
<data name="不恰当的4字节UID长度" xml:space="preserve">
|
||||
<value>Недопустимая длина UID в 4 байта</value>
|
||||
</data>
|
||||
<data name="使用KeyA_是_或KeyB_否" xml:space="preserve">
|
||||
<value>Использовать KeyA (да) или KeyB (нет)?</value>
|
||||
</data>
|
||||
<data name="使用KeyA_是_或KeyB_否_还是不使用_用于全新白卡_" xml:space="preserve">
|
||||
<value>Использовать Ключ A (да) или Ключ B (нет) или нет (отменить) для новых белых карточек?</value>
|
||||
</data>
|
||||
<data name="俄语" xml:space="preserve">
|
||||
<value>Русский</value>
|
||||
</data>
|
||||
<data name="共找到" xml:space="preserve">
|
||||
<value>Найдено </value>
|
||||
</data>
|
||||
<data name="写入出错" xml:space="preserve">
|
||||
<value>Ошибка записи</value>
|
||||
</data>
|
||||
<data name="加载的S50卡文件大小异常" xml:space="preserve">
|
||||
<value>Размер загруженного файла карты S50 не поддерживается.</value>
|
||||
</data>
|
||||
<data name="加载的文件不存在" xml:space="preserve">
|
||||
<value>Загруженный файл не существует.</value>
|
||||
</data>
|
||||
<data name="危险操作警告" xml:space="preserve">
|
||||
<value>Предупреждение об опасной операции</value>
|
||||
</data>
|
||||
<data name="同时打开ACR122U支持可能会引起操作速度下降_请确认是否" xml:space="preserve">
|
||||
<value>Одновременное включение поддержки ACR122U может привести к снижению скорости работы.
|
||||
Подтвердите, хотите ли вы продолжить?</value>
|
||||
</data>
|
||||
<data name="字典文件_dic" xml:space="preserve">
|
||||
<value>Файл словаря|*.dic</value>
|
||||
</data>
|
||||
<data name="密钥字典文件_dic" xml:space="preserve">
|
||||
<value>Файл словаря ключей|*.dic</value>
|
||||
</data>
|
||||
<data name="将自动选择首个设备" xml:space="preserve">
|
||||
<value>Первое устройство будет выбрано автоматически:</value>
|
||||
</data>
|
||||
<data name="将要写入的文件存在错误_请用高级模式中的Hex工具打开查看" xml:space="preserve">
|
||||
<value>Существует ошибка в файле, который будет записан. Откройте его с помощью редактора дампа в расширенном режиме.</value>
|
||||
</data>
|
||||
<data name="已保存到" xml:space="preserve">
|
||||
<value>Сохранено в</value>
|
||||
</data>
|
||||
<data name="已启用CUID空卡写入补丁" xml:space="preserve">
|
||||
<value>Включить патч для записи на пустую карту CUID</value>
|
||||
</data>
|
||||
<data name="已导出MCT文件" xml:space="preserve">
|
||||
<value>MCT файл был экспортирован</value>
|
||||
</data>
|
||||
<data name="已导出密钥字典文件" xml:space="preserve">
|
||||
<value>Экспортированный файлсловаря ключей</value>
|
||||
</data>
|
||||
<data name="已打开" xml:space="preserve">
|
||||
<value>Открыт.</value>
|
||||
</data>
|
||||
<data name="已找到_K" xml:space="preserve">
|
||||
<value>Файл ключа - </value>
|
||||
</data>
|
||||
<data name="已指定使用该NFC设备" xml:space="preserve">
|
||||
<value>Устройство NFC было указано для использования:</value>
|
||||
</data>
|
||||
<data name="已更新扇区" xml:space="preserve">
|
||||
<value>Обновлен сектор </value>
|
||||
</data>
|
||||
<data name="已重置并新建卡" xml:space="preserve">
|
||||
<value>Сброшена и создана новая карта.</value>
|
||||
</data>
|
||||
<data name="开始执行CUID_FUID卡片写入" xml:space="preserve">
|
||||
<value>Запись CUID/FUID карты ...</value>
|
||||
</data>
|
||||
<data name="开始执行HardNested收集数据" xml:space="preserve">
|
||||
<value>HardNested - сбор данных ...</value>
|
||||
</data>
|
||||
<data name="开始执行HardNested解密强化卡" xml:space="preserve">
|
||||
<value>Запуск расшифровки HardNested...</value>
|
||||
</data>
|
||||
<data name="开始执行MFOC解密" xml:space="preserve">
|
||||
<value>Выполняется расшифровка MFOC ...</value>
|
||||
</data>
|
||||
<data name="开始执行UFUID卡片锁定" xml:space="preserve">
|
||||
<value>Блокировка карты UFUID ...</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片全格" xml:space="preserve">
|
||||
<value>Форматирование UID...</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片写入" xml:space="preserve">
|
||||
<value>Начните выполнять запись UID карты ...</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片设定卡号" xml:space="preserve">
|
||||
<value>Начало записи номера UID...
|
||||
</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片读取" xml:space="preserve">
|
||||
<value>Чтение UID...</value>
|
||||
</data>
|
||||
<data name="开始执行全加密卡片爆破" xml:space="preserve">
|
||||
<value>Начало выполнения полной расшифровки карты ...</value>
|
||||
</data>
|
||||
<data name="开始执行写入M1卡片" xml:space="preserve">
|
||||
<value>Запись на карту...</value>
|
||||
</data>
|
||||
<data name="开始执行字典模式MFOC解密" xml:space="preserve">
|
||||
<value>Начало расшифровки MFOC в режиме словаря...</value>
|
||||
</data>
|
||||
<data name="开始执行扫描卡片" xml:space="preserve">
|
||||
<value>Сканирование карт...</value>
|
||||
</data>
|
||||
<data name="开始执行格式化M1卡片" xml:space="preserve">
|
||||
<value>Форматирование карты...</value>
|
||||
</data>
|
||||
<data name="开始执行检测卡片加密" xml:space="preserve">
|
||||
<value>Определение зашифрованных секторов...</value>
|
||||
</data>
|
||||
<data name="开始执行检测设备" xml:space="preserve">
|
||||
<value>Поиск считвателя...</value>
|
||||
</data>
|
||||
<data name="开始执行读取卡片" xml:space="preserve">
|
||||
<value>Чтение карты...</value>
|
||||
</data>
|
||||
<data name="开始执行重置UID卡片卡号" xml:space="preserve">
|
||||
<value>Сброс номера UID ...</value>
|
||||
</data>
|
||||
<data name="当前扇区数据仍有错误_不能执行修改" xml:space="preserve">
|
||||
<value>Текущие данные сектора по-прежнему имеют ошибки и не могут быть изменены.</value>
|
||||
</data>
|
||||
<data name="当前选定扇区" xml:space="preserve">
|
||||
<value>Текущий выбранный сектор: ?</value>
|
||||
</data>
|
||||
<data name="当前选定扇区0" xml:space="preserve">
|
||||
<value>Текущий выбранный сектор: </value>
|
||||
</data>
|
||||
<data name="您可以上传到云计算服务节点进行计算" xml:space="preserve">
|
||||
<value>Вы можете загрузить на узел службы облачных вычислений для расчета.</value>
|
||||
</data>
|
||||
<data name="您已经运行了MifareOne_Tool_打开多个本程序可能" xml:space="preserve">
|
||||
<value>Вы уже запустили MifareOne Tool. Открытие нескольких программ может вызвать конфликты и непредсказуемые ошибки.
|
||||
Вы уверены, что хотите продолжить?</value>
|
||||
</data>
|
||||
<data name="您正在试图重复运行" xml:space="preserve">
|
||||
<value>Повторный запуск</value>
|
||||
</data>
|
||||
<data name="您没有给定最后一次写卡导致0块损坏的卡数据文件来作为写卡时的" xml:space="preserve">
|
||||
<value>Вы не предоставили файл данных карты, который вызвал 0 блоков повреждения, когда последняя запись была сделана в качестве ключевого источника при записи карты.
|
||||
Операция прекращена.</value>
|
||||
</data>
|
||||
<data name="扇区" xml:space="preserve">
|
||||
<value>Cектор </value>
|
||||
</data>
|
||||
<data name="扇区0" xml:space="preserve">
|
||||
<value>Сектор </value>
|
||||
</data>
|
||||
<data name="打开了" xml:space="preserve">
|
||||
<value>Открыть</value>
|
||||
</data>
|
||||
<data name="打开出错" xml:space="preserve">
|
||||
<value>Ошибка открытия</value>
|
||||
</data>
|
||||
<data name="提示信息" xml:space="preserve">
|
||||
<value>Совет</value>
|
||||
</data>
|
||||
<data name="文件内不是含有64个块数据_可能不完整或不兼容" xml:space="preserve">
|
||||
<value>Файл не содержит 64 блока данных и может быть неполным или несовместимым.</value>
|
||||
</data>
|
||||
<data name="无密钥" xml:space="preserve">
|
||||
<value>Нет ключа</value>
|
||||
</data>
|
||||
<data name="无法找到MFF08程序文件_操作终止" xml:space="preserve">
|
||||
<value>Не удалось найти программный файл MFF08.
|
||||
Операция прекращена.</value>
|
||||
</data>
|
||||
<data name="显示扇区" xml:space="preserve">
|
||||
<value>Показать сектор </value>
|
||||
</data>
|
||||
<data name="有任务运行中_不可执行" xml:space="preserve">
|
||||
<value>Операция не может быть выполнена, так как сейчас выполняется другая операция.</value>
|
||||
</data>
|
||||
<data name="未知" xml:space="preserve">
|
||||
<value>неизвестно</value>
|
||||
</data>
|
||||
<data name="未选择有效key_mfd" xml:space="preserve">
|
||||
<value>Действительный key.mfd не был выбран.</value>
|
||||
</data>
|
||||
<data name="本地版本" xml:space="preserve">
|
||||
<value>Версия - </value>
|
||||
</data>
|
||||
<data name="标准" xml:space="preserve">
|
||||
<value>Китайский</value>
|
||||
</data>
|
||||
<data name="正在使用智能KeyABN" xml:space="preserve">
|
||||
<value>Использование файла ключей...</value>
|
||||
</data>
|
||||
<data name="正在打开ACR122U支持" xml:space="preserve">
|
||||
<value>Включена поддержка ACR122U...</value>
|
||||
</data>
|
||||
<data name="正在检索是否存在key_mfd" xml:space="preserve">
|
||||
<value>Поиск key.mfd ...</value>
|
||||
</data>
|
||||
<data name="没有发现任何有效的NFC设备" xml:space="preserve">
|
||||
<value>Не было обнаружено никаких активных устройств NFC.</value>
|
||||
</data>
|
||||
<data name="秒" xml:space="preserve">
|
||||
<value> с.</value>
|
||||
</data>
|
||||
<data name="空闲" xml:space="preserve">
|
||||
<value>Ожидание операции</value>
|
||||
</data>
|
||||
<data name="终端内容已保存至m1t_log文件" xml:space="preserve">
|
||||
<value>Содержимое терминала сохранено в файле m1t.log</value>
|
||||
</data>
|
||||
<data name="设备串口" xml:space="preserve">
|
||||
<value>Последовательный порт устройства:</value>
|
||||
</data>
|
||||
<data name="设备忙" xml:space="preserve">
|
||||
<value>Устройство занято</value>
|
||||
</data>
|
||||
<data name="设置错误_请修改" xml:space="preserve">
|
||||
<value>Неверная настройка, пожалуйста, измените ее.</value>
|
||||
</data>
|
||||
<data name="识别了以下设备" xml:space="preserve">
|
||||
<value>Определены следующие устройства:</value>
|
||||
</data>
|
||||
<data name="该扇区UID校验值错误_已经自动为您更正" xml:space="preserve">
|
||||
<value>Ошибка проверки UID сектора была автоматически исправлена для вас.</value>
|
||||
</data>
|
||||
<data name="该扇区UID校验值错误_已自动更正" xml:space="preserve">
|
||||
<value>Значение проверки UID сектора неверно и было автоматически исправлено.
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区UID校验值错误_请点击打开扇区0来自动更正" xml:space="preserve">
|
||||
<value>Ошибка проверки UID сектора, нажмите, чтобы открыть сектор 0 для автоматического исправления.</value>
|
||||
</data>
|
||||
<data name="该扇区一切正常" xml:space="preserve">
|
||||
<value>В этом секторе все в порядке.</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位损坏_写入将会损坏卡片_已重新设置" xml:space="preserve">
|
||||
<value>Бит управления доступом сектора является недопустимым, запись повредит карту и была отменена.</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位损坏_写入将会损坏卡片_请重新设置" xml:space="preserve">
|
||||
<value>Бит контроля доступа к сектору поврежден, и запись повредит карту. Пожалуйста, отмените ее.
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位无效_写入将会损坏卡片_已重新设置" xml:space="preserve">
|
||||
<value>Бит управления доступом сектора является недопустимым, запись повредит карту и была отменена.</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位无效_写入将会损坏卡片_请重新设置" xml:space="preserve">
|
||||
<value>Недопустимый бит контроля доступа к сектору. Запись повредит карту. Пожалуйста, отмените ее.
|
||||
</value>
|
||||
</data>
|
||||
<data name="该操作将会清空UID卡内全部数据_清空后不可恢复_请确认是否" xml:space="preserve">
|
||||
<value>Это удалит все данные в UID карты!
|
||||
Восстановление после форматирования невозможно! Пожалуйста, подтвердите, если вы хотите продолжить?</value>
|
||||
</data>
|
||||
<data name="该操作将会锁死UFUID卡片_锁死后不可恢复_无法再次更改0" xml:space="preserve">
|
||||
<value>Это заблокирует карту UFUID!
|
||||
Восстановление после блокировки будет невозможно! Изменить 0-ой блок будет невозможно! Пожалуйста, подтвердите, если вы хотите продолжить?</value>
|
||||
</data>
|
||||
<data name="该文件一切正常" xml:space="preserve">
|
||||
<value>С файлом все нормально.</value>
|
||||
</data>
|
||||
<data name="该文件存在以下错误" xml:space="preserve">
|
||||
<value>Файл имеет следующую ошибку:
|
||||
</value>
|
||||
</data>
|
||||
<data name="请检查接线是否正确_驱动是否正常安装_设备电源是否已经打开_" xml:space="preserve">
|
||||
<value>Пожалуйста, проверьте правильность подключения/правильно ли установлен драйвер/питание устройства включено (для моделей с выключателем питания).</value>
|
||||
</data>
|
||||
<data name="请输入UID号" xml:space="preserve">
|
||||
<value>Пожалуйста, введите номер UID</value>
|
||||
</data>
|
||||
<data name="请输入已知Key" xml:space="preserve">
|
||||
<value>Пожалуйста, введите известные ключи</value>
|
||||
</data>
|
||||
<data name="请输入已知的Key_以英文半角逗号分隔" xml:space="preserve">
|
||||
<value>Пожалуйста, введите известные ключи, разделяя их запятой.</value>
|
||||
</data>
|
||||
<data name="请输入需要写入的UID卡号_共8位十六进制数_如E44A3B" xml:space="preserve">
|
||||
<value>Пожалуйста, введите номер карты UID для записи, всего 8 шестнадцатеричных чисел, например, E44A3BF1.</value>
|
||||
</data>
|
||||
<data name="请输入需要更改的UID卡号_共8位十六进制数_如E44A3B" xml:space="preserve">
|
||||
<value>Пожалуйста, введите номер UID для изменения, всего 8 шестнадцатеричных чисел, например E44A3BF1.</value>
|
||||
</data>
|
||||
<data name="请选择MCT_txt文件保存位置及文件名" xml:space="preserve">
|
||||
<value>Пожалуйста, выберите для MCT.txt расположение и имя файла</value>
|
||||
</data>
|
||||
<data name="请选择MFD文件保存位置及文件名" xml:space="preserve">
|
||||
<value>Пожалуйста, выберите место сохранения файла MFD и имя файла</value>
|
||||
</data>
|
||||
<data name="请选择一个包含目标卡密钥的MFD文件_通常是已经破解出的该卡" xml:space="preserve">
|
||||
<value>Выберите файл MFD, содержащий ключ карты (обычно это файл MFD карты, которая была взломана)</value>
|
||||
</data>
|
||||
<data name="请选择密钥字典文件保存位置及文件名" xml:space="preserve">
|
||||
<value>Выберите расположение и имя файла словаря ключей</value>
|
||||
</data>
|
||||
<data name="请选择最后一次写卡导致0块损坏的卡数据文件" xml:space="preserve">
|
||||
<value>Пожалуйста, выберите файл данных карты, который вызвал повреждение последней 0 карты.</value>
|
||||
</data>
|
||||
<data name="请选择需要写入的MFD文件" xml:space="preserve">
|
||||
<value>Пожалуйста, выберите файл MFD для записи</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MCT格式文件" xml:space="preserve">
|
||||
<value>Пожалуйста, выберите файл формата MCT, который вы хотите открыть.</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MFD文件" xml:space="preserve">
|
||||
<value>Пожалуйста, выберите файл MFD, который вы хотите открыть.</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MFD文件_比较A" xml:space="preserve">
|
||||
<value>Пожалуйста, выберите файл MFD, который вы хотите открыть (сравнить A)</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MFD文件_比较B" xml:space="preserve">
|
||||
<value>Пожалуйста, выберите файл MFD, который вы хотите открыть (сравнит B)</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的密钥字典文件" xml:space="preserve">
|
||||
<value>Пожалуйста, выберите файл словаря ключей, который вы хотите открыть.</value>
|
||||
</data>
|
||||
<data name="输入的UID号不合法" xml:space="preserve">
|
||||
<value>Введенный номер UID недействителен.</value>
|
||||
</data>
|
||||
<data name="运行中" xml:space="preserve">
|
||||
<value>Операция выполняется</value>
|
||||
</data>
|
||||
<data name="运行时间" xml:space="preserve">
|
||||
<value>Время выполнения: </value>
|
||||
</data>
|
||||
<data name="选择key_mfd" xml:space="preserve">
|
||||
<value>Выбрать файл ключей</value>
|
||||
</data>
|
||||
<data name="错误" xml:space="preserve">
|
||||
<value>Ошибка</value>
|
||||
</data>
|
||||
</root>
|
||||
604
MifareOneTool/Properties/Resources.zh.resx
Normal file
@ -0,0 +1,604 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<data name="_0_9A_Fa_f_32" xml:space="preserve">
|
||||
<value>[0-9A-Fa-f]{32}</value>
|
||||
</data>
|
||||
<data name="_false" xml:space="preserve">
|
||||
<value>false</value>
|
||||
</data>
|
||||
<data name="_mfd" xml:space="preserve">
|
||||
<value>.mfd</value>
|
||||
</data>
|
||||
<data name="_Nonce收集完毕" xml:space="preserve">
|
||||
<value>##Nonce收集完毕##</value>
|
||||
</data>
|
||||
<data name="_Sector" xml:space="preserve">
|
||||
<value>+Sector: </value>
|
||||
</data>
|
||||
<data name="_true" xml:space="preserve">
|
||||
<value>true</value>
|
||||
</data>
|
||||
<data name="_个块不同" xml:space="preserve">
|
||||
<value> 个块不同
|
||||
</value>
|
||||
</data>
|
||||
<data name="_已保存" xml:space="preserve">
|
||||
<value>##已保存-</value>
|
||||
</data>
|
||||
<data name="_已自动保存" xml:space="preserve">
|
||||
<value>##已自动保存-</value>
|
||||
</data>
|
||||
<data name="_扇区" xml:space="preserve">
|
||||
<value>#扇区 </value>
|
||||
</data>
|
||||
<data name="_文件中的值错误" xml:space="preserve">
|
||||
<value>##文件中的值错误##</value>
|
||||
</data>
|
||||
<data name="_有数据" xml:space="preserve">
|
||||
<value> 有数据</value>
|
||||
</data>
|
||||
<data name="_有错误" xml:space="preserve">
|
||||
<value> 有错误</value>
|
||||
</data>
|
||||
<data name="_未保存" xml:space="preserve">
|
||||
<value>##未保存##</value>
|
||||
</data>
|
||||
<data name="_程序已被强制停止" xml:space="preserve">
|
||||
<value>##程序已被强制停止##</value>
|
||||
</data>
|
||||
<data name="_空扇区" xml:space="preserve">
|
||||
<value> 空扇区</value>
|
||||
</data>
|
||||
<data name="_缓存文件异常" xml:space="preserve">
|
||||
<value>##缓存文件异常##</value>
|
||||
</data>
|
||||
<data name="_计算得到BCC" xml:space="preserve">
|
||||
<value>,计算得到BCC=</value>
|
||||
</data>
|
||||
<data name="_软件版本" xml:space="preserve">
|
||||
<value>#软件版本 </value>
|
||||
</data>
|
||||
<data name="_运行出错" xml:space="preserve">
|
||||
<value>##运行出错##</value>
|
||||
</data>
|
||||
<data name="_运行完毕" xml:space="preserve">
|
||||
<value>##运行完毕##</value>
|
||||
</data>
|
||||
<data name="AB文件中一个或两个无效" xml:space="preserve">
|
||||
<value>AB文件中一个或两个无效。</value>
|
||||
</data>
|
||||
<data name="ACR122U支持已经打开过" xml:space="preserve">
|
||||
<value>ACR122U支持已经打开过。</value>
|
||||
</data>
|
||||
<data name="allow_autoscan" xml:space="preserve">
|
||||
<value>allow_autoscan = </value>
|
||||
</data>
|
||||
<data name="allow_intrusive_scan" xml:space="preserve">
|
||||
<value>allow_intrusive_scan = </value>
|
||||
</data>
|
||||
<data name="device_connstring" xml:space="preserve">
|
||||
<value>device.connstring = "</value>
|
||||
</data>
|
||||
<data name="device_name_NFC_Device" xml:space="preserve">
|
||||
<value>device.name = "NFC-Device"
|
||||
</value>
|
||||
</data>
|
||||
<data name="DUMP文件_dump_MFD文件_mfd" xml:space="preserve">
|
||||
<value>DUMP文件|*.dump|MFD文件|*.mfd</value>
|
||||
</data>
|
||||
<data name="Information" xml:space="preserve">
|
||||
<value>Information</value>
|
||||
</data>
|
||||
<data name="InputError" xml:space="preserve">
|
||||
<value>InputError</value>
|
||||
</data>
|
||||
<data name="KeyA_B_N" xml:space="preserve">
|
||||
<value>KeyA/B/N</value>
|
||||
</data>
|
||||
<data name="libnfc_conf" xml:space="preserve">
|
||||
<value>libnfc.conf</value>
|
||||
</data>
|
||||
<data name="MCT格式" xml:space="preserve">
|
||||
<value>MCT格式|*.*</value>
|
||||
</data>
|
||||
<data name="MFD文件_mfd_dump" xml:space="preserve">
|
||||
<value>MFD文件|*.mfd;*.dump</value>
|
||||
</data>
|
||||
<data name="MFD文件_mfd_DUMP文件_dump" xml:space="preserve">
|
||||
<value>MFD文件|*.mfd|DUMP文件|*.dump</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool" xml:space="preserve">
|
||||
<value>MifareOne Tool</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_已取消" xml:space="preserve">
|
||||
<value>MifareOne Tool - отменено</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_已终止" xml:space="preserve">
|
||||
<value>MifareOne Tool - 已终止</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_运行中" xml:space="preserve">
|
||||
<value>MifareOne Tool - 运行中</value>
|
||||
</data>
|
||||
<data name="MifareOne_Tool_运行完毕" xml:space="preserve">
|
||||
<value>MifareOne Tool - 运行完毕</value>
|
||||
</data>
|
||||
<data name="res" xml:space="preserve">
|
||||
<value>。</value>
|
||||
</data>
|
||||
<data name="res0" xml:space="preserve">
|
||||
<value>
|
||||
</value>
|
||||
</data>
|
||||
<data name="res1" xml:space="preserve">
|
||||
<value>%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%</value>
|
||||
</data>
|
||||
<data name="res2" xml:space="preserve">
|
||||
<value>-- </value>
|
||||
</data>
|
||||
<data name="res3" xml:space="preserve">
|
||||
<value>## </value>
|
||||
</data>
|
||||
<data name="res4" xml:space="preserve">
|
||||
<value>:
|
||||
</value>
|
||||
</data>
|
||||
<data name="txt文件_txt" xml:space="preserve">
|
||||
<value>txt文件|*.txt</value>
|
||||
</data>
|
||||
<data name="UID已改为" xml:space="preserve">
|
||||
<value>UID已改为</value>
|
||||
</data>
|
||||
<data name="不恰当的4字节UID长度" xml:space="preserve">
|
||||
<value>不恰当的4字节UID长度</value>
|
||||
</data>
|
||||
<data name="使用KeyA_是_或KeyB_否" xml:space="preserve">
|
||||
<value>使用KeyA(是)或KeyB(否)?</value>
|
||||
</data>
|
||||
<data name="使用KeyA_是_或KeyB_否_还是不使用_用于全新白卡_" xml:space="preserve">
|
||||
<value>使用KeyA(是)或KeyB(否),还是不使用(用于全新白卡)(取消)?</value>
|
||||
</data>
|
||||
<data name="俄语" xml:space="preserve">
|
||||
<value>俄语</value>
|
||||
</data>
|
||||
<data name="共找到" xml:space="preserve">
|
||||
<value>共找到 </value>
|
||||
</data>
|
||||
<data name="写入出错" xml:space="preserve">
|
||||
<value>写入出错</value>
|
||||
</data>
|
||||
<data name="加载的S50卡文件大小异常" xml:space="preserve">
|
||||
<value>加载的S50卡文件大小异常。</value>
|
||||
</data>
|
||||
<data name="加载的文件不存在" xml:space="preserve">
|
||||
<value>加载的文件不存在。</value>
|
||||
</data>
|
||||
<data name="危险操作警告" xml:space="preserve">
|
||||
<value>危险操作警告</value>
|
||||
</data>
|
||||
<data name="同时打开ACR122U支持可能会引起操作速度下降_请确认是否" xml:space="preserve">
|
||||
<value>同时打开ACR122U支持可能会引起操作速度下降。
|
||||
请确认是否要继续操作?</value>
|
||||
</data>
|
||||
<data name="字典文件_dic" xml:space="preserve">
|
||||
<value>字典文件|*.dic</value>
|
||||
</data>
|
||||
<data name="密钥字典文件_dic" xml:space="preserve">
|
||||
<value>密钥字典文件|*.dic</value>
|
||||
</data>
|
||||
<data name="将自动选择首个设备" xml:space="preserve">
|
||||
<value>将自动选择首个设备:</value>
|
||||
</data>
|
||||
<data name="将要写入的文件存在错误_请用高级模式中的Hex工具打开查看" xml:space="preserve">
|
||||
<value>将要写入的文件存在错误,请用高级模式中的Hex工具打开查看。</value>
|
||||
</data>
|
||||
<data name="已保存到" xml:space="preserve">
|
||||
<value>已保存到</value>
|
||||
</data>
|
||||
<data name="已启用CUID空卡写入补丁" xml:space="preserve">
|
||||
<value>已启用CUID空卡写入补丁</value>
|
||||
</data>
|
||||
<data name="已导出MCT文件" xml:space="preserve">
|
||||
<value>已导出MCT文件</value>
|
||||
</data>
|
||||
<data name="已导出密钥字典文件" xml:space="preserve">
|
||||
<value>已导出密钥字典文件</value>
|
||||
</data>
|
||||
<data name="已打开" xml:space="preserve">
|
||||
<value>已打开。</value>
|
||||
</data>
|
||||
<data name="已找到_K" xml:space="preserve">
|
||||
<value>已找到!K=</value>
|
||||
</data>
|
||||
<data name="已指定使用该NFC设备" xml:space="preserve">
|
||||
<value>已指定使用该NFC设备:</value>
|
||||
</data>
|
||||
<data name="已更新扇区" xml:space="preserve">
|
||||
<value>已更新扇区</value>
|
||||
</data>
|
||||
<data name="已重置并新建卡" xml:space="preserve">
|
||||
<value>已重置并新建卡。</value>
|
||||
</data>
|
||||
<data name="开始执行CUID_FUID卡片写入" xml:space="preserve">
|
||||
<value>开始执行CUID/FUID卡片写入……</value>
|
||||
</data>
|
||||
<data name="开始执行HardNested收集数据" xml:space="preserve">
|
||||
<value>开始执行HardNested收集数据……</value>
|
||||
</data>
|
||||
<data name="开始执行HardNested解密强化卡" xml:space="preserve">
|
||||
<value>开始执行HardNested解密强化卡……</value>
|
||||
</data>
|
||||
<data name="开始执行MFOC解密" xml:space="preserve">
|
||||
<value>开始执行MFOC解密……</value>
|
||||
</data>
|
||||
<data name="开始执行UFUID卡片锁定" xml:space="preserve">
|
||||
<value>开始执行UFUID卡片锁定……</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片全格" xml:space="preserve">
|
||||
<value>开始执行UID卡片全格……</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片写入" xml:space="preserve">
|
||||
<value>开始执行UID卡片写入……</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片设定卡号" xml:space="preserve">
|
||||
<value>开始执行UID卡片设定卡号……</value>
|
||||
</data>
|
||||
<data name="开始执行UID卡片读取" xml:space="preserve">
|
||||
<value>开始执行UID卡片读取……</value>
|
||||
</data>
|
||||
<data name="开始执行全加密卡片爆破" xml:space="preserve">
|
||||
<value>开始执行全加密卡片爆破……</value>
|
||||
</data>
|
||||
<data name="开始执行写入M1卡片" xml:space="preserve">
|
||||
<value>开始执行写入M1卡片……</value>
|
||||
</data>
|
||||
<data name="开始执行字典模式MFOC解密" xml:space="preserve">
|
||||
<value>开始执行字典模式MFOC解密……</value>
|
||||
</data>
|
||||
<data name="开始执行扫描卡片" xml:space="preserve">
|
||||
<value>开始执行扫描卡片……</value>
|
||||
</data>
|
||||
<data name="开始执行格式化M1卡片" xml:space="preserve">
|
||||
<value>开始执行格式化M1卡片……</value>
|
||||
</data>
|
||||
<data name="开始执行检测卡片加密" xml:space="preserve">
|
||||
<value>开始执行检测卡片加密……</value>
|
||||
</data>
|
||||
<data name="开始执行检测设备" xml:space="preserve">
|
||||
<value>开始执行检测设备……</value>
|
||||
</data>
|
||||
<data name="开始执行读取卡片" xml:space="preserve">
|
||||
<value>开始执行读取卡片……</value>
|
||||
</data>
|
||||
<data name="开始执行重置UID卡片卡号" xml:space="preserve">
|
||||
<value>开始执行重置UID卡片卡号……</value>
|
||||
</data>
|
||||
<data name="当前扇区数据仍有错误_不能执行修改" xml:space="preserve">
|
||||
<value>当前扇区数据仍有错误,不能执行修改。</value>
|
||||
</data>
|
||||
<data name="当前选定扇区" xml:space="preserve">
|
||||
<value>当前选定扇区:??</value>
|
||||
</data>
|
||||
<data name="当前选定扇区0" xml:space="preserve">
|
||||
<value>当前选定扇区:</value>
|
||||
</data>
|
||||
<data name="您可以上传到云计算服务节点进行计算" xml:space="preserve">
|
||||
<value>您可以上传到云计算服务节点进行计算。</value>
|
||||
</data>
|
||||
<data name="您已经运行了MifareOne_Tool_打开多个本程序可能" xml:space="preserve">
|
||||
<value>您已经运行了MifareOne Tool,打开多个本程序可能会造成冲突及不可预料到的错误。
|
||||
确认要继续吗?</value>
|
||||
</data>
|
||||
<data name="您正在试图重复运行" xml:space="preserve">
|
||||
<value>您正在试图重复运行</value>
|
||||
</data>
|
||||
<data name="您没有给定最后一次写卡导致0块损坏的卡数据文件来作为写卡时的" xml:space="preserve">
|
||||
<value>您没有给定最后一次写卡导致0块损坏的卡数据文件来作为写卡时的密钥源。
|
||||
操作终止。</value>
|
||||
</data>
|
||||
<data name="扇区" xml:space="preserve">
|
||||
<value>扇区</value>
|
||||
</data>
|
||||
<data name="扇区0" xml:space="preserve">
|
||||
<value>扇区 </value>
|
||||
</data>
|
||||
<data name="打开了" xml:space="preserve">
|
||||
<value>打开了</value>
|
||||
</data>
|
||||
<data name="打开出错" xml:space="preserve">
|
||||
<value>打开出错</value>
|
||||
</data>
|
||||
<data name="提示信息" xml:space="preserve">
|
||||
<value>提示信息</value>
|
||||
</data>
|
||||
<data name="文件内不是含有64个块数据_可能不完整或不兼容" xml:space="preserve">
|
||||
<value>文件内不是含有64个块数据,可能不完整或不兼容。</value>
|
||||
</data>
|
||||
<data name="无密钥" xml:space="preserve">
|
||||
<value>无密钥</value>
|
||||
</data>
|
||||
<data name="无法找到MFF08程序文件_操作终止" xml:space="preserve">
|
||||
<value>无法找到MFF08程序文件。
|
||||
操作终止。</value>
|
||||
</data>
|
||||
<data name="显示扇区" xml:space="preserve">
|
||||
<value>显示扇区</value>
|
||||
</data>
|
||||
<data name="有任务运行中_不可执行" xml:space="preserve">
|
||||
<value>有任务运行中,不可执行。</value>
|
||||
</data>
|
||||
<data name="未知" xml:space="preserve">
|
||||
<value>未知</value>
|
||||
</data>
|
||||
<data name="未选择有效key_mfd" xml:space="preserve">
|
||||
<value>未选择有效key.mfd。</value>
|
||||
</data>
|
||||
<data name="本地版本" xml:space="preserve">
|
||||
<value>本地版本 </value>
|
||||
</data>
|
||||
<data name="标准" xml:space="preserve">
|
||||
<value>标准</value>
|
||||
</data>
|
||||
<data name="正在使用智能KeyABN" xml:space="preserve">
|
||||
<value>正在使用智能KeyABN…</value>
|
||||
</data>
|
||||
<data name="正在打开ACR122U支持" xml:space="preserve">
|
||||
<value>正在打开ACR122U支持……</value>
|
||||
</data>
|
||||
<data name="正在检索是否存在key_mfd" xml:space="preserve">
|
||||
<value>正在检索是否存在key.mfd…</value>
|
||||
</data>
|
||||
<data name="没有发现任何有效的NFC设备" xml:space="preserve">
|
||||
<value>没有发现任何有效的NFC设备。</value>
|
||||
</data>
|
||||
<data name="秒" xml:space="preserve">
|
||||
<value>秒</value>
|
||||
</data>
|
||||
<data name="空闲" xml:space="preserve">
|
||||
<value>空闲</value>
|
||||
</data>
|
||||
<data name="终端内容已保存至m1t_log文件" xml:space="preserve">
|
||||
<value>终端内容已保存至m1t.log文件</value>
|
||||
</data>
|
||||
<data name="设备串口" xml:space="preserve">
|
||||
<value>设备串口:</value>
|
||||
</data>
|
||||
<data name="设备忙" xml:space="preserve">
|
||||
<value>设备忙</value>
|
||||
</data>
|
||||
<data name="设置错误_请修改" xml:space="preserve">
|
||||
<value>设置错误,请修改。</value>
|
||||
</data>
|
||||
<data name="识别了以下设备" xml:space="preserve">
|
||||
<value>识别了以下设备:</value>
|
||||
</data>
|
||||
<data name="该扇区UID校验值错误_已经自动为您更正" xml:space="preserve">
|
||||
<value>该扇区UID校验值错误,已经自动为您更正。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区UID校验值错误_已自动更正" xml:space="preserve">
|
||||
<value>该扇区UID校验值错误,已自动更正。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区UID校验值错误_请点击打开扇区0来自动更正" xml:space="preserve">
|
||||
<value>该扇区UID校验值错误,请点击打开扇区0来自动更正。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区一切正常" xml:space="preserve">
|
||||
<value>该扇区一切正常。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位损坏_写入将会损坏卡片_已重新设置" xml:space="preserve">
|
||||
<value>该扇区访问控制位损坏,写入将会损坏卡片,已重新设置。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位损坏_写入将会损坏卡片_请重新设置" xml:space="preserve">
|
||||
<value>该扇区访问控制位损坏,写入将会损坏卡片,请重新设置。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位无效_写入将会损坏卡片_已重新设置" xml:space="preserve">
|
||||
<value>该扇区访问控制位无效,写入将会损坏卡片,已重新设置。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该扇区访问控制位无效_写入将会损坏卡片_请重新设置" xml:space="preserve">
|
||||
<value>该扇区访问控制位无效,写入将会损坏卡片,请重新设置。
|
||||
</value>
|
||||
</data>
|
||||
<data name="该操作将会清空UID卡内全部数据_清空后不可恢复_请确认是否" xml:space="preserve">
|
||||
<value>该操作将会清空UID卡内全部数据!!!
|
||||
清空后不可恢复!请确认是否要继续操作?</value>
|
||||
</data>
|
||||
<data name="该操作将会锁死UFUID卡片_锁死后不可恢复_无法再次更改0" xml:space="preserve">
|
||||
<value>该操作将会锁死UFUID卡片!!!
|
||||
锁死后不可恢复!无法再次更改0块!请确认是否要继续操作?</value>
|
||||
</data>
|
||||
<data name="该文件一切正常" xml:space="preserve">
|
||||
<value>该文件一切正常。</value>
|
||||
</data>
|
||||
<data name="该文件存在以下错误" xml:space="preserve">
|
||||
<value>该文件存在以下错误:
|
||||
</value>
|
||||
</data>
|
||||
<data name="请检查接线是否正确_驱动是否正常安装_设备电源是否已经打开_" xml:space="preserve">
|
||||
<value>请检查接线是否正确/驱动是否正常安装/设备电源是否已经打开(对于具有电源开关的型号)。</value>
|
||||
</data>
|
||||
<data name="请输入UID号" xml:space="preserve">
|
||||
<value>请输入UID号</value>
|
||||
</data>
|
||||
<data name="请输入已知Key" xml:space="preserve">
|
||||
<value>请输入已知Key</value>
|
||||
</data>
|
||||
<data name="请输入已知的Key_以英文半角逗号分隔" xml:space="preserve">
|
||||
<value>请输入已知的Key,以英文半角逗号分隔。</value>
|
||||
</data>
|
||||
<data name="请输入需要写入的UID卡号_共8位十六进制数_如E44A3B" xml:space="preserve">
|
||||
<value>请输入需要写入的UID卡号,共8位十六进制数,如E44A3BF1。</value>
|
||||
</data>
|
||||
<data name="请输入需要更改的UID卡号_共8位十六进制数_如E44A3B" xml:space="preserve">
|
||||
<value>请输入需要更改的UID卡号,共8位十六进制数,如E44A3BF1。</value>
|
||||
</data>
|
||||
<data name="请选择MCT_txt文件保存位置及文件名" xml:space="preserve">
|
||||
<value>请选择MCT.txt文件保存位置及文件名</value>
|
||||
</data>
|
||||
<data name="请选择MFD文件保存位置及文件名" xml:space="preserve">
|
||||
<value>请选择MFD文件保存位置及文件名</value>
|
||||
</data>
|
||||
<data name="请选择一个包含目标卡密钥的MFD文件_通常是已经破解出的该卡" xml:space="preserve">
|
||||
<value>请选择一个包含目标卡密钥的MFD文件(通常是已经破解出的该卡的MFD文件)</value>
|
||||
</data>
|
||||
<data name="请选择密钥字典文件保存位置及文件名" xml:space="preserve">
|
||||
<value>请选择密钥字典文件保存位置及文件名</value>
|
||||
</data>
|
||||
<data name="请选择最后一次写卡导致0块损坏的卡数据文件" xml:space="preserve">
|
||||
<value>请选择最后一次写卡导致0块损坏的卡数据文件</value>
|
||||
</data>
|
||||
<data name="请选择需要写入的MFD文件" xml:space="preserve">
|
||||
<value>请选择需要写入的MFD文件</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MCT格式文件" xml:space="preserve">
|
||||
<value>请选择需要打开的MCT格式文件</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MFD文件" xml:space="preserve">
|
||||
<value>请选择需要打开的MFD文件</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MFD文件_比较A" xml:space="preserve">
|
||||
<value>请选择需要打开的MFD文件(比较A)</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的MFD文件_比较B" xml:space="preserve">
|
||||
<value>请选择需要打开的MFD文件(比较B)</value>
|
||||
</data>
|
||||
<data name="请选择需要打开的密钥字典文件" xml:space="preserve">
|
||||
<value>请选择需要打开的密钥字典文件</value>
|
||||
</data>
|
||||
<data name="输入的UID号不合法" xml:space="preserve">
|
||||
<value>输入的UID号不合法</value>
|
||||
</data>
|
||||
<data name="运行中" xml:space="preserve">
|
||||
<value>运行中</value>
|
||||
</data>
|
||||
<data name="运行时间" xml:space="preserve">
|
||||
<value>运行时间:</value>
|
||||
</data>
|
||||
<data name="选择key_mfd" xml:space="preserve">
|
||||
<value>选择key.mfd</value>
|
||||
</data>
|
||||
<data name="错误" xml:space="preserve">
|
||||
<value>错误</value>
|
||||
</data>
|
||||
</root>
|
||||
22
MifareOneTool/Properties/Settings.Designer.cs
generated
@ -1,10 +1,10 @@
|
||||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// 此代码由工具生成。
|
||||
// 运行时版本:4.0.30319.42000
|
||||
// Этот код создан программой.
|
||||
// Исполняемая версия:4.0.30319.42000
|
||||
//
|
||||
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
// 重新生成代码,这些更改将会丢失。
|
||||
// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
|
||||
// повторной генерации кода.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
@ -12,7 +12,7 @@ namespace MifareOneTool.Properties {
|
||||
|
||||
|
||||
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")]
|
||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.0.0.0")]
|
||||
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
|
||||
|
||||
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
|
||||
@ -175,5 +175,17 @@ namespace MifareOneTool.Properties {
|
||||
this["CuidKeyOver"] = value;
|
||||
}
|
||||
}
|
||||
|
||||
[global::System.Configuration.UserScopedSettingAttribute()]
|
||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||
[global::System.Configuration.DefaultSettingValueAttribute("")]
|
||||
public string Language {
|
||||
get {
|
||||
return ((string)(this["Language"]));
|
||||
}
|
||||
set {
|
||||
this["Language"] = value;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -41,5 +41,8 @@
|
||||
<Setting Name="CuidKeyOver" Type="System.Boolean" Scope="User">
|
||||
<Value Profile="(Default)">True</Value>
|
||||
</Setting>
|
||||
<Setting Name="Language" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
</Settings>
|
||||
</SettingsFile>
|
||||
BIN
MifareOneTool/Resources/outline_info_black_18pt_1x.png
Normal file
|
After Width: | Height: | Size: 247 B |
BIN
MifareOneTool/Resources/round_chevron_right_black_24dp.png
Normal file
|
After Width: | Height: | Size: 146 B |
BIN
MifareOneTool/Resources/round_clear_black_24dp.png
Normal file
|
After Width: | Height: | Size: 200 B |
BIN
MifareOneTool/Resources/round_done_all_black_18pt_1x.png
Normal file
|
After Width: | Height: | Size: 191 B |
BIN
MifareOneTool/Resources/round_done_all_black_18pt_2x.png
Normal file
|
After Width: | Height: | Size: 309 B |
BIN
MifareOneTool/Resources/round_done_all_black_24dp.png
Normal file
|
After Width: | Height: | Size: 255 B |
BIN
MifareOneTool/Resources/round_done_all_black_24pt_1x.png
Normal file
|
After Width: | Height: | Size: 255 B |
BIN
MifareOneTool/Resources/round_done_all_black_36dp.png
Normal file
|
After Width: | Height: | Size: 309 B |
BIN
MifareOneTool/Resources/round_done_all_black_36pt_1x.png
Normal file
|
After Width: | Height: | Size: 309 B |
BIN
MifareOneTool/Resources/round_done_black_24pt_1x.png
Normal file
|
After Width: | Height: | Size: 162 B |
BIN
MifareOneTool/Resources/round_done_black_48pt_1x.png
Normal file
|
After Width: | Height: | Size: 248 B |
BIN
MifareOneTool/Resources/round_done_outline_black_24pt_1x.png
Normal file
|
After Width: | Height: | Size: 273 B |
BIN
MifareOneTool/Resources/round_info_black_18pt_1x.png
Normal file
|
After Width: | Height: | Size: 207 B |
BIN
MifareOneTool/Resources/round_repeat_black_24pt_2x.ico
Normal file
|
After Width: | Height: | Size: 9.4 KiB |
BIN
MifareOneTool/Resources/round_sync_black_18pt_1x.png
Normal file
|
After Width: | Height: | Size: 214 B |
BIN
MifareOneTool/Resources/round_timer_black_18pt_1x.png
Normal file
|
After Width: | Height: | Size: 278 B |
BIN
MifareOneTool/Resources/round_update_black_18pt_1x.png
Normal file
|
After Width: | Height: | Size: 271 B |
BIN
MifareOneTool/Resources/round_update_black_24pt_1x.png
Normal file
|
After Width: | Height: | Size: 328 B |
286
MifareOneTool/SelectLanguage.cs
Normal file
@ -0,0 +1,286 @@
|
||||
using MultiLang;
|
||||
using System;
|
||||
using System.Drawing;
|
||||
using System.Collections;
|
||||
using System.ComponentModel;
|
||||
using System.Windows.Forms;
|
||||
using System.Reflection;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.IO.IsolatedStorage;
|
||||
using System.Threading;
|
||||
using System.Text;
|
||||
using System.Xml;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace MultiLang
|
||||
{
|
||||
public partial class SelectLanguage : Form
|
||||
{
|
||||
public SelectLanguage()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
//----------------------------------------------
|
||||
//Enums
|
||||
//----------------------------------------------
|
||||
public enum enumStartupMode
|
||||
{
|
||||
UseDefaultCulture = 0,
|
||||
UseSavedCulture = 1,
|
||||
ShowDialog = 2
|
||||
}
|
||||
|
||||
private enum enumCultureMatch
|
||||
{
|
||||
None = 0,
|
||||
Language = 1,
|
||||
Neutral = 2,
|
||||
Region = 3
|
||||
}
|
||||
|
||||
//----------------------------------------------
|
||||
//Member Variables
|
||||
//----------------------------------------------
|
||||
private enumStartupMode StartupMode;
|
||||
private CultureInfo SelectedCulture;
|
||||
|
||||
// The array of supported cultures is updated automatically by Multi-Language for Visual Studio
|
||||
private static string[] SupportedCultures = { "ru", "zh" } ; //MLHIDE
|
||||
|
||||
//----------------------------------------------
|
||||
//Public Methods
|
||||
//----------------------------------------------
|
||||
public void LoadSettingsAndShow()
|
||||
{
|
||||
LoadSettingsAndShow(false);
|
||||
}
|
||||
|
||||
public void LoadSettingsAndShow(Boolean ForceShow)
|
||||
{
|
||||
LoadSettings();
|
||||
|
||||
if (ForceShow || (StartupMode == enumStartupMode.ShowDialog))
|
||||
{
|
||||
this.ShowDialog();
|
||||
|
||||
if (lstCultures.SelectedItem != null)
|
||||
{
|
||||
SelectedCulture = (CultureInfo)lstCultures.SelectedItem;
|
||||
}
|
||||
|
||||
SaveSettings();
|
||||
}
|
||||
|
||||
if (StartupMode != enumStartupMode.UseDefaultCulture)
|
||||
{
|
||||
if (SelectedCulture != null)
|
||||
{
|
||||
// Actually change the culture of the current thread.
|
||||
Thread.CurrentThread.CurrentUICulture = SelectedCulture;
|
||||
|
||||
if (ForceShow)
|
||||
{
|
||||
#if true
|
||||
// The code generated by VS.NET cannot be used to change the
|
||||
// language of an active form. Show a message to this effect.
|
||||
MessageBox.Show("The settings have been saved.\n" +
|
||||
"The language change will take full effect the next time you start the program.",
|
||||
"Select language",
|
||||
MessageBoxButtons.OK);
|
||||
#else
|
||||
MLRuntime.MLRuntime.BroadcastLanguageChanged() ;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//----------------------------------------------
|
||||
//Private Methods
|
||||
//----------------------------------------------
|
||||
|
||||
//
|
||||
// SaveSettings and LoadSettings use an XML file, saved in so called
|
||||
// Isolated Storage.
|
||||
//
|
||||
// I'm not convinced that this is really the best way or the best place
|
||||
// to store this information, but it's certainly a .NET way to do it.
|
||||
//
|
||||
private void LoadSettings()
|
||||
{
|
||||
// Set the defaults
|
||||
StartupMode = enumStartupMode.ShowDialog;
|
||||
SelectedCulture = Thread.CurrentThread.CurrentUICulture;
|
||||
|
||||
// Create an IsolatedStorageFile object and get the store
|
||||
// for this application.
|
||||
IsolatedStorageFile isoStorage = IsolatedStorageFile.GetUserStoreForDomain();
|
||||
|
||||
// Check whether the file exists
|
||||
if (isoStorage.GetFileNames("CultureSettings.xml").Length > 0) //MLHIDE
|
||||
{
|
||||
// Create isoStorage StreamReader.
|
||||
StreamReader stmReader = new StreamReader
|
||||
(new IsolatedStorageFileStream
|
||||
("CultureSettings.xml",
|
||||
FileMode.Open,
|
||||
isoStorage)); //MLHIDE
|
||||
|
||||
XmlTextReader xmlReader = new XmlTextReader(stmReader);
|
||||
|
||||
// Loop through the XML file until all Nodes have been read and processed.
|
||||
while (xmlReader.Read())
|
||||
{
|
||||
switch (xmlReader.Name)
|
||||
{
|
||||
case "StartupMode": //MLHIDE
|
||||
StartupMode = (enumStartupMode)int.Parse(xmlReader.ReadString());
|
||||
break;
|
||||
case "Culture": //MLHIDE
|
||||
String CultName = xmlReader.ReadString();
|
||||
CultureInfo CultInfo = new CultureInfo(CultName);
|
||||
SelectedCulture = CultInfo;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Close the reader
|
||||
xmlReader.Close();
|
||||
stmReader.Close();
|
||||
|
||||
}
|
||||
|
||||
isoStorage.Close();
|
||||
|
||||
}
|
||||
|
||||
private void SaveSettings()
|
||||
{
|
||||
|
||||
// Get an isolated store for user, domain, and assembly and put it into
|
||||
// an IsolatedStorageFile object.
|
||||
IsolatedStorageFile isoStorage = IsolatedStorageFile.GetUserStoreForDomain();
|
||||
|
||||
// Create isoStorage StreamWriter and assign it to an XmlTextWriter variable.
|
||||
IsolatedStorageFileStream stmWriter = new IsolatedStorageFileStream("CultureSettings.xml", FileMode.Create, isoStorage); //MLHIDE
|
||||
XmlTextWriter writer = new XmlTextWriter(stmWriter, Encoding.UTF8);
|
||||
|
||||
writer.Formatting = Formatting.Indented;
|
||||
writer.WriteStartDocument();
|
||||
writer.WriteStartElement("CultureSettings"); //MLHIDE
|
||||
writer.WriteStartElement("StartupMode"); //MLHIDE
|
||||
writer.WriteString(((int)StartupMode).ToString());
|
||||
writer.WriteEndElement();
|
||||
writer.WriteStartElement("Culture"); //MLHIDE
|
||||
writer.WriteString(SelectedCulture.Name);
|
||||
writer.WriteEndElement();
|
||||
writer.WriteEndElement();
|
||||
writer.Flush();
|
||||
writer.Close();
|
||||
|
||||
stmWriter.Close();
|
||||
isoStorage.Close();
|
||||
}
|
||||
|
||||
private void SelectLanguage_Load(object sender, System.EventArgs e)
|
||||
{
|
||||
enumCultureMatch Match = enumCultureMatch.None;
|
||||
enumCultureMatch NewMatch = enumCultureMatch.None;
|
||||
|
||||
// Version 1 detected which subdirectories are present.
|
||||
|
||||
// String AsmLocation = Assembly.GetExecutingAssembly ( ).Location;
|
||||
// String AsmPath = Path.GetDirectoryName ( AsmLocation );
|
||||
// List<String> DirList = new List<String> ( );
|
||||
//
|
||||
// DirList.AddRange ( Directory.GetDirectories ( AsmPath, "??" ) );
|
||||
// DirList.AddRange ( Directory.GetDirectories ( AsmPath, "??-??*" ) );
|
||||
//
|
||||
// foreach ( String SubDirName in DirList )
|
||||
// {
|
||||
// try
|
||||
// {
|
||||
// String BaseName = Path.GetFileName ( SubDirName );
|
||||
// CultureInfo Cult = new CultureInfo ( BaseName );
|
||||
|
||||
// Version 2 used the SupportedCultures array in MlString.h,
|
||||
// which is autoamatically updated by Multi-Language for Visual Studio
|
||||
// foreach ( String IetfTag in ml.SupportedCultures )
|
||||
|
||||
// Version 3 uses the SupportedCultures array in this file,
|
||||
// which is autoamatically updated by Multi-Language for Visual Studio
|
||||
foreach (String IetfTag in SupportedCultures)
|
||||
{
|
||||
try
|
||||
{
|
||||
CultureInfo Cult = new CultureInfo(IetfTag);
|
||||
|
||||
// Note: The property lstCultures.DisplayName is set to "NativeName" in order to
|
||||
// show language name in its own language.
|
||||
lstCultures.Items.Add(Cult);
|
||||
|
||||
// The rest of this logic is just to find the nearest match to the
|
||||
// current UI culture.
|
||||
// How well does this culture match?
|
||||
if (SelectedCulture.Equals(Cult))
|
||||
{
|
||||
NewMatch = enumCultureMatch.Region;
|
||||
}
|
||||
else if (Cult.TwoLetterISOLanguageName == SelectedCulture.TwoLetterISOLanguageName)
|
||||
{
|
||||
if (Cult.IsNeutralCulture)
|
||||
NewMatch = enumCultureMatch.Neutral;
|
||||
else
|
||||
NewMatch = enumCultureMatch.Language;
|
||||
}
|
||||
|
||||
// Is that better than the best match so far?
|
||||
if (NewMatch > Match)
|
||||
{
|
||||
Match = NewMatch;
|
||||
lstCultures.SelectedItem = Cult;
|
||||
}
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
switch (StartupMode)
|
||||
{
|
||||
case enumStartupMode.ShowDialog:
|
||||
rbShow.Checked = true;
|
||||
break;
|
||||
case enumStartupMode.UseDefaultCulture:
|
||||
rbDefault.Checked = true;
|
||||
break;
|
||||
case enumStartupMode.UseSavedCulture:
|
||||
rbSelected.Checked = true;
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void btOK_Click(object sender, System.EventArgs e)
|
||||
{
|
||||
if (lstCultures.SelectedItem != null)
|
||||
{
|
||||
SelectedCulture = (CultureInfo)lstCultures.SelectedItem;
|
||||
}
|
||||
this.Close();
|
||||
}
|
||||
|
||||
private void OnStartup_CheckedChanged(object sender, System.EventArgs e)
|
||||
{
|
||||
if (rbShow.Checked)
|
||||
StartupMode = enumStartupMode.ShowDialog;
|
||||
else if (rbSelected.Checked)
|
||||
StartupMode = enumStartupMode.UseSavedCulture;
|
||||
else if (rbDefault.Checked)
|
||||
StartupMode = enumStartupMode.UseDefaultCulture;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
161
MifareOneTool/SelectLanguage.designer.cs
generated
Normal file
@ -0,0 +1,161 @@
|
||||
namespace MultiLang
|
||||
{
|
||||
partial class SelectLanguage
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.rbSelected = new System.Windows.Forms.RadioButton();
|
||||
this.rbShow = new System.Windows.Forms.RadioButton();
|
||||
this.lblStartup = new System.Windows.Forms.Label();
|
||||
this.rbDefault = new System.Windows.Forms.RadioButton();
|
||||
this.lstCultures = new System.Windows.Forms.ListBox();
|
||||
this.btOK = new System.Windows.Forms.Button();
|
||||
this.Panel1 = new System.Windows.Forms.Panel();
|
||||
this.Panel1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// rbSelected
|
||||
//
|
||||
this.rbSelected.AccessibleDescription = "";
|
||||
this.rbSelected.AccessibleName = "";
|
||||
this.rbSelected.FlatStyle = System.Windows.Forms.FlatStyle.System;
|
||||
this.rbSelected.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.rbSelected.Location = new System.Drawing.Point(4, 40);
|
||||
this.rbSelected.Name = "rbSelected";
|
||||
this.rbSelected.Size = new System.Drawing.Size(209, 20);
|
||||
this.rbSelected.TabIndex = 2;
|
||||
this.rbSelected.Text = "Use the selected language";
|
||||
this.rbSelected.CheckedChanged += new System.EventHandler(this.OnStartup_CheckedChanged);
|
||||
//
|
||||
// rbShow
|
||||
//
|
||||
this.rbShow.AccessibleDescription = "";
|
||||
this.rbShow.AccessibleName = "";
|
||||
this.rbShow.Checked = true;
|
||||
this.rbShow.FlatStyle = System.Windows.Forms.FlatStyle.System;
|
||||
this.rbShow.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.rbShow.Location = new System.Drawing.Point(4, 20);
|
||||
this.rbShow.Name = "rbShow";
|
||||
this.rbShow.Size = new System.Drawing.Size(209, 20);
|
||||
this.rbShow.TabIndex = 1;
|
||||
this.rbShow.TabStop = true;
|
||||
this.rbShow.Text = "Show this form again";
|
||||
this.rbShow.CheckedChanged += new System.EventHandler(this.OnStartup_CheckedChanged);
|
||||
//
|
||||
// lblStartup
|
||||
//
|
||||
this.lblStartup.AccessibleDescription = "";
|
||||
this.lblStartup.AccessibleName = "";
|
||||
this.lblStartup.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.lblStartup.Location = new System.Drawing.Point(4, 3);
|
||||
this.lblStartup.Name = "lblStartup";
|
||||
this.lblStartup.Size = new System.Drawing.Size(209, 17);
|
||||
this.lblStartup.TabIndex = 0;
|
||||
this.lblStartup.Text = "Next time ...";
|
||||
//
|
||||
// rbDefault
|
||||
//
|
||||
this.rbDefault.AccessibleDescription = "";
|
||||
this.rbDefault.AccessibleName = "";
|
||||
this.rbDefault.FlatStyle = System.Windows.Forms.FlatStyle.System;
|
||||
this.rbDefault.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.rbDefault.Location = new System.Drawing.Point(4, 60);
|
||||
this.rbDefault.Name = "rbDefault";
|
||||
this.rbDefault.Size = new System.Drawing.Size(209, 20);
|
||||
this.rbDefault.TabIndex = 3;
|
||||
this.rbDefault.Text = "Use the default language";
|
||||
this.rbDefault.CheckedChanged += new System.EventHandler(this.OnStartup_CheckedChanged);
|
||||
//
|
||||
// lstCultures
|
||||
//
|
||||
this.lstCultures.AccessibleDescription = "";
|
||||
this.lstCultures.AccessibleName = "";
|
||||
this.lstCultures.DisplayMember = "NativeName";
|
||||
this.lstCultures.Font = new System.Drawing.Font("Arial", 9.75F);
|
||||
this.lstCultures.IntegralHeight = false;
|
||||
this.lstCultures.ItemHeight = 16;
|
||||
this.lstCultures.Location = new System.Drawing.Point(4, 4);
|
||||
this.lstCultures.Name = "lstCultures";
|
||||
this.lstCultures.Size = new System.Drawing.Size(264, 220);
|
||||
this.lstCultures.TabIndex = 7;
|
||||
this.lstCultures.DoubleClick += new System.EventHandler(this.btOK_Click);
|
||||
//
|
||||
// btOK
|
||||
//
|
||||
this.btOK.AccessibleDescription = "";
|
||||
this.btOK.AccessibleName = "";
|
||||
this.btOK.ImeMode = System.Windows.Forms.ImeMode.NoControl;
|
||||
this.btOK.Location = new System.Drawing.Point(180, 316);
|
||||
this.btOK.Name = "btOK";
|
||||
this.btOK.Size = new System.Drawing.Size(90, 32);
|
||||
this.btOK.TabIndex = 8;
|
||||
this.btOK.Text = "OK";
|
||||
this.btOK.Click += new System.EventHandler(this.btOK_Click);
|
||||
//
|
||||
// Panel1
|
||||
//
|
||||
this.Panel1.AccessibleDescription = "";
|
||||
this.Panel1.AccessibleName = "";
|
||||
this.Panel1.BackColor = System.Drawing.SystemColors.Control;
|
||||
this.Panel1.Controls.Add(this.rbDefault);
|
||||
this.Panel1.Controls.Add(this.rbSelected);
|
||||
this.Panel1.Controls.Add(this.rbShow);
|
||||
this.Panel1.Controls.Add(this.lblStartup);
|
||||
this.Panel1.Location = new System.Drawing.Point(4, 228);
|
||||
this.Panel1.Name = "Panel1";
|
||||
this.Panel1.Size = new System.Drawing.Size(264, 84);
|
||||
this.Panel1.TabIndex = 9;
|
||||
//
|
||||
// SelectLanguage
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(272, 352);
|
||||
this.Controls.Add(this.lstCultures);
|
||||
this.Controls.Add(this.btOK);
|
||||
this.Controls.Add(this.Panel1);
|
||||
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedToolWindow;
|
||||
this.Name = "SelectLanguage";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
|
||||
this.Text = "SelectLanguage";
|
||||
this.Load += new System.EventHandler(this.SelectLanguage_Load);
|
||||
this.Panel1.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
internal System.Windows.Forms.RadioButton rbSelected;
|
||||
internal System.Windows.Forms.RadioButton rbShow;
|
||||
internal System.Windows.Forms.Label lblStartup;
|
||||
internal System.Windows.Forms.RadioButton rbDefault;
|
||||
internal System.Windows.Forms.ListBox lstCultures;
|
||||
internal System.Windows.Forms.Button btOK;
|
||||
internal System.Windows.Forms.Panel Panel1;
|
||||
}
|
||||
}
|
||||
120
MifareOneTool/SelectLanguage.resx
Normal file
@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
@ -53,6 +53,9 @@
|
||||
<setting name="CuidKeyOver" serializeAs="String">
|
||||
<value>True</value>
|
||||
</setting>
|
||||
<setting name="Language" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
</MifareOneTool.Properties.Settings>
|
||||
</userSettings>
|
||||
</configuration>
|
||||