初始备份。
This commit is contained in:
commit
59677e1a85
152 files changed
+54611
No files matched your search
Generated
+220
@@ -0,0 +1,220 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmColor
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmColor));
|
||||
this.superColor1 = new ryControls.SuperColor();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.table1 = new XPTable.Models.Table();
|
||||
this.columnModel1 = new XPTable.Models.ColumnModel();
|
||||
this.ColTitle = new XPTable.Models.TextColumn();
|
||||
this.ColValue = new XPTable.Models.TextColumn();
|
||||
this.ColDes = new XPTable.Models.TextColumn();
|
||||
this.tableModel1 = new XPTable.Models.TableModel();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.TxtType = new ryControls.TextBoxEx2();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.TxtValue = new ryControls.TextBoxEx2();
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// superColor1
|
||||
//
|
||||
this.superColor1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.superColor1.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.superColor1.Location = new System.Drawing.Point(68, 10);
|
||||
this.superColor1.Name = "superColor1";
|
||||
this.superColor1.Size = new System.Drawing.Size(73, 22);
|
||||
this.superColor1.TabIndex = 0;
|
||||
this.superColor1.BackColorChanged += new System.EventHandler(this.SuperColor1_BackColorChanged);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(9, 15);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(53, 12);
|
||||
this.label1.TabIndex = 1;
|
||||
this.label1.Text = "选择颜色";
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(185, 70);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// table1
|
||||
//
|
||||
this.table1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.table1.ColumnModel = this.columnModel1;
|
||||
this.table1.EnableToolTips = true;
|
||||
this.table1.FullRowSelect = true;
|
||||
this.table1.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
||||
this.table1.Location = new System.Drawing.Point(11, 38);
|
||||
this.table1.Name = "table1";
|
||||
this.table1.NoItemsText = "当前列表没有任何项";
|
||||
this.table1.Size = new System.Drawing.Size(777, 353);
|
||||
this.table1.TabIndex = 16;
|
||||
this.table1.TableModel = this.tableModel1;
|
||||
this.table1.Text = "table1";
|
||||
//
|
||||
// columnModel1
|
||||
//
|
||||
this.columnModel1.Columns.AddRange(new XPTable.Models.Column[] {
|
||||
this.ColTitle,
|
||||
this.ColValue,
|
||||
this.ColDes});
|
||||
//
|
||||
// ColTitle
|
||||
//
|
||||
this.ColTitle.Editable = false;
|
||||
this.ColTitle.Tag = null;
|
||||
this.ColTitle.Text = "类型";
|
||||
this.ColTitle.Width = 130;
|
||||
//
|
||||
// ColValue
|
||||
//
|
||||
this.ColValue.Editable = false;
|
||||
this.ColValue.Tag = null;
|
||||
this.ColValue.Text = "值";
|
||||
this.ColValue.Width = 220;
|
||||
//
|
||||
// ColDes
|
||||
//
|
||||
this.ColDes.Editable = false;
|
||||
this.ColDes.Tag = null;
|
||||
this.ColDes.Text = "备注";
|
||||
this.ColDes.Width = 350;
|
||||
//
|
||||
// tableModel1
|
||||
//
|
||||
this.tableModel1.RowHeight = 25;
|
||||
this.tableModel1.SelectionChanged += new XPTable.Events.SelectionEventHandler(this.TableModel1_SelectionChanged);
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(12, 405);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(29, 12);
|
||||
this.label2.TabIndex = 17;
|
||||
this.label2.Text = "类型";
|
||||
//
|
||||
// TxtType
|
||||
//
|
||||
this.TxtType.BackColor = System.Drawing.Color.White;
|
||||
this.TxtType.EmptyText = "";
|
||||
this.TxtType.Location = new System.Drawing.Point(47, 397);
|
||||
this.TxtType.MaxLength = 999999999;
|
||||
this.TxtType.Multiline = false;
|
||||
this.TxtType.Name = "TxtType";
|
||||
this.TxtType.OnlyNumeric = false;
|
||||
this.TxtType.PasswordChar = '\0';
|
||||
this.TxtType.ReadOnly = true;
|
||||
this.TxtType.SelectedText = "";
|
||||
this.TxtType.SelectionLength = 0;
|
||||
this.TxtType.SelectionStart = 0;
|
||||
this.TxtType.Size = new System.Drawing.Size(143, 29);
|
||||
this.TxtType.TabIndex = 18;
|
||||
this.TxtType.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtType.ToolTip = "";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(200, 405);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(17, 12);
|
||||
this.label3.TabIndex = 19;
|
||||
this.label3.Text = "值";
|
||||
//
|
||||
// TxtValue
|
||||
//
|
||||
this.TxtValue.BackColor = System.Drawing.Color.White;
|
||||
this.TxtValue.EmptyText = "";
|
||||
this.TxtValue.Location = new System.Drawing.Point(223, 397);
|
||||
this.TxtValue.MaxLength = 999999999;
|
||||
this.TxtValue.Multiline = false;
|
||||
this.TxtValue.Name = "TxtValue";
|
||||
this.TxtValue.OnlyNumeric = false;
|
||||
this.TxtValue.PasswordChar = '\0';
|
||||
this.TxtValue.ReadOnly = true;
|
||||
this.TxtValue.SelectedText = "";
|
||||
this.TxtValue.SelectionLength = 0;
|
||||
this.TxtValue.SelectionStart = 0;
|
||||
this.TxtValue.Size = new System.Drawing.Size(229, 29);
|
||||
this.TxtValue.TabIndex = 20;
|
||||
this.TxtValue.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtValue.ToolTip = "";
|
||||
//
|
||||
// FrmColor
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(800, 450);
|
||||
this.Controls.Add(this.TxtValue);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.TxtType);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.table1);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.superColor1);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmColor";
|
||||
this.TabPageContextMenuStrip = this.menuRight1;
|
||||
this.Text = "颜色转换";
|
||||
this.Load += new System.EventHandler(this.FrmColor_Load);
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private ryControls.SuperColor superColor1;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private System.Windows.Forms.ToolTip toolTip1;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
private XPTable.Models.Table table1;
|
||||
private XPTable.Models.ColumnModel columnModel1;
|
||||
private XPTable.Models.TextColumn ColTitle;
|
||||
private XPTable.Models.TextColumn ColValue;
|
||||
private XPTable.Models.TextColumn ColDes;
|
||||
private XPTable.Models.TableModel tableModel1;
|
||||
private ryControls.TextBoxEx2 TxtValue;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private ryControls.TextBoxEx2 TxtType;
|
||||
private System.Windows.Forms.Label label2;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,70 @@
|
||||
using ryCommon;
|
||||
using ryControls;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmColor : DockContent
|
||||
{
|
||||
public FrmColor()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void SuperColor1_BackColorChanged(object sender, EventArgs e)
|
||||
{
|
||||
Color color = superColor1.BackColor;
|
||||
ryControls.ColorRGB RGB =new ryControls.ColorRGB(color.R,color.G,color.B);
|
||||
var hsl= ryControls.ColorHelper.RgbToHsl(RGB);
|
||||
var hsv = ryControls.ColorHelper.RgbToHsv(RGB);
|
||||
tableModel1.Rows.Clear();
|
||||
AddList("RGB颜色值", "rgb(" + color.R + "," + color.G + "," + color.B + ")","");
|
||||
AddList("RGBA颜色值", "rgba(" + color.R + "," + color.G + "," + color.B + "," + color.A + ")", "HTML5、CSS3常用");
|
||||
AddList("ARGB颜色值", String.Format("#{0:X2}{1:X2}{2:X2}{3:X2}", color.A, color.R, color.G, color.B), "android常用");
|
||||
AddList("16进制颜色值", String.Format("#{0:X2}{1:X2}{2:X2}", color.R, color.G, color.B), "");
|
||||
AddList("HSL颜色值", "hsl(" + color.GetHue().ToString("0.00") + "," + color.GetSaturation().ToString("0.00%") + "," + (hsl.L / 255m).ToString("0.00%") + ")", "");
|
||||
AddList("HSV颜色值", "hsv(" + color.GetHue().ToString("0.00") + "," + (hsv.S / 255m).ToString("0.00") + "," + (hsv.V / 255m).ToString("0.00") + ")", "");
|
||||
ColorHelper.RGB2CMYK(RGB, out var c, out var m, out var y, out var k);
|
||||
AddList("CMYK", c.ToInt().ToString()+","+m.ToInt().ToString() + "," + y.ToInt().ToString() + "," + k.ToInt().ToString(), "印刷四色模式");
|
||||
ColorHelper.RGB2XYZ(RGB, out var x, out var y1, out var z);
|
||||
AddList("XYZ", x.ToString("0.000") + "," + y1.ToString("0.000") + "," + z.ToString("0.000"), "D65/2°");
|
||||
ColorHelper.RGB2Yxy(RGB, out var Y, out var x2, out var y2);
|
||||
AddList("Yxy", Y.ToString("0.000") + "," + x2.ToString("0.000") + "," + y2.ToString("0.000"), "D65/2°");
|
||||
void AddList(string title,string value,string des)
|
||||
{
|
||||
XPTable.Models.Row itemList = new XPTable.Models.Row()
|
||||
{
|
||||
Tag = ""
|
||||
};
|
||||
//需要修改此处
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(title));//示例
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(value));//示例
|
||||
var cell = new XPTable.Models.Cell(des)
|
||||
{
|
||||
ForeColor = Color.Gray
|
||||
};
|
||||
itemList.Cells.Add(cell);
|
||||
tableModel1.Rows.Add(itemList);
|
||||
}
|
||||
}
|
||||
private void FrmColor_Load(object sender, EventArgs e)
|
||||
{
|
||||
}
|
||||
|
||||
private void TableModel1_SelectionChanged(object sender, XPTable.Events.SelectionEventArgs e)
|
||||
{
|
||||
if (e.NewSelectedIndicies.Length <= 0) { TxtType.Text = "";TxtValue.Text = ""; return; }
|
||||
int row = e.NewSelectedIndicies[0];
|
||||
TxtType.Text = table1.TableModel.Rows[row].Cells[ColTitle.Index].Text;
|
||||
TxtValue.Text = table1.TableModel.Rows[row].Cells[ColValue.Index].Text;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,209 @@
|
||||
<?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>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>118, 17</value>
|
||||
</metadata>
|
||||
<metadata name="columnModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>242, 17</value>
|
||||
</metadata>
|
||||
<metadata name="tableModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>383, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAOgkAADoJAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD6tMMA+rTDAPq0wwD6tMMA+rTDAPq0
|
||||
wwD6tMMA+rTDAPq0wwD6tMMA+rTDAPq0wwD6tMMA+rTDAPq0wwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADw0n0A8NJ9APDRgADq41YA+7LHEPq0
|
||||
wzX6tMNe+rTDffq0w4n6tMOK+rTDfvq0w2D6tMM3+bTDEaSE5wB0avsAZGH/AGlk/wAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADw0n0A8NJ9APDSfQDw0n0A8NN6J/PK
|
||||
kXz5tr7I+rTE8Pq0w/76tMP/+rTD//q0w//6tMP/+rTD//q0w/D7tcPK3KTPf21m/SqIdfIAaWT/AGlk
|
||||
/wBpZP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA8NJ9APDSfQDw0n0A8NJ9FPDS
|
||||
fXvw0n3g8NF+//TFm//6tcD/+rTD//q0w//6tMP/+rTD//q0w//6tMP/+rTD//y1wv/PnNX/bGb+4mlk
|
||||
/39pZP8WaWT/AGlk/wBpZP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPDSfQDw0n0A8NJ9APDS
|
||||
fTDw0n278NJ9//DSff/w0n3/8NJ9//TFm//6tcD/+rTD//q0w//6tMP/+rTD//q0w//6tMP//LXC/86c
|
||||
1f9sZf7/aWT//2lk/75pZP8zaWT/AGlk/wBpZP8AAAAAAAAAAAAAAAAAAAAAAAAAAADw0n0A8NJ9APDS
|
||||
fQDw0n088NJ91fDSff/w0n3/8NJ9//DSff/w0n3/8NJ9//TFm//6tcD/+rTD//q0w//6tMP/+rTD//q0
|
||||
w//8tcL/zpzV/2xl/v9pZP//aWT//2lk/9lpZP9AaWT/AGlk/wBpZP8AAAAAAAAAAAAAAAAAAAAAAPDS
|
||||
fQDw0n0A8NJ9L/DSfdXw0n3/8NJ9//DSff/w0n3/8NJ9//DSff/w0n3/8NJ9//TFm//6tcD/+rTD//q0
|
||||
w//6tMP/+rTD//y1wv/OnNX/bGX+/2lk//9pZP//aWT//2lk/9lpZP8zaWT/AGlk/wAAAAAAAAAAAAAA
|
||||
AADw0n0A8NJ9APDSfRPw0n268NJ9//DSff/w0n3/8NJ9//DSff/w0n3/8NJ9//DSff/w0n3/8NJ9//TF
|
||||
m//6tcD/+rTD//q0w//6tMP//LXC/86c1f9sZf7/aWT//2lk//9pZP//aWT//2lk/75pZP8WaWT/AGlk
|
||||
/wAAAAAAAAAAAPLRfQDs1H0A8NJ9efDSff/w0n3/8NJ9//DSff/w0n3/8NJ9//DSff/w0n3/8NJ9//DS
|
||||
ff/w0n3/8NJ9//TFm//6tcD/+rTD//q0w//8tcL/zpzV/2xl/v9pZP//aWT//2lk//9pZP//aWT//2lk
|
||||
/39pZP8AaWT/AGlk/wDD5n0A7dN9AO/TfSbv0n3e79J9/+/Sff/v0n3/79J9/+/Sff/v0n3/79J9/+/S
|
||||
ff/v0n3/79J9//DSffvw0n378NJ9+/TFm/v6tcD/+rTD//y1wv/OnNX/bGX+/2lk//9pZP//aWT//2lk
|
||||
//9pZP//aWT/4mlg/ylpZ/8AZKr/AMPmfQDY3X0AzOJ9edDgff/R4H3/0eB9/9Hgff/R4H3/0eB9/9Hg
|
||||
ff/R4H3/0eB9/9HgffXe2n2D8dJ9T/DSfVDw0nxQ8NF+T/m4uYD6tMPz/LXC/86c1f9sZf7/aWT//2lk
|
||||
//9pZP//aWT//2lk//9pZv//Z3n/f2w1/wBkqv8Aw+Z9AMPmfQ7D5n3FwuZ9/8Lmff/C5n3/wuZ9/8Lm
|
||||
ff/C5n3/wuZ9/8Lmff/C5n32wed9c2//fQLr1H0A8NJ9APDSfQDyzYkA/5/0Afq0w279tcL0zpzV/2tl
|
||||
/v9pZP//aWT//2lk//9pZP//aWX//2eD//9kpv/JZK3/EGSq/wDD5n0Aw+Z9MsPmfe7D5n3/w+Z9/8Pm
|
||||
ff/D5n3/w+Z9/8Pmff/D5n3/w+Z99cPmfXPD5n0Dw+Z9AMPmfQAAAAAAAAAAAPq0wwD6tMMA+rTDAv+3
|
||||
wW7Mm9bzbGb+/2lk//9pZP//aWT//2ll//9ng///ZKf//2Sq//Bkqv83ZKr/AMPmfQDD5n1aw+Z9/cPm
|
||||
ff/D5n3/w+Z9/8Pmff/D5n3/xOZ9/7/mf/+25YSF5ehrAsPmfQDD5n0AAAAAAAAAAAAAAAAAAAAAAPq0
|
||||
wwD6tMMA//8AAaGD6IBrZf7/aWT//2lk//9pZf//Z4P//2Sn//9kqv//ZKr//2Sq/19kqv8Aw+Z9AMPm
|
||||
fXfD5n3/w+Z9/8Pmff/D5n3/w+Z9/8Tmff+/5n//j+OY/WfhrVR24qYAw+Z9AAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAPq0wwB3bPkAZWL/T2lk//tpZP//aWX//2eD//9kp///ZKr//2Sq//9kqv//ZKr/fmSq
|
||||
/wDD5n0Aw+Z9h8Pmff/D5n3/w+Z9/8Pmff/E5n3/v+Z//4/jmP9l4a79Y+GwVmPhrwAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAGlk/wBpZP9QaWT/+2ll//9ng///ZKf//2Sq//9kqv//ZKr//2Sq
|
||||
//9kqv+KZKr/AMPmfQDD5n2Gw+Z9/8Pmff/D5n3/xOZ9/7/mf/+P45j/ZeGu/2Thr/1k4a9WZOGvAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaWT/AGlj/1BpZf/7Z4P//2Sn//9kqv//ZKr//2Sq
|
||||
//9kqv//ZKr//2Sq/4lkqv8Aw+Z9AMPmfXfD5n3/w+Z9/8Tmff+/5n//j+OY/2Xhrv9k4a//ZOGv/WTh
|
||||
rlRk4rQAZObXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGSq/wBocf8AaWb/T2eD//tkp///ZKr//2Sq
|
||||
//9kqv//ZKr//2Sq//9kqv//ZKr/fWSq/wDD5n0Aw+Z9WMPmff3E5n3/v+Z//4/jmP9l4a7/ZOGv/2Th
|
||||
r/9k4bD/ZOO+iWTs/wNk5tcAZObXAAAAAAAAAAAAAAAAAAAAAABkqv8AZKr/AGLD/wJlof+DZKf//2Sq
|
||||
//9kqv//ZKr//2Sq//9kqv//ZKr//2Sq//5kqv9fZKr/AMPmfQDD5n0xxOZ97b/mf/+P45j/ZeGu/2Th
|
||||
r/9k4a//ZOGv/2ThsP9k5Mn2ZObYeGTm1wRk5tcAZObXAAAAAAAAAAAAZKr/AGSq/wBkqv8DZKr/c2Sq
|
||||
//Vkqv//ZKr//2Sq//9kqv//ZKr//2Sq//9kqv//ZKr/8GSq/zZkqv8Aw+Z9AMjmeg295oDDkOOY/2Xh
|
||||
rv9k4a//ZOGv/2Thr/9k4a//ZOGv/2Tkyv9k5tj3ZObXeGPmzgNo5vcAaeb/AGnm/wBo4P8AWjT/AmSo
|
||||
/3Nkqf/2ZKn//2Sp//9kqf//ZKn//2Sp//9kqf//ZKn//2Sp//9kqv/IZKr/EGSq/wDD5n0AR9++AIHj
|
||||
oHZm4a7/ZOGv/2Thr/9k4a//ZOGv/2Thr/9k4a//ZOTK/2Tm2P9k5tf2ZebciWnm/VRp5v9Waeb/Vmnn
|
||||
/1Rn0f+FZr//9Wa+//9mvv//Zr7//2a+//9mvv//Zr7//2a+//9mvv//Zr7//2W4/31nzv8AZKr/AMPm
|
||||
fQBn4a4AX+GyJGThr9xk4a//ZOGv/2Thr/9k4a//ZOGv/2Thr/9k5Mr/ZObY/2Tm1/9k5tn/Z+bs/Wnm
|
||||
/v1p5v/9aeb//Wnl//9p5f//aeX//2nl//9p5f//aeX//2nl//9p5f//aeX//2nl//9p5f/gaeb/KGni
|
||||
/wBkqv8AAAAAAGThrwBk4a8AZOGvdWThr/5k4a//ZOGv/2Thr/9k4a//ZOGv/2Tkyv9k5tj/ZObX/2Tm
|
||||
1/9k5tj/Z+bt/2nm/v9p5v//aeb//2nm//9p5v//aeb//2nm//9p5v//aeb//2nm//9p5v//aeb//2nm
|
||||
/3tp4v8Aaef/AAAAAAAAAAAAZOGvAGThrwBk4a8RZOGvtmThr/9k4a//ZOGv/2Thr/9k4a//ZOTK/2Tm
|
||||
2P9k5tf/ZObX/2Tm1/9k5tj/Z+bt/2nm/v9p5v//aeb//2nm//9p5v//aeb//2nm//9p5v//aeb//2nm
|
||||
//9p5v+7aeb/FGnm/wBp5v8AAAAAAAAAAAAAAAAAZOGvAGThrwBk4a8sZOGv0mThr/9k4a//ZOGv/2Th
|
||||
r/9k5Mr/ZObY/2Tm1/9k5tf/ZObX/2Tm1/9k5tj/Z+bt/2nm/v9p5v//aeb//2nm//9p5v//aeb//2nm
|
||||
//9p5v//aeb/1mnm/zBp5v8Aaeb/AAAAAAAAAAAAAAAAAAAAAABk4a8AZOGvAGThrwBk4a84ZOGv0mTh
|
||||
r/9k4a//ZOGv/2Tkyv9k5tj/ZObX/2Tm1/9k5tf/ZObX/2Tm1/9k5tj/Z+bt/2nm/v9p5v//aeb//2nm
|
||||
//9p5v//aeb//2nm/9Vp5v88aeb/AGnm/wBp5v8AAAAAAAAAAAAAAAAAAAAAAAAAAABk4a8AZOGvAGTh
|
||||
rwBk4a8sZOGvtmThr/5k4a//ZOTK/2Tm2P9k5tf/ZObX/2Tm1/9k5tf/ZObX/2Tm1/9k5tj/Z+bt/2nm
|
||||
/v9p5v//aeb//2nm//9p5v+6aeb/L2nm/wBp5v8Aaeb/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AABk4a8AZOGvAGThrwBk4a8RZOGvdmThr9xk5Mr/ZObY/2Tm1/9k5tf/ZObX/2Tm1/9k5tf/ZObX/2Tm
|
||||
1/9k5tj/Z+bs/2nm/v9p5v/eaeb/eWnm/xNp5v8Aaeb/AGnm/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAABk4a8AZOGvAGThrwBk4bEAZOGvJGTlzndk5tfDZObX7WTm1/1k5tf/ZObX/2Tm
|
||||
1/9k5tf/ZObX/WTm1+5k5tnEZ+byeWnm/yVp5v8Aaeb/AGnm/wBp5v8AAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZOGvAGThrQBk4bEAZOTEAGTm1w1k5tcxZObXWGTm
|
||||
13dk5teGZObXh2Tm13dk5tdZZObXMmTm1Q5r5v8Aaeb+AGnm/wBp5v8AAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGTm1wBk5tcAZObXAGTm
|
||||
1wBk5tcAZObXAGTm1wBk5tcAZObXAGTm1wBk5tcAZObXAGTm1wBk5tcAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAA/wAA//4AAH/4AAAf8AAAD+AAAAfAAAADwAAAA4AAAAGAAAAAAAAAAAAA
|
||||
AAAAAAAAAAGAAAADwAAAB+AAAA/wAAAP8AAAB+AAAAPAAAABgAAAAAAAAAAAAAAAAACAAAAAgAAAAcAA
|
||||
AAPAAAAD4AAAB/AAAA/4AAAf/gAAf/+AAf8=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
+287
@@ -0,0 +1,287 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmCreateProject
|
||||
{
|
||||
/// <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.TxtFolder = new ryControls.TextBoxEx2();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.BtnBrowser = new ryControls.ButtonEx();
|
||||
this.folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog();
|
||||
this.BtnCreate = new ryControls.ButtonEx();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.TxtProjectName = new ryControls.TextBoxEx2();
|
||||
this.TxtProjectEngName = new ryControls.TextBoxEx2();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.table1 = new XPTable.Models.Table();
|
||||
this.columnModel1 = new XPTable.Models.ColumnModel();
|
||||
this.ColName = new XPTable.Models.TextColumn();
|
||||
this.ColPath = new XPTable.Models.TextColumn();
|
||||
this.tableModel1 = new XPTable.Models.TableModel();
|
||||
this.ChkUnCreateProject = new System.Windows.Forms.CheckBox();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.CbbLang = new ryControls.ComboBoxEx();
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// TxtFolder
|
||||
//
|
||||
this.TxtFolder.BackColor = System.Drawing.Color.White;
|
||||
this.TxtFolder.EmptyText = "";
|
||||
this.TxtFolder.Location = new System.Drawing.Point(17, 24);
|
||||
this.TxtFolder.MaxLength = 999999999;
|
||||
this.TxtFolder.Multiline = false;
|
||||
this.TxtFolder.Name = "TxtFolder";
|
||||
this.TxtFolder.OnlyNumeric = false;
|
||||
this.TxtFolder.PasswordChar = '\0';
|
||||
this.TxtFolder.ReadOnly = false;
|
||||
this.TxtFolder.SelectedText = "";
|
||||
this.TxtFolder.SelectionLength = 0;
|
||||
this.TxtFolder.SelectionStart = 0;
|
||||
this.TxtFolder.Size = new System.Drawing.Size(575, 33);
|
||||
this.TxtFolder.TabIndex = 0;
|
||||
this.TxtFolder.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtFolder.ToolTip = "";
|
||||
this.TxtFolder.WordWrap = true;
|
||||
this.TxtFolder.Click += new System.EventHandler(this.TxtFolder_Click);
|
||||
this.TxtFolder.Enter += new System.EventHandler(this.TxtFolder_Enter);
|
||||
this.TxtFolder.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TxtFolder_KeyDown);
|
||||
this.TxtFolder.Leave += new System.EventHandler(this.TxtFolder_Leave);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(15, 9);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(65, 12);
|
||||
this.label1.TabIndex = 1;
|
||||
this.label1.Text = "选择文件夹";
|
||||
//
|
||||
// BtnBrowser
|
||||
//
|
||||
this.BtnBrowser.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnBrowser.Location = new System.Drawing.Point(598, 24);
|
||||
this.BtnBrowser.Name = "BtnBrowser";
|
||||
this.BtnBrowser.Size = new System.Drawing.Size(75, 33);
|
||||
this.BtnBrowser.TabIndex = 2;
|
||||
this.BtnBrowser.Text = "选择";
|
||||
this.BtnBrowser.UseVisualStyleBackColor = true;
|
||||
this.BtnBrowser.Click += new System.EventHandler(this.BtnBrowser_Click);
|
||||
//
|
||||
// BtnCreate
|
||||
//
|
||||
this.BtnCreate.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnCreate.Location = new System.Drawing.Point(17, 153);
|
||||
this.BtnCreate.Name = "BtnCreate";
|
||||
this.BtnCreate.Size = new System.Drawing.Size(75, 33);
|
||||
this.BtnCreate.TabIndex = 3;
|
||||
this.BtnCreate.Text = "生成";
|
||||
this.BtnCreate.UseVisualStyleBackColor = true;
|
||||
this.BtnCreate.Click += new System.EventHandler(this.BtnCreate_Click);
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(15, 60);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(89, 12);
|
||||
this.label2.TabIndex = 4;
|
||||
this.label2.Text = "项目名称(中文)";
|
||||
//
|
||||
// TxtProjectName
|
||||
//
|
||||
this.TxtProjectName.BackColor = System.Drawing.Color.White;
|
||||
this.TxtProjectName.EmptyText = "";
|
||||
this.TxtProjectName.Location = new System.Drawing.Point(17, 75);
|
||||
this.TxtProjectName.MaxLength = 999999999;
|
||||
this.TxtProjectName.Multiline = false;
|
||||
this.TxtProjectName.Name = "TxtProjectName";
|
||||
this.TxtProjectName.OnlyNumeric = false;
|
||||
this.TxtProjectName.PasswordChar = '\0';
|
||||
this.TxtProjectName.ReadOnly = false;
|
||||
this.TxtProjectName.SelectedText = "";
|
||||
this.TxtProjectName.SelectionLength = 0;
|
||||
this.TxtProjectName.SelectionStart = 0;
|
||||
this.TxtProjectName.Size = new System.Drawing.Size(256, 33);
|
||||
this.TxtProjectName.TabIndex = 5;
|
||||
this.TxtProjectName.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtProjectName.ToolTip = "";
|
||||
this.TxtProjectName.WordWrap = true;
|
||||
//
|
||||
// TxtProjectEngName
|
||||
//
|
||||
this.TxtProjectEngName.BackColor = System.Drawing.Color.White;
|
||||
this.TxtProjectEngName.EmptyText = "";
|
||||
this.TxtProjectEngName.Location = new System.Drawing.Point(279, 75);
|
||||
this.TxtProjectEngName.MaxLength = 999999999;
|
||||
this.TxtProjectEngName.Multiline = false;
|
||||
this.TxtProjectEngName.Name = "TxtProjectEngName";
|
||||
this.TxtProjectEngName.OnlyNumeric = false;
|
||||
this.TxtProjectEngName.PasswordChar = '\0';
|
||||
this.TxtProjectEngName.ReadOnly = false;
|
||||
this.TxtProjectEngName.SelectedText = "";
|
||||
this.TxtProjectEngName.SelectionLength = 0;
|
||||
this.TxtProjectEngName.SelectionStart = 0;
|
||||
this.TxtProjectEngName.Size = new System.Drawing.Size(256, 33);
|
||||
this.TxtProjectEngName.TabIndex = 7;
|
||||
this.TxtProjectEngName.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtProjectEngName.ToolTip = "";
|
||||
this.TxtProjectEngName.WordWrap = true;
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(277, 60);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(89, 12);
|
||||
this.label3.TabIndex = 6;
|
||||
this.label3.Text = "项目名称(英文)";
|
||||
//
|
||||
// table1
|
||||
//
|
||||
this.table1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.table1.ColumnModel = this.columnModel1;
|
||||
this.table1.EnableToolTips = true;
|
||||
this.table1.FullRowSelect = true;
|
||||
this.table1.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
||||
this.table1.Location = new System.Drawing.Point(20, 247);
|
||||
this.table1.Name = "table1";
|
||||
this.table1.NoItemsText = "当前列表没有任何项";
|
||||
this.table1.Size = new System.Drawing.Size(575, 347);
|
||||
this.table1.TabIndex = 113;
|
||||
this.table1.TableModel = this.tableModel1;
|
||||
this.table1.Text = "table1";
|
||||
this.table1.Visible = false;
|
||||
this.table1.CellLostFocus += new XPTable.Events.CellFocusEventHandler(this.table1_CellLostFocus);
|
||||
this.table1.Click += new System.EventHandler(this.table1_Click);
|
||||
this.table1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.table1_KeyDown);
|
||||
this.table1.Leave += new System.EventHandler(this.table1_Leave);
|
||||
//
|
||||
// columnModel1
|
||||
//
|
||||
this.columnModel1.Columns.AddRange(new XPTable.Models.Column[] {
|
||||
this.ColName,
|
||||
this.ColPath});
|
||||
//
|
||||
// ColName
|
||||
//
|
||||
this.ColName.Editable = false;
|
||||
this.ColName.Tag = null;
|
||||
this.ColName.Text = "名称";
|
||||
this.ColName.Width = 130;
|
||||
//
|
||||
// ColPath
|
||||
//
|
||||
this.ColPath.Editable = false;
|
||||
this.ColPath.Tag = null;
|
||||
this.ColPath.Text = "路径";
|
||||
this.ColPath.Width = 400;
|
||||
//
|
||||
// ChkUnCreateProject
|
||||
//
|
||||
this.ChkUnCreateProject.AutoSize = true;
|
||||
this.ChkUnCreateProject.Location = new System.Drawing.Point(17, 114);
|
||||
this.ChkUnCreateProject.Name = "ChkUnCreateProject";
|
||||
this.ChkUnCreateProject.Size = new System.Drawing.Size(108, 16);
|
||||
this.ChkUnCreateProject.TabIndex = 114;
|
||||
this.ChkUnCreateProject.Text = "不生成模板项目";
|
||||
this.ChkUnCreateProject.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Location = new System.Drawing.Point(542, 60);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(53, 12);
|
||||
this.label4.TabIndex = 115;
|
||||
this.label4.Text = "项目语言";
|
||||
//
|
||||
// CbbLang
|
||||
//
|
||||
this.CbbLang.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbLang.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.CbbLang.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbLang.Font = new System.Drawing.Font("宋体", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CbbLang.FormattingEnabled = true;
|
||||
this.CbbLang.Items.AddRange(new object[] {
|
||||
"C#",
|
||||
"Delphi"});
|
||||
this.CbbLang.Location = new System.Drawing.Point(544, 78);
|
||||
this.CbbLang.Name = "CbbLang";
|
||||
this.CbbLang.Size = new System.Drawing.Size(121, 27);
|
||||
this.CbbLang.TabIndex = 116;
|
||||
//
|
||||
// FrmCreateProject
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(688, 450);
|
||||
this.Controls.Add(this.table1);
|
||||
this.Controls.Add(this.CbbLang);
|
||||
this.Controls.Add(this.label4);
|
||||
this.Controls.Add(this.ChkUnCreateProject);
|
||||
this.Controls.Add(this.TxtProjectEngName);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.TxtProjectName);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.BtnCreate);
|
||||
this.Controls.Add(this.BtnBrowser);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.TxtFolder);
|
||||
this.Name = "FrmCreateProject";
|
||||
this.Text = "创建项目";
|
||||
this.Load += new System.EventHandler(this.FrmCreateProject_Load);
|
||||
this.Shown += new System.EventHandler(this.FrmCreateProject_Shown);
|
||||
this.Click += new System.EventHandler(this.FrmCreateProject_Click);
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
private System.Windows.Forms.Label label1;
|
||||
private ryControls.ButtonEx BtnBrowser;
|
||||
private System.Windows.Forms.FolderBrowserDialog folderBrowserDialog1;
|
||||
private ryControls.ButtonEx BtnCreate;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private XPTable.Models.Table table1;
|
||||
private XPTable.Models.ColumnModel columnModel1;
|
||||
private XPTable.Models.TextColumn ColName;
|
||||
private XPTable.Models.TextColumn ColPath;
|
||||
private XPTable.Models.TableModel tableModel1;
|
||||
private System.Windows.Forms.Label label4;
|
||||
public ryControls.TextBoxEx2 TxtFolder;
|
||||
public System.Windows.Forms.CheckBox ChkUnCreateProject;
|
||||
public ryControls.TextBoxEx2 TxtProjectName;
|
||||
public ryControls.TextBoxEx2 TxtProjectEngName;
|
||||
public ryControls.ComboBoxEx CbbLang;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,313 @@
|
||||
using ryCommon;
|
||||
using ryCommonDb;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using System.Xml;
|
||||
using 开发辅助工具.Manager;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmCreateProject : Form
|
||||
{
|
||||
public FrmCreateProject()
|
||||
{
|
||||
ProcUse = true;
|
||||
InitializeComponent();
|
||||
CbbLang.SelectedIndex = 0;
|
||||
}
|
||||
bool ProcUse = false;
|
||||
RyProject project = new RyProject();
|
||||
private void FrmCreateProject_Load(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.RyFiles.AddDropDrag(TxtFolder.Handle).ElevatedDragDrop += FrmCreateProject_ElevatedDragDrop;
|
||||
project.CopyDllToBin = true;
|
||||
var lines = RyFiles.ReadAllLines(Application.StartupPath+"\\SysDb\\Folder.txt");
|
||||
for (int i = 0; i < lines.Length; i++)
|
||||
{
|
||||
var item = lines[i].Split('|');
|
||||
if(item.Length>=2)
|
||||
{
|
||||
if (System.IO.Directory.Exists(item[1]))
|
||||
{ AddItem(item[0], item[1]); }
|
||||
}
|
||||
}
|
||||
}
|
||||
private void AddItem(string name,string path)
|
||||
{
|
||||
XPTable.Models.Row itemList = new XPTable.Models.Row()
|
||||
{
|
||||
Tag = ""
|
||||
};
|
||||
//需要修改此处
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(name));//示例
|
||||
var cell = new XPTable.Models.Cell(path);
|
||||
cell.ForeColor = Color.Gray;
|
||||
itemList.Cells.Add(cell);
|
||||
tableModel1.Rows.Add(itemList);
|
||||
}
|
||||
private void FrmCreateProject_ElevatedDragDrop(object sender, ElevatedDragDropArgs e)
|
||||
{
|
||||
TxtFolder.Text = e.Files[0];
|
||||
table1.Visible = false;
|
||||
}
|
||||
|
||||
private void BtnBrowser_Click(object sender, EventArgs e)
|
||||
{
|
||||
if(folderBrowserDialog1.ShowDialog()==DialogResult.OK)
|
||||
{
|
||||
TxtFolder.Text = folderBrowserDialog1.SelectedPath;
|
||||
table1.Visible = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void BtnCreate_Click(object sender, EventArgs e)
|
||||
{
|
||||
var CshapeBasePath = project.CshapeBasePath;
|
||||
var ReferenceDllPath = project.ReferenceDllPath;
|
||||
var path = TxtFolder.Text.TrimEnd('\\');
|
||||
var project_name = TxtProjectName.Text;
|
||||
var project_Eng_name = TxtProjectEngName.Text;
|
||||
#region 判断项目是否符合标准
|
||||
if (!ryCommon.RyFiles.IsValidFileName(project_name))
|
||||
{
|
||||
MessageBox.Show("无效的项目名称(中文)", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return;
|
||||
}
|
||||
if (!ryCommon.RyFiles.IsValidFileName(project_Eng_name) || !project_Eng_name.Replace(" ", "").IsEngOrNum())
|
||||
{
|
||||
MessageBox.Show("无效的项目名称(英文)", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return;
|
||||
}
|
||||
else if (project_Eng_name.Length < 3 || project_Eng_name.Substring(0, 1).IsInt() || project_Eng_name.Substring(0, 1) == " ")
|
||||
{
|
||||
MessageBox.Show("无效的项目名称(英文)", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return;
|
||||
}
|
||||
var full_path = path + "\\" + project_name;
|
||||
if(System.IO.Directory.Exists(path + "\\Bin") && System.IO.Directory.Exists(path + "\\Source"))
|
||||
{
|
||||
full_path = path;
|
||||
}
|
||||
ryCommon.RyFiles.CreateDirectory(full_path);
|
||||
if(!System.IO.Directory.Exists(full_path))
|
||||
{
|
||||
MessageBox.Show("创建路径失败。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);return;
|
||||
}
|
||||
#endregion
|
||||
BtnCreate.Enabled = false;
|
||||
var prog_lang = "c#";
|
||||
if (CbbLang.SelectedIndex == 0) { prog_lang = "c#"; }
|
||||
else if (CbbLang.SelectedIndex == 1) { prog_lang = "delphi"; }
|
||||
#region 创建项目必备文件夹和文件
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Bin\\Debug\\"+project_Eng_name);
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Source");
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Res");
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Res\\ThirdParty");
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Res\\Images");
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Publish\\Green");
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Publish\\Green\\HistoryVer");
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Publish\\Install");
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Publish\\Install\\HistoryVer");
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Publish\\OriginalFiles");
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Publish\\UpdateFile");
|
||||
ryCommon.RyFiles.CreateDirectory(full_path + "\\Help");
|
||||
if (!System.IO.File.Exists(full_path + "\\CHANGELOG.md"))
|
||||
{ ryCommon.RyFiles.WriteAllText(full_path + "\\CHANGELOG.md", "", Encoding.UTF8); }
|
||||
if (!System.IO.File.Exists(full_path + "\\README.md"))
|
||||
{ ryCommon.RyFiles.WriteAllText(full_path + "\\README.md", "", Encoding.UTF8); }
|
||||
if (!System.IO.File.Exists(full_path + "\\Publish\\Publish.set"))
|
||||
{
|
||||
ryCommon.RyFiles.WriteAllText(full_path + "\\Publish\\Publish.set", "#del表示删除文件;copy表示复制文件;" +
|
||||
"\r\n#原目录:Bin\\Debug\\或Bin\\Release,目标目录:Publish\\OriginalFiles" +
|
||||
"\r\ndel:UserDb\r\ndel:Db\r\ncopy:SysDb\\*->SysDb\\", Encoding.UTF8);
|
||||
}
|
||||
#endregion
|
||||
if (prog_lang == "c#")
|
||||
{
|
||||
#region 生成混淆信息
|
||||
ReactorXML xml = new ReactorXML();
|
||||
xml.LoadXML(Application.StartupPath + "\\SysDb\\混淆.nrproj");
|
||||
if (!System.IO.File.Exists(full_path + "\\Bin\\混淆_Debug.nrproj"))
|
||||
{
|
||||
List<string> files_debug = new List<string>
|
||||
{
|
||||
"Debug\\"+project_Eng_name+"\\" + project_Eng_name + ".exe",
|
||||
"Debug\\"+project_Eng_name+"\\" + "MyDb.dll",
|
||||
"Debug\\"+project_Eng_name+"\\" + "MyDb_SQLite.dll",
|
||||
"Debug\\"+project_Eng_name+"\\" + "ryUpdate.dll",
|
||||
"Debug\\"+project_Eng_name+"\\" + "ryControls.dll"
|
||||
};
|
||||
xml.Save(full_path + "\\Bin\\混淆_Debug.nrproj", files_debug);
|
||||
}
|
||||
if (!System.IO.File.Exists(full_path + "\\Bin\\混淆_Release.nrproj"))
|
||||
{
|
||||
List<string> files_Release = new List<string>
|
||||
{
|
||||
"Release\\"+project_Eng_name+"\\" + project_Eng_name + ".exe",
|
||||
"Release\\"+project_Eng_name+"\\" + "MyDb.dll",
|
||||
"Release\\"+project_Eng_name+"\\" + "MyDb_SQLite.dll",
|
||||
"Release\\"+project_Eng_name+"\\" + "ryUpdate.dll",
|
||||
"Release\\"+project_Eng_name+"\\" + "ryControls.dll"
|
||||
};
|
||||
xml.Save(full_path + "\\Bin\\混淆_Release.nrproj", files_Release);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
#region 设置项目配置文件
|
||||
if (!System.IO.File.Exists(full_path + "\\查看项目.ryp"))
|
||||
{
|
||||
ryCommon.Ini ini = new ryCommon.Ini(full_path + "\\查看项目.ryp");
|
||||
ini.WriteIni("project", "name", project_name);//项目名称
|
||||
ini.WriteIni("project", "engname", project_Eng_name);//英文项目名称
|
||||
ini.WriteIni("project", "usqver", 2.1);//使用的标准版本,新毕方项目标准基于USQ 2.1
|
||||
ini.WriteIni("project", "proglang", prog_lang);//项目使用的语言
|
||||
ini.WriteIni("project", "progID", Guid.NewGuid().ToString("D"));//项目唯一ID,用于区分不同项目
|
||||
}
|
||||
if (!System.IO.File.Exists(full_path + "\\.gitignore")) //复制git忽略规则
|
||||
{
|
||||
RyFiles.CopyFile(Application.StartupPath+ "\\SysDb\\.gitignore", full_path + "\\.gitignore");
|
||||
}
|
||||
#endregion
|
||||
if (!ChkUnCreateProject.Checked)
|
||||
{
|
||||
#region 复制和修改基准项目
|
||||
if (System.IO.Directory.Exists(CshapeBasePath) && prog_lang == "c#") //存在基准项目
|
||||
{
|
||||
var source_folder = full_path + "\\Source\\" + project_Eng_name;
|
||||
ryCommon.RyFiles.CopyFile(CshapeBasePath + "\\*", source_folder);
|
||||
ryCommon.RyFiles.DeleteFile(source_folder + "\\Bin");
|
||||
ryCommon.RyFiles.DeleteFile(source_folder + "\\obj");
|
||||
if (System.IO.File.Exists(source_folder + "\\Itrycn_Project.csproj"))
|
||||
{
|
||||
ryCommon.RyFiles.MoveFile(source_folder + "\\Itrycn_Project.csproj", source_folder + "\\" + project_Eng_name + ".csproj");
|
||||
ryCommon.RyFiles.MoveFile(source_folder + "\\Itrycn_Project.csproj.user", source_folder + "\\" + project_Eng_name + ".csproj.user");
|
||||
}
|
||||
if (System.IO.File.Exists(source_folder + "\\Itrycn_Project2.csproj"))
|
||||
{
|
||||
ryCommon.RyFiles.MoveFile(source_folder + "\\Itrycn_Project2.csproj", source_folder + "\\" + project_Eng_name + ".csproj");
|
||||
ryCommon.RyFiles.MoveFile(source_folder + "\\Itrycn_Project2.csproj.user", source_folder + "\\" + project_Eng_name + ".csproj.user");
|
||||
}
|
||||
#region 写入新的版本信息
|
||||
var AssemblyInfo = ryCommon.RyFiles.ReadAllText(Application.StartupPath + "\\SysDb\\AssemblyInfo.cs");
|
||||
AssemblyInfo = AssemblyInfo.Replace("@AssemblyTitle", project_Eng_name);
|
||||
AssemblyInfo = AssemblyInfo.Replace("@AssemblyProduct", project_Eng_name);
|
||||
AssemblyInfo = AssemblyInfo.Replace("@Copyright", "Copyright 2010-2020");
|
||||
ryCommon.RyFiles.WriteAllText(source_folder + "\\Properties\\AssemblyInfo.cs", AssemblyInfo, Encoding.UTF8);
|
||||
#endregion
|
||||
#region 替换命名空间
|
||||
//var Resources = ryCommon.RyFiles.ReadAllText(source_folder + "\\Properties\\Resources.Designer.cs");
|
||||
//Resources = Resources.Replace("Itrycn_Project.Properties", project_Eng_name.Replace(" ", "") + ".Properties");
|
||||
//Resources = Resources.Replace("Itrycn_Project2.Properties", project_Eng_name.Replace(" ", "") + ".Properties");
|
||||
//ryCommon.RyFiles.WriteAllText(source_folder + "\\Properties\\Resources.Designer.cs", Resources, Encoding.UTF8);
|
||||
//var frmmain = ryCommon.RyFiles.ReadAllText(source_folder + "\\frmmain.Designer.cs");
|
||||
//frmmain = frmmain.Replace("Itrycn_Project.Properties", project_Eng_name.Replace(" ", "") + ".Properties");
|
||||
//frmmain = frmmain.Replace("Itrycn_Project2.Properties", project_Eng_name.Replace(" ", "") + ".Properties");
|
||||
//ryCommon.RyFiles.WriteAllText(source_folder + "\\frmmain.Designer.cs", frmmain, Encoding.UTF8);
|
||||
#endregion
|
||||
project.SetCSproj(source_folder + "\\" + project_Eng_name + ".csproj", project_Eng_name);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
BtnCreate.Enabled = true;
|
||||
MessageBox.Show("创建成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
RyFiles.OpenFile(full_path);
|
||||
}
|
||||
|
||||
private void TxtFolder_Enter(object sender, EventArgs e)
|
||||
{
|
||||
if (ProcUse) { return; }
|
||||
table1.Location = new Point(TxtFolder.Left,TxtFolder.Top+TxtFolder.Height);
|
||||
table1.Visible = true;
|
||||
table1.BringToFront();
|
||||
}
|
||||
|
||||
private void TxtFolder_Leave(object sender, EventArgs e)
|
||||
{
|
||||
if (!table1.Focused)
|
||||
{
|
||||
table1.Visible = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void table1_Leave(object sender, EventArgs e)
|
||||
{
|
||||
if (!TxtFolder.Focused)
|
||||
{
|
||||
table1.Visible = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void table1_CellLostFocus(object sender, XPTable.Events.CellFocusEventArgs e)
|
||||
{
|
||||
if (e.Row == -1) { table1.Visible = false; }
|
||||
}
|
||||
|
||||
private void TxtFolder_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (e.KeyCode == Keys.Down)
|
||||
{
|
||||
if (table1.Visible)
|
||||
{
|
||||
table1.TableModel.Selections.Clear();
|
||||
table1.TableModel.Selections.AddCells(0, 0, 0, columnModel1.Columns.Count - 1);
|
||||
table1.Focus();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void table1_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (e.KeyCode == Keys.Up)
|
||||
{
|
||||
if (table1.SelectedItems.Length > 0 && table1.SelectedItems[0].Index == 0)
|
||||
{
|
||||
table1.TableModel.Selections.Clear();
|
||||
TxtFolder.Select();
|
||||
TxtFolder.SelectionLength = 0;
|
||||
//rySearch1.Select();
|
||||
}
|
||||
}
|
||||
else if (e.KeyCode == Keys.Enter)
|
||||
{
|
||||
if (table1.SelectedItems.Length > 0)
|
||||
{
|
||||
TxtFolder.Text = table1.SelectedItems[0].Cells[ColPath].Text;
|
||||
TxtFolder.SelectionLength = 0;
|
||||
TxtFolder.SelectionStart = 0;
|
||||
table1.Visible = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void table1_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (table1.SelectedItems.Length > 0)
|
||||
{
|
||||
TxtFolder.Text = table1.SelectedItems[0].Cells[ColPath].Text;
|
||||
TxtFolder.SelectionLength = 0;
|
||||
TxtFolder.SelectionStart = 0;
|
||||
table1.Visible = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void FrmCreateProject_Click(object sender, EventArgs e)
|
||||
{
|
||||
table1.Visible = false;
|
||||
}
|
||||
|
||||
private void FrmCreateProject_Shown(object sender, EventArgs e)
|
||||
{
|
||||
ProcUse = false;
|
||||
}
|
||||
|
||||
private void TxtFolder_Click(object sender, EventArgs e)
|
||||
{
|
||||
table1.Location = new Point(TxtFolder.Left, TxtFolder.Top + TxtFolder.Height);
|
||||
table1.Visible = true;
|
||||
table1.BringToFront();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,129 @@
|
||||
<?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>
|
||||
<metadata name="folderBrowserDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="columnModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>224, 29</value>
|
||||
</metadata>
|
||||
<metadata name="tableModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>365, 29</value>
|
||||
</metadata>
|
||||
</root>
|
||||
+313
@@ -0,0 +1,313 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmEncode
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmEncode));
|
||||
this.RbChsToUnicode = new System.Windows.Forms.RadioButton();
|
||||
this.RbUnicodeToChs = new System.Windows.Forms.RadioButton();
|
||||
this.CbbEncodingCode = new ryControls.RyComboBox();
|
||||
this.RbURLDecode = new System.Windows.Forms.RadioButton();
|
||||
this.RbURLEncode = new System.Windows.Forms.RadioButton();
|
||||
this.RbBase64Decode = new System.Windows.Forms.RadioButton();
|
||||
this.RbBase64Encode = new System.Windows.Forms.RadioButton();
|
||||
this.TxtResultCode = new ryControls.TextBoxEx2();
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.RbChsToUTF8 = new System.Windows.Forms.RadioButton();
|
||||
this.RbUTF8ToChs = new System.Windows.Forms.RadioButton();
|
||||
this.RbMD5 = new System.Windows.Forms.RadioButton();
|
||||
this.RbSHA1 = new System.Windows.Forms.RadioButton();
|
||||
this.RbSHA256 = new System.Windows.Forms.RadioButton();
|
||||
this.RbSHA224 = new System.Windows.Forms.RadioButton();
|
||||
this.RbSHA512 = new System.Windows.Forms.RadioButton();
|
||||
this.TxtFromCode = new ryControls.Controls.RichTextBox2();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// RbChsToUnicode
|
||||
//
|
||||
this.RbChsToUnicode.AutoSize = true;
|
||||
this.RbChsToUnicode.Location = new System.Drawing.Point(463, 8);
|
||||
this.RbChsToUnicode.Name = "RbChsToUnicode";
|
||||
this.RbChsToUnicode.Size = new System.Drawing.Size(101, 16);
|
||||
this.RbChsToUnicode.TabIndex = 21;
|
||||
this.RbChsToUnicode.Text = "中文转Unicode";
|
||||
this.RbChsToUnicode.UseVisualStyleBackColor = true;
|
||||
this.RbChsToUnicode.CheckedChanged += new System.EventHandler(this.RbUnicodeToChs_CheckedChanged);
|
||||
//
|
||||
// RbUnicodeToChs
|
||||
//
|
||||
this.RbUnicodeToChs.AutoSize = true;
|
||||
this.RbUnicodeToChs.Location = new System.Drawing.Point(356, 8);
|
||||
this.RbUnicodeToChs.Name = "RbUnicodeToChs";
|
||||
this.RbUnicodeToChs.Size = new System.Drawing.Size(101, 16);
|
||||
this.RbUnicodeToChs.TabIndex = 20;
|
||||
this.RbUnicodeToChs.Text = "Unicode转中文";
|
||||
this.RbUnicodeToChs.UseVisualStyleBackColor = true;
|
||||
this.RbUnicodeToChs.CheckedChanged += new System.EventHandler(this.RbUnicodeToChs_CheckedChanged);
|
||||
//
|
||||
// CbbEncodingCode
|
||||
//
|
||||
this.CbbEncodingCode.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.CbbEncodingCode.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbEncodingCode.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.CbbEncodingCode.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbEncodingCode.FormattingEnabled = true;
|
||||
this.CbbEncodingCode.Items.AddRange(new object[] {
|
||||
"UTF8",
|
||||
"GBK",
|
||||
"GB2312",
|
||||
"ASCII",
|
||||
"Unicode"});
|
||||
this.CbbEncodingCode.Location = new System.Drawing.Point(817, 2);
|
||||
this.CbbEncodingCode.Name = "CbbEncodingCode";
|
||||
this.CbbEncodingCode.Size = new System.Drawing.Size(121, 22);
|
||||
this.CbbEncodingCode.TabIndex = 19;
|
||||
this.CbbEncodingCode.SelectedIndexChanged += new System.EventHandler(this.CbbEncodingCode_SelectedIndexChanged);
|
||||
//
|
||||
// RbURLDecode
|
||||
//
|
||||
this.RbURLDecode.AutoSize = true;
|
||||
this.RbURLDecode.Location = new System.Drawing.Point(273, 8);
|
||||
this.RbURLDecode.Name = "RbURLDecode";
|
||||
this.RbURLDecode.Size = new System.Drawing.Size(77, 16);
|
||||
this.RbURLDecode.TabIndex = 18;
|
||||
this.RbURLDecode.Text = "URLDecode";
|
||||
this.RbURLDecode.UseVisualStyleBackColor = true;
|
||||
this.RbURLDecode.CheckedChanged += new System.EventHandler(this.RbBase64Encode_CheckedChanged);
|
||||
//
|
||||
// RbURLEncode
|
||||
//
|
||||
this.RbURLEncode.AutoSize = true;
|
||||
this.RbURLEncode.Location = new System.Drawing.Point(190, 8);
|
||||
this.RbURLEncode.Name = "RbURLEncode";
|
||||
this.RbURLEncode.Size = new System.Drawing.Size(77, 16);
|
||||
this.RbURLEncode.TabIndex = 17;
|
||||
this.RbURLEncode.Text = "URLEncode";
|
||||
this.RbURLEncode.UseVisualStyleBackColor = true;
|
||||
this.RbURLEncode.CheckedChanged += new System.EventHandler(this.RbBase64Encode_CheckedChanged);
|
||||
//
|
||||
// RbBase64Decode
|
||||
//
|
||||
this.RbBase64Decode.AutoSize = true;
|
||||
this.RbBase64Decode.Location = new System.Drawing.Point(101, 8);
|
||||
this.RbBase64Decode.Name = "RbBase64Decode";
|
||||
this.RbBase64Decode.Size = new System.Drawing.Size(83, 16);
|
||||
this.RbBase64Decode.TabIndex = 16;
|
||||
this.RbBase64Decode.Text = "Base64解码";
|
||||
this.RbBase64Decode.UseVisualStyleBackColor = true;
|
||||
this.RbBase64Decode.CheckedChanged += new System.EventHandler(this.RbBase64Encode_CheckedChanged);
|
||||
//
|
||||
// RbBase64Encode
|
||||
//
|
||||
this.RbBase64Encode.AutoSize = true;
|
||||
this.RbBase64Encode.Checked = true;
|
||||
this.RbBase64Encode.Location = new System.Drawing.Point(12, 8);
|
||||
this.RbBase64Encode.Name = "RbBase64Encode";
|
||||
this.RbBase64Encode.Size = new System.Drawing.Size(83, 16);
|
||||
this.RbBase64Encode.TabIndex = 15;
|
||||
this.RbBase64Encode.TabStop = true;
|
||||
this.RbBase64Encode.Text = "Base64编码";
|
||||
this.RbBase64Encode.UseVisualStyleBackColor = true;
|
||||
this.RbBase64Encode.CheckedChanged += new System.EventHandler(this.RbBase64Encode_CheckedChanged);
|
||||
//
|
||||
// TxtResultCode
|
||||
//
|
||||
this.TxtResultCode.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.TxtResultCode.BackColor = System.Drawing.Color.White;
|
||||
this.TxtResultCode.EmptyText = "转换好后的内容";
|
||||
this.TxtResultCode.Location = new System.Drawing.Point(12, 234);
|
||||
this.TxtResultCode.MaxLength = 999999999;
|
||||
this.TxtResultCode.Multiline = true;
|
||||
this.TxtResultCode.Name = "TxtResultCode";
|
||||
this.TxtResultCode.OnlyNumeric = false;
|
||||
this.TxtResultCode.PasswordChar = '\0';
|
||||
this.TxtResultCode.ReadOnly = true;
|
||||
this.TxtResultCode.SelectedText = "";
|
||||
this.TxtResultCode.SelectionLength = 0;
|
||||
this.TxtResultCode.SelectionStart = 0;
|
||||
this.TxtResultCode.Size = new System.Drawing.Size(926, 204);
|
||||
this.TxtResultCode.TabIndex = 14;
|
||||
this.TxtResultCode.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtResultCode.ToolTip = "";
|
||||
this.TxtResultCode.WordWrap = true;
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(173, 48);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// RbChsToUTF8
|
||||
//
|
||||
this.RbChsToUTF8.AutoSize = true;
|
||||
this.RbChsToUTF8.Location = new System.Drawing.Point(665, 8);
|
||||
this.RbChsToUTF8.Name = "RbChsToUTF8";
|
||||
this.RbChsToUTF8.Size = new System.Drawing.Size(89, 16);
|
||||
this.RbChsToUTF8.TabIndex = 23;
|
||||
this.RbChsToUTF8.Text = "中文转UTF-8";
|
||||
this.RbChsToUTF8.UseVisualStyleBackColor = true;
|
||||
this.RbChsToUTF8.CheckedChanged += new System.EventHandler(this.RbUnicodeToChs_CheckedChanged);
|
||||
//
|
||||
// RbUTF8ToChs
|
||||
//
|
||||
this.RbUTF8ToChs.AutoSize = true;
|
||||
this.RbUTF8ToChs.Location = new System.Drawing.Point(570, 8);
|
||||
this.RbUTF8ToChs.Name = "RbUTF8ToChs";
|
||||
this.RbUTF8ToChs.Size = new System.Drawing.Size(89, 16);
|
||||
this.RbUTF8ToChs.TabIndex = 22;
|
||||
this.RbUTF8ToChs.Text = "UTF-8转中文";
|
||||
this.RbUTF8ToChs.UseVisualStyleBackColor = true;
|
||||
this.RbUTF8ToChs.CheckedChanged += new System.EventHandler(this.RbUnicodeToChs_CheckedChanged);
|
||||
//
|
||||
// RbMD5
|
||||
//
|
||||
this.RbMD5.AutoSize = true;
|
||||
this.RbMD5.Location = new System.Drawing.Point(12, 32);
|
||||
this.RbMD5.Name = "RbMD5";
|
||||
this.RbMD5.Size = new System.Drawing.Size(41, 16);
|
||||
this.RbMD5.TabIndex = 24;
|
||||
this.RbMD5.Text = "MD5";
|
||||
this.RbMD5.UseVisualStyleBackColor = true;
|
||||
this.RbMD5.CheckedChanged += new System.EventHandler(this.RbNoEncoding_CheckedChanged);
|
||||
//
|
||||
// RbSHA1
|
||||
//
|
||||
this.RbSHA1.AutoSize = true;
|
||||
this.RbSHA1.Location = new System.Drawing.Point(72, 32);
|
||||
this.RbSHA1.Name = "RbSHA1";
|
||||
this.RbSHA1.Size = new System.Drawing.Size(47, 16);
|
||||
this.RbSHA1.TabIndex = 25;
|
||||
this.RbSHA1.Text = "SHA1";
|
||||
this.RbSHA1.UseVisualStyleBackColor = true;
|
||||
this.RbSHA1.CheckedChanged += new System.EventHandler(this.RbNoEncoding_CheckedChanged);
|
||||
//
|
||||
// RbSHA256
|
||||
//
|
||||
this.RbSHA256.AutoSize = true;
|
||||
this.RbSHA256.Location = new System.Drawing.Point(224, 32);
|
||||
this.RbSHA256.Name = "RbSHA256";
|
||||
this.RbSHA256.Size = new System.Drawing.Size(59, 16);
|
||||
this.RbSHA256.TabIndex = 26;
|
||||
this.RbSHA256.Text = "SHA256";
|
||||
this.RbSHA256.UseVisualStyleBackColor = true;
|
||||
this.RbSHA256.CheckedChanged += new System.EventHandler(this.RbNoEncoding_CheckedChanged);
|
||||
//
|
||||
// RbSHA224
|
||||
//
|
||||
this.RbSHA224.AutoSize = true;
|
||||
this.RbSHA224.Enabled = false;
|
||||
this.RbSHA224.Location = new System.Drawing.Point(144, 32);
|
||||
this.RbSHA224.Name = "RbSHA224";
|
||||
this.RbSHA224.Size = new System.Drawing.Size(59, 16);
|
||||
this.RbSHA224.TabIndex = 27;
|
||||
this.RbSHA224.Text = "SHA224";
|
||||
this.RbSHA224.UseVisualStyleBackColor = true;
|
||||
this.RbSHA224.CheckedChanged += new System.EventHandler(this.RbNoEncoding_CheckedChanged);
|
||||
//
|
||||
// RbSHA512
|
||||
//
|
||||
this.RbSHA512.AutoSize = true;
|
||||
this.RbSHA512.Location = new System.Drawing.Point(304, 32);
|
||||
this.RbSHA512.Name = "RbSHA512";
|
||||
this.RbSHA512.Size = new System.Drawing.Size(59, 16);
|
||||
this.RbSHA512.TabIndex = 28;
|
||||
this.RbSHA512.Text = "SHA512";
|
||||
this.RbSHA512.UseVisualStyleBackColor = true;
|
||||
this.RbSHA512.CheckedChanged += new System.EventHandler(this.RbNoEncoding_CheckedChanged);
|
||||
//
|
||||
// TxtFromCode
|
||||
//
|
||||
this.TxtFromCode.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.TxtFromCode.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.TxtFromCode.DetectUrls = false;
|
||||
this.TxtFromCode.EmptyText = "请填写待转换的内容";
|
||||
this.TxtFromCode.ForeColor = System.Drawing.Color.Black;
|
||||
this.TxtFromCode.Location = new System.Drawing.Point(12, 54);
|
||||
this.TxtFromCode.Name = "TxtFromCode";
|
||||
this.TxtFromCode.OnlyInputText = true;
|
||||
this.TxtFromCode.Size = new System.Drawing.Size(926, 174);
|
||||
this.TxtFromCode.TabIndex = 29;
|
||||
this.TxtFromCode.Text = "";
|
||||
this.TxtFromCode.TextChanged += new System.EventHandler(this.TxtFromCode_TextChanged);
|
||||
this.TxtFromCode.DoubleClick += new System.EventHandler(this.TxtFromCode_DoubleClick_1);
|
||||
//
|
||||
// FrmEncode
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(950, 450);
|
||||
this.Controls.Add(this.TxtFromCode);
|
||||
this.Controls.Add(this.RbSHA512);
|
||||
this.Controls.Add(this.RbSHA224);
|
||||
this.Controls.Add(this.RbSHA256);
|
||||
this.Controls.Add(this.RbSHA1);
|
||||
this.Controls.Add(this.RbMD5);
|
||||
this.Controls.Add(this.RbChsToUTF8);
|
||||
this.Controls.Add(this.RbUTF8ToChs);
|
||||
this.Controls.Add(this.RbChsToUnicode);
|
||||
this.Controls.Add(this.RbUnicodeToChs);
|
||||
this.Controls.Add(this.CbbEncodingCode);
|
||||
this.Controls.Add(this.RbURLDecode);
|
||||
this.Controls.Add(this.RbURLEncode);
|
||||
this.Controls.Add(this.RbBase64Decode);
|
||||
this.Controls.Add(this.RbBase64Encode);
|
||||
this.Controls.Add(this.TxtResultCode);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmEncode";
|
||||
this.TabPageContextMenuStrip = this.menuRight1;
|
||||
this.Text = "编码解码";
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.RadioButton RbChsToUnicode;
|
||||
private System.Windows.Forms.RadioButton RbUnicodeToChs;
|
||||
private ryControls.RyComboBox CbbEncodingCode;
|
||||
private System.Windows.Forms.RadioButton RbURLDecode;
|
||||
private System.Windows.Forms.RadioButton RbURLEncode;
|
||||
private System.Windows.Forms.RadioButton RbBase64Decode;
|
||||
private System.Windows.Forms.RadioButton RbBase64Encode;
|
||||
private ryControls.TextBoxEx2 TxtResultCode;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
private System.Windows.Forms.RadioButton RbChsToUTF8;
|
||||
private System.Windows.Forms.RadioButton RbUTF8ToChs;
|
||||
private System.Windows.Forms.RadioButton RbMD5;
|
||||
private System.Windows.Forms.RadioButton RbSHA1;
|
||||
private System.Windows.Forms.RadioButton RbSHA256;
|
||||
private System.Windows.Forms.RadioButton RbSHA224;
|
||||
private System.Windows.Forms.RadioButton RbSHA512;
|
||||
private ryControls.Controls.RichTextBox2 TxtFromCode;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,258 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmEncode : DockContent
|
||||
{
|
||||
public FrmEncode()
|
||||
{
|
||||
InitializeComponent();
|
||||
CbbEncodingCode.SelectedIndex = 0;
|
||||
}
|
||||
RyWeb.QuickWeb web = new RyWeb.QuickWeb();
|
||||
private void AutoCode()
|
||||
{
|
||||
string from_text = TxtFromCode.Text;
|
||||
if (from_text == "") { TxtResultCode.Text = ""; return; }
|
||||
#region 获取编码
|
||||
Encoding encoding = Encoding.UTF8;
|
||||
switch (CbbEncodingCode.SelectedIndex)
|
||||
{
|
||||
case 0: encoding = Encoding.UTF8; break;
|
||||
case 1: encoding = Encoding.GetEncoding("GBK"); break;
|
||||
case 2: encoding = Encoding.GetEncoding("GB2312"); break;
|
||||
case 3: encoding = Encoding.ASCII; break;
|
||||
case 4: encoding = Encoding.Unicode; break;
|
||||
case 5: encoding = Encoding.BigEndianUnicode; break;
|
||||
case 6: encoding = Encoding.UTF7; break;
|
||||
case 7: encoding = Encoding.UTF32; break;
|
||||
}
|
||||
#endregion
|
||||
if (RbBase64Encode.Checked)
|
||||
{
|
||||
#region Base64加密
|
||||
try
|
||||
{
|
||||
byte[] bytedata = encoding.GetBytes(from_text);
|
||||
TxtResultCode.Text = Convert.ToBase64String(bytedata, 0, bytedata.Length);
|
||||
}
|
||||
catch
|
||||
{
|
||||
TxtResultCode.Text = "";
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
else if (RbBase64Decode.Checked)
|
||||
{
|
||||
#region Base64解密
|
||||
try
|
||||
{
|
||||
byte[] bytes = Convert.FromBase64String(from_text);
|
||||
TxtResultCode.Text = encoding.GetString(bytes);
|
||||
}
|
||||
catch
|
||||
{
|
||||
TxtResultCode.Text = "";
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
else if (RbURLEncode.Checked)
|
||||
{
|
||||
TxtResultCode.Text = web.UrlEncode(from_text, encoding);
|
||||
}
|
||||
else if (RbURLDecode.Checked)
|
||||
{
|
||||
TxtResultCode.Text = RyWeb.WebDecode.UrlDecode(from_text, encoding);
|
||||
}
|
||||
else if (RbUnicodeToChs.Checked)
|
||||
{
|
||||
#region Unicode转字符串
|
||||
try
|
||||
{
|
||||
TxtResultCode.Text = Regex.Unescape(from_text);
|
||||
}
|
||||
catch { TxtResultCode.Text = ""; }
|
||||
#endregion
|
||||
}
|
||||
else if (RbChsToUnicode.Checked)
|
||||
{
|
||||
#region 字符串转Unicode码
|
||||
try
|
||||
{
|
||||
TxtResultCode.Text = GetUnicode(from_text);
|
||||
}
|
||||
catch { TxtResultCode.Text = ""; }
|
||||
string GetUnicode(string text)
|
||||
{
|
||||
string result = "";
|
||||
for (int i = 0; i < text.Length; i++)
|
||||
{
|
||||
//if ((int)text[i] > 32 && (int)text[i] < 127)
|
||||
//{
|
||||
// result += text[i].ToString();
|
||||
//}
|
||||
//else
|
||||
result += string.Format("\\u{0:x4}", (int)text[i]);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
else if (RbUTF8ToChs.Checked)
|
||||
{
|
||||
#region UTF8转字符串
|
||||
try
|
||||
{
|
||||
TxtResultCode.Text = RyWeb.WebDecode.Unescape(from_text.Replace("&#x","%u").Replace(";", ""));
|
||||
}
|
||||
catch { TxtResultCode.Text = ""; }
|
||||
#endregion
|
||||
}
|
||||
else if (RbChsToUTF8.Checked)
|
||||
{
|
||||
#region 字符串转UTF8
|
||||
try
|
||||
{
|
||||
TxtResultCode.Text = RyWeb.WebDecode.Escape(from_text);
|
||||
}
|
||||
catch { TxtResultCode.Text = ""; }
|
||||
#endregion
|
||||
}
|
||||
else if (RbMD5.Checked)
|
||||
{
|
||||
#region 获取MD5
|
||||
try
|
||||
{
|
||||
TxtResultCode.Text = rySafe.MD5Sha1.GetMD5(from_text);
|
||||
}
|
||||
catch { TxtResultCode.Text = ""; }
|
||||
#endregion
|
||||
}
|
||||
else if (RbSHA1.Checked)
|
||||
{
|
||||
#region 获取SHA1
|
||||
try
|
||||
{
|
||||
TxtResultCode.Text = rySafe.MD5Sha1.GetSHA1(from_text);
|
||||
}
|
||||
catch { TxtResultCode.Text = ""; }
|
||||
#endregion
|
||||
}
|
||||
else if (RbSHA224.Checked)
|
||||
{
|
||||
#region 获取SHA224
|
||||
try
|
||||
{
|
||||
//TxtResultCode.Text = rySafe.MD5Sha1.GetSHA224(from_text);
|
||||
}
|
||||
catch { TxtResultCode.Text = ""; }
|
||||
#endregion
|
||||
}
|
||||
else if (RbSHA256.Checked)
|
||||
{
|
||||
#region 获取SHA256
|
||||
try
|
||||
{
|
||||
TxtResultCode.Text = rySafe.MD5Sha1.GetSHA256(from_text);
|
||||
}
|
||||
catch { TxtResultCode.Text = ""; }
|
||||
#endregion
|
||||
}
|
||||
else if (RbSHA512.Checked)
|
||||
{
|
||||
#region 获取SHA256
|
||||
try
|
||||
{
|
||||
TxtResultCode.Text = rySafe.MD5Sha1.GetSHA512(from_text);
|
||||
}
|
||||
catch { TxtResultCode.Text = ""; }
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
public string get_uft8(string unicodeString)
|
||||
{
|
||||
UTF8Encoding utf8 = new UTF8Encoding();
|
||||
Byte[] encodedBytes = utf8.GetBytes(unicodeString);
|
||||
String decodedString = utf8.GetString(encodedBytes);
|
||||
return decodedString;
|
||||
}
|
||||
public static string gb2312_utf8(string text)
|
||||
{
|
||||
//声明字符集
|
||||
System.Text.Encoding utf8, gb2312;
|
||||
//gb2312
|
||||
gb2312 = System.Text.Encoding.GetEncoding("gb2312");
|
||||
//utf8
|
||||
utf8 = System.Text.Encoding.GetEncoding("utf-8");
|
||||
byte[] gb;
|
||||
gb = gb2312.GetBytes(text);
|
||||
gb = System.Text.Encoding.Convert(gb2312, utf8, gb);
|
||||
//返回转换后的字符
|
||||
return utf8.GetString(gb);
|
||||
}
|
||||
|
||||
private void CbbEncodingCode_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
AutoCode();
|
||||
}
|
||||
|
||||
private void RbBase64Encode_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
RadioButton chk = (RadioButton)sender;
|
||||
if (chk.Checked)
|
||||
{
|
||||
CbbEncodingCode.Enabled = true;
|
||||
}
|
||||
AutoCode();
|
||||
}
|
||||
|
||||
private void RbUnicodeToChs_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
RadioButton chk = (RadioButton)sender;
|
||||
if (chk.Checked)
|
||||
{
|
||||
CbbEncodingCode.Enabled = false;
|
||||
}
|
||||
AutoCode();
|
||||
}
|
||||
|
||||
private void RbNoEncoding_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
RadioButton chk = (RadioButton)sender;
|
||||
if (chk.Checked)
|
||||
{
|
||||
CbbEncodingCode.Enabled = false;
|
||||
}
|
||||
AutoCode();
|
||||
}
|
||||
|
||||
private void TxtFromCode_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
AutoCode();
|
||||
}
|
||||
|
||||
private void TxtFromCode_DoubleClick_1(object sender, EventArgs e)
|
||||
{
|
||||
ryControls.Controls.RichTextBox2 txt = (ryControls.Controls.RichTextBox2)sender;
|
||||
开发辅助工具.Controls.FrmText frm = new Controls.FrmText
|
||||
{
|
||||
Icon = Icon
|
||||
};
|
||||
frm.richTextBox1.Text = txt.Text;
|
||||
if (frm.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
txt.Text = frm.richTextBox1.Text;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,200 @@
|
||||
<?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>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAACUWAAAlFgAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAQAAAAEAAAABAAAAAQAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAEAAAABAAAAAQAAAAEAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAACAAA
|
||||
AAgAAAAIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAIAAAACAAAAAgAAAAFAAAAAQAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAIAAAANAAAAEAAAABAAAAAPAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAGAAAADwAAABAAAAAQAAAADQAA
|
||||
AAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAUAAAAVAAAAGQAAABgAAAAWAAAACAAAAAAAAAAAAAAACAAAABYAAAAYAAAAGQAA
|
||||
ABUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAAdAAAAIQAAACEAAAAcAAAABAAAAAQAAAAcAAAAIQAA
|
||||
ACEAAAAdAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAmAAAAKgAAACMAAAAFAAAABQAA
|
||||
ACMAAAAqAAAAJgAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAmAAAAEAAA
|
||||
AAAAAAAAAAAAEAAAACYAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAA
|
||||
ACMAAAAEAAAAAAAAAAAAAAAEAAAAIwAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAMAAAB3AAAA3QAAAGMAAAAAAAAAAAAAAGMAAADdAAAAdwAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAZwAAAPQAAAD/AAAA3gAAACIAAAAiAAAA3gAAAP8AAAD0AAAAZwAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAFYAAADsAAAA/wAAAP8AAADTAAAAHQAAAB0AAADTAAAA/wAAAP8AAADsAAAAVgAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAABFAAAA4wAAAP8AAAD/AAAA4gAAAEcAAAAAAAAAAAAAAEcAAADiAAAA/wAA
|
||||
AP8AAADjAAAARQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAANwAAANgAAAD/AAAA/wAAAOkAAABRAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AFEAAADpAAAA/wAAAP8AAADYAAAANwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkAAADMAAAA/wAAAP8AAADuAAAAWwAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAFsAAADuAAAA/wAAAP8AAADMAAAAKQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdAAAAvAAAAP8AAAD/AAAA8gAAAGYAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGYAAADyAAAA/wAAAP8AAAC8AAAAHQAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAKwAAAD/AAAA/wAAAPYAAAByAAAAAgAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAHIAAAD2AAAA/wAAAP8AAACsAAAAFAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAsAAACaAAAA/wAAAP8AAAD6AAAAfwAA
|
||||
AAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAH8AAAD6AAAA/wAA
|
||||
AP8AAACaAAAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKwAAAOsAAAD/AAAA/wAA
|
||||
AOEAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAA
|
||||
AOEAAAD/AAAA/wAAAOsAAAArAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAmgAA
|
||||
AP8AAAD/AAAA+gAAAH8AAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAUAAAB/AAAA+gAAAP8AAAD/AAAAmgAAAAsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAUAAAArAAAAP8AAAD/AAAA9gAAAHIAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAACAAAAcgAAAPYAAAD/AAAA/wAAAKwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAdAAAAvAAAAP8AAAD/AAAA8gAAAGYAAAABAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAQAAAGYAAADyAAAA/wAAAP8AAAC8AAAAHQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApAAAAywAAAP8AAAD/AAAA7gAAAFwAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAABcAAAA7gAAAP8AAAD/AAAAywAAACkAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAA2AAAAP8AAAD/AAAA6AAA
|
||||
AFEAAAAAAAAAAAAAAAAAAAAAAAAAUQAAAOgAAAD/AAAA/wAAANgAAAA2AAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEAAAA4wAA
|
||||
AP8AAAD/AAAA4gAAAEcAAAAAAAAAAAAAAEcAAADiAAAA/wAAAP8AAADjAAAARAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAABVAAAA7AAAAP8AAAD/AAAA0wAAAB0AAAAdAAAA0wAAAP8AAAD/AAAA7AAAAFUAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAABnAAAA9AAAAP8AAADeAAAAIgAAACIAAADeAAAA/wAAAPQAAABnAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAB3AAAA3gAAAGMAAAAAAAAAAAAAAGMAAADeAAAAdwAA
|
||||
AAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYAAAAeAAAABAAAAAAAAAAAAAAABAAA
|
||||
AB4AAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAA+APAH/gBgB/4AAAf+AAAH/wAAD/+AAB//wAA//+AAf//wAP//4AB//8A
|
||||
AP/+AAB//AAAP/gAAB/wAAAP4AGAB+ADwAfgB+AH4A/wB+AH4AfgA8AH4AGAB/AAAA/4AAAf/AAAP/4A
|
||||
AH//AAD//4AB///AA///4Af///////////8=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
Generated
+249
@@ -0,0 +1,249 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmJson
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmJson));
|
||||
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
|
||||
this.textEditorControl1 = new ICSharpCode.TextEditor.TextEditorControl();
|
||||
this.contextMenuStripHighlightText1 = new ryProcessManager.hezuo.ContextMenuStripHighlightText();
|
||||
this.treeView1 = new System.Windows.Forms.TreeView();
|
||||
this.contextMenuStrip1 = new System.Windows.Forms.ContextMenuStrip(this.components);
|
||||
this.复制键名ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.复制键值ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStripMenuItem1 = new System.Windows.Forms.ToolStripSeparator();
|
||||
this.展开ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.折叠ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.toolStrip1 = new System.Windows.Forms.ToolStrip();
|
||||
this.BtnFormat = new System.Windows.Forms.ToolStripButton();
|
||||
this.BtnPasteJson = new System.Windows.Forms.ToolStripButton();
|
||||
this.BtnCopyJson = new System.Windows.Forms.ToolStripButton();
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.CopyJsonByCHS = new System.Windows.Forms.ToolStripButton();
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
|
||||
this.splitContainer1.Panel1.SuspendLayout();
|
||||
this.splitContainer1.Panel2.SuspendLayout();
|
||||
this.splitContainer1.SuspendLayout();
|
||||
this.contextMenuStrip1.SuspendLayout();
|
||||
this.toolStrip1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// splitContainer1
|
||||
//
|
||||
this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.splitContainer1.Location = new System.Drawing.Point(0, 25);
|
||||
this.splitContainer1.Name = "splitContainer1";
|
||||
//
|
||||
// splitContainer1.Panel1
|
||||
//
|
||||
this.splitContainer1.Panel1.Controls.Add(this.textEditorControl1);
|
||||
//
|
||||
// splitContainer1.Panel2
|
||||
//
|
||||
this.splitContainer1.Panel2.Controls.Add(this.treeView1);
|
||||
this.splitContainer1.Size = new System.Drawing.Size(800, 491);
|
||||
this.splitContainer1.SplitterDistance = 400;
|
||||
this.splitContainer1.TabIndex = 0;
|
||||
//
|
||||
// textEditorControl1
|
||||
//
|
||||
this.textEditorControl1.ContextMenuStrip = this.contextMenuStripHighlightText1;
|
||||
this.textEditorControl1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.textEditorControl1.IsReadOnly = false;
|
||||
this.textEditorControl1.Location = new System.Drawing.Point(0, 0);
|
||||
this.textEditorControl1.Name = "textEditorControl1";
|
||||
this.textEditorControl1.Size = new System.Drawing.Size(400, 491);
|
||||
this.textEditorControl1.TabIndex = 22;
|
||||
//
|
||||
// contextMenuStripHighlightText1
|
||||
//
|
||||
this.contextMenuStripHighlightText1.Name = "contextMenuStripHighlightText1";
|
||||
this.contextMenuStripHighlightText1.Size = new System.Drawing.Size(101, 186);
|
||||
//
|
||||
// treeView1
|
||||
//
|
||||
this.treeView1.ContextMenuStrip = this.contextMenuStrip1;
|
||||
this.treeView1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.treeView1.FullRowSelect = true;
|
||||
this.treeView1.HideSelection = false;
|
||||
this.treeView1.HotTracking = true;
|
||||
this.treeView1.ItemHeight = 20;
|
||||
this.treeView1.Location = new System.Drawing.Point(0, 0);
|
||||
this.treeView1.Name = "treeView1";
|
||||
this.treeView1.Size = new System.Drawing.Size(396, 491);
|
||||
this.treeView1.TabIndex = 0;
|
||||
this.treeView1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.TreeView1_MouseDown);
|
||||
//
|
||||
// contextMenuStrip1
|
||||
//
|
||||
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.复制键名ToolStripMenuItem,
|
||||
this.复制键值ToolStripMenuItem,
|
||||
this.toolStripMenuItem1,
|
||||
this.展开ToolStripMenuItem,
|
||||
this.折叠ToolStripMenuItem});
|
||||
this.contextMenuStrip1.Name = "contextMenuStrip1";
|
||||
this.contextMenuStrip1.Size = new System.Drawing.Size(125, 98);
|
||||
//
|
||||
// 复制键名ToolStripMenuItem
|
||||
//
|
||||
this.复制键名ToolStripMenuItem.Name = "复制键名ToolStripMenuItem";
|
||||
this.复制键名ToolStripMenuItem.Size = new System.Drawing.Size(124, 22);
|
||||
this.复制键名ToolStripMenuItem.Text = "复制键名";
|
||||
this.复制键名ToolStripMenuItem.Click += new System.EventHandler(this.复制键名ToolStripMenuItem_Click);
|
||||
//
|
||||
// 复制键值ToolStripMenuItem
|
||||
//
|
||||
this.复制键值ToolStripMenuItem.Name = "复制键值ToolStripMenuItem";
|
||||
this.复制键值ToolStripMenuItem.Size = new System.Drawing.Size(124, 22);
|
||||
this.复制键值ToolStripMenuItem.Text = "复制键值";
|
||||
this.复制键值ToolStripMenuItem.Click += new System.EventHandler(this.复制键值ToolStripMenuItem_Click);
|
||||
//
|
||||
// toolStripMenuItem1
|
||||
//
|
||||
this.toolStripMenuItem1.Name = "toolStripMenuItem1";
|
||||
this.toolStripMenuItem1.Size = new System.Drawing.Size(121, 6);
|
||||
//
|
||||
// 展开ToolStripMenuItem
|
||||
//
|
||||
this.展开ToolStripMenuItem.Name = "展开ToolStripMenuItem";
|
||||
this.展开ToolStripMenuItem.Size = new System.Drawing.Size(124, 22);
|
||||
this.展开ToolStripMenuItem.Text = "展开";
|
||||
this.展开ToolStripMenuItem.Click += new System.EventHandler(this.展开ToolStripMenuItem_Click);
|
||||
//
|
||||
// 折叠ToolStripMenuItem
|
||||
//
|
||||
this.折叠ToolStripMenuItem.Name = "折叠ToolStripMenuItem";
|
||||
this.折叠ToolStripMenuItem.Size = new System.Drawing.Size(124, 22);
|
||||
this.折叠ToolStripMenuItem.Text = "折叠";
|
||||
this.折叠ToolStripMenuItem.Click += new System.EventHandler(this.折叠ToolStripMenuItem_Click);
|
||||
//
|
||||
// toolStrip1
|
||||
//
|
||||
this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.BtnFormat,
|
||||
this.BtnPasteJson,
|
||||
this.BtnCopyJson,
|
||||
this.CopyJsonByCHS});
|
||||
this.toolStrip1.Location = new System.Drawing.Point(0, 0);
|
||||
this.toolStrip1.Name = "toolStrip1";
|
||||
this.toolStrip1.Size = new System.Drawing.Size(800, 25);
|
||||
this.toolStrip1.TabIndex = 2;
|
||||
this.toolStrip1.Text = "toolStrip1";
|
||||
//
|
||||
// BtnFormat
|
||||
//
|
||||
this.BtnFormat.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.BtnFormat.Image = ((System.Drawing.Image)(resources.GetObject("BtnFormat.Image")));
|
||||
this.BtnFormat.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.BtnFormat.Name = "BtnFormat";
|
||||
this.BtnFormat.Size = new System.Drawing.Size(48, 22);
|
||||
this.BtnFormat.Text = "格式化";
|
||||
this.BtnFormat.Click += new System.EventHandler(this.BtnFormat_Click);
|
||||
//
|
||||
// BtnPasteJson
|
||||
//
|
||||
this.BtnPasteJson.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.BtnPasteJson.Image = ((System.Drawing.Image)(resources.GetObject("BtnPasteJson.Image")));
|
||||
this.BtnPasteJson.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.BtnPasteJson.Name = "BtnPasteJson";
|
||||
this.BtnPasteJson.Size = new System.Drawing.Size(62, 22);
|
||||
this.BtnPasteJson.Text = "粘贴Json";
|
||||
this.BtnPasteJson.Click += new System.EventHandler(this.BtnPasteJson_Click);
|
||||
//
|
||||
// BtnCopyJson
|
||||
//
|
||||
this.BtnCopyJson.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.BtnCopyJson.Image = ((System.Drawing.Image)(resources.GetObject("BtnCopyJson.Image")));
|
||||
this.BtnCopyJson.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.BtnCopyJson.Name = "BtnCopyJson";
|
||||
this.BtnCopyJson.Size = new System.Drawing.Size(62, 22);
|
||||
this.BtnCopyJson.Text = "复制Json";
|
||||
this.BtnCopyJson.Click += new System.EventHandler(this.BtnCopyJson_Click);
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(173, 48);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// CopyJsonByCHS
|
||||
//
|
||||
this.CopyJsonByCHS.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text;
|
||||
this.CopyJsonByCHS.Image = ((System.Drawing.Image)(resources.GetObject("CopyJsonByCHS.Image")));
|
||||
this.CopyJsonByCHS.ImageTransparentColor = System.Drawing.Color.Magenta;
|
||||
this.CopyJsonByCHS.Name = "CopyJsonByCHS";
|
||||
this.CopyJsonByCHS.Size = new System.Drawing.Size(84, 22);
|
||||
this.CopyJsonByCHS.Text = "中文转义复制";
|
||||
this.CopyJsonByCHS.Click += new System.EventHandler(this.CopyJsonByCHS_Click);
|
||||
//
|
||||
// FrmJson
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(800, 516);
|
||||
this.Controls.Add(this.splitContainer1);
|
||||
this.Controls.Add(this.toolStrip1);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmJson";
|
||||
this.TabPageContextMenuStrip = this.menuRight1;
|
||||
this.Text = "Json查看";
|
||||
this.Load += new System.EventHandler(this.FrmJson_Load);
|
||||
this.splitContainer1.Panel1.ResumeLayout(false);
|
||||
this.splitContainer1.Panel2.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
|
||||
this.splitContainer1.ResumeLayout(false);
|
||||
this.contextMenuStrip1.ResumeLayout(false);
|
||||
this.toolStrip1.ResumeLayout(false);
|
||||
this.toolStrip1.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.SplitContainer splitContainer1;
|
||||
private ICSharpCode.TextEditor.TextEditorControl textEditorControl1;
|
||||
private System.Windows.Forms.TreeView treeView1;
|
||||
private ryProcessManager.hezuo.ContextMenuStripHighlightText contextMenuStripHighlightText1;
|
||||
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
|
||||
private System.Windows.Forms.ToolStripMenuItem 复制键名ToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem 复制键值ToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStrip toolStrip1;
|
||||
private System.Windows.Forms.ToolStripButton BtnFormat;
|
||||
private System.Windows.Forms.ToolStripButton BtnPasteJson;
|
||||
private System.Windows.Forms.ToolStripButton BtnCopyJson;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem1;
|
||||
private System.Windows.Forms.ToolStripMenuItem 展开ToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripMenuItem 折叠ToolStripMenuItem;
|
||||
private System.Windows.Forms.ToolStripButton CopyJsonByCHS;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,260 @@
|
||||
using ICSharpCode.TextEditor.Document;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmJson : DockContent
|
||||
{
|
||||
public FrmJson()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
private void LoadTreeList(TreeNodeCollection nodes,JObject jo)
|
||||
{
|
||||
foreach (var item in jo)
|
||||
{
|
||||
if (item.Value.HasValues)
|
||||
{
|
||||
var node = nodes.Add(item.Key.ToString());
|
||||
node.Tag = new JsonInfo() { name = item.Key.ToString(), value = item.Value.ToString() };
|
||||
try
|
||||
{
|
||||
JArray jar = JArray.Parse(item.Value.ToString());
|
||||
if (jar != null)
|
||||
{
|
||||
for (int i = 0; i < jar.Count; i++)
|
||||
{
|
||||
var node1 = node.Nodes.Add(i.ToString());
|
||||
node.Tag = new JsonInfo() { name = item.Key.ToString(), value = item.Value.ToString() };
|
||||
LoadTreeList(node1.Nodes, (JObject)JsonConvert.DeserializeObject(jar[i].ToString()));
|
||||
//TreeNode new_child = new TreeNode();
|
||||
//new_child.Text = jar[i].ToString();
|
||||
//node.Nodes.Add(new_child);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch(Exception)
|
||||
{ LoadTreeList(node.Nodes, (JObject)JsonConvert.DeserializeObject(item.Value.ToString())); }
|
||||
|
||||
//JArray jar = JArray.Parse(item.Value.ToString());
|
||||
//if (jar.Count != 0)
|
||||
{
|
||||
|
||||
//for (int i = 0; i < jar.Count; i++)
|
||||
//{
|
||||
// TreeNode new_child = new TreeNode();
|
||||
// new_child.Text = jar[i].ToString();
|
||||
// nodes.Add(new_child);
|
||||
//}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
var node = nodes.Add(item.ToString());
|
||||
node.Tag = new JsonInfo() { name = item.Key.ToString(), value = item.Value.ToString() };
|
||||
}
|
||||
}
|
||||
}
|
||||
private void BtnFormat_Click(object sender, EventArgs e)
|
||||
{
|
||||
string json_text = textEditorControl1.Text;
|
||||
treeView1.Nodes.Clear();
|
||||
//if (Manager.Json.IsJson(json_text))
|
||||
{
|
||||
try
|
||||
{
|
||||
textEditorControl1.Document.TextContent = Manager.Json.ConvertJsonString(json_text);
|
||||
textEditorControl1.Refresh();
|
||||
JObject jo = null;
|
||||
if (Manager.Json.IsArray(json_text))
|
||||
{
|
||||
var node2 = treeView1.Nodes.Add("0");
|
||||
JArray jar = JArray.Parse(json_text);
|
||||
ScanArray(node2.Nodes, jar);
|
||||
}
|
||||
else
|
||||
{
|
||||
jo = (JObject)JsonConvert.DeserializeObject(json_text);
|
||||
Scan(treeView1.Nodes, jo);
|
||||
}
|
||||
void Scan(TreeNodeCollection nodes, JObject _jo)
|
||||
{
|
||||
IEnumerable<JProperty> properties = _jo.Properties();
|
||||
foreach (JProperty item in properties)
|
||||
{
|
||||
if (item.Value.Type == JTokenType.Array)
|
||||
{
|
||||
var node2 = nodes.Add(item.Name);
|
||||
node2.Tag = new JsonInfo() { name = item.Name, value = item.Value.ToString() };
|
||||
JArray jar = JArray.Parse(item.Value.ToString());
|
||||
ScanArray(node2.Nodes, jar);
|
||||
}
|
||||
else if (item.Value.Type == JTokenType.Object)
|
||||
{
|
||||
var node2 = nodes.Add(item.Name);
|
||||
node2.Tag = new JsonInfo() { name = item.Name, value = item.Value.ToString() };
|
||||
Scan(node2.Nodes, (JObject)JsonConvert.DeserializeObject(item.Value.ToString()));
|
||||
}
|
||||
else {
|
||||
var node = nodes.Add(item.Name + ":" + item.Value + "|" + item.Value.Type.ToString());
|
||||
node.Tag = new JsonInfo() { name = item.Name, value = item.Value.ToString() };
|
||||
}
|
||||
//Console.WriteLine(item.Name + ":" + item.Value);
|
||||
}
|
||||
//var values = _jo.Values<JProperty>();
|
||||
//foreach (var item in values)
|
||||
//{
|
||||
// var va = item.Value<JProperty>().Children.Children<JProperty>();
|
||||
// var node = nodes.Add(item.ToString());
|
||||
// //if(item.HasValues)
|
||||
// //Scan(node.Nodes,(JObject)JsonConvert.DeserializeObject(item.ToString()));
|
||||
//}
|
||||
}
|
||||
void ScanArray(TreeNodeCollection nodes, JArray jar)
|
||||
{
|
||||
if (jar != null)
|
||||
{
|
||||
for (int i = 0; i < jar.Count; i++)
|
||||
{
|
||||
var node3 = nodes.Add(i.ToString());
|
||||
if (jar[i].Type == JTokenType.Object)
|
||||
{
|
||||
Scan(node3.Nodes, (JObject)jar[i]);
|
||||
}
|
||||
else
|
||||
{
|
||||
node3.Nodes.Add(jar[i].ToString());
|
||||
node3.Tag = new JsonInfo() { name = jar[i].ToString() };
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//if (Manager.Json.IsArray(json_text))
|
||||
//{
|
||||
// JArray jar = JArray.Parse(json_text);
|
||||
// if (jar != null)
|
||||
// {
|
||||
// for (int i = 0; i < jar.Count; i++)
|
||||
// {
|
||||
// var node1 = treeView1.Nodes.Add(i.ToString());
|
||||
// LoadTreeList(node1.Nodes, (JObject)JsonConvert.DeserializeObject(jar[i].ToString()));
|
||||
// //TreeNode new_child = new TreeNode();
|
||||
// //new_child.Text = jar[i].ToString();
|
||||
// //node.Nodes.Add(new_child);
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// jo = (JObject)JsonConvert.DeserializeObject(json_text);
|
||||
//}
|
||||
//LoadTreeList(treeView1.Nodes,jo);
|
||||
//for (int i = 0; i < jo.Count; i++)
|
||||
//{
|
||||
// treeView1.Nodes.Add(jo..ToString());
|
||||
//}
|
||||
}
|
||||
catch(Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
}
|
||||
//else
|
||||
//{
|
||||
// MessageBox.Show("无效的Json内容", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
// textEditorControl1.Document.TextContent = json_text;
|
||||
// textEditorControl1.Refresh();
|
||||
//}
|
||||
}
|
||||
public void LoadJson(string json_text)
|
||||
{
|
||||
textEditorControl1.Document.TextContent = json_text;
|
||||
textEditorControl1.Refresh();
|
||||
BtnFormat.PerformClick();
|
||||
}
|
||||
private void 复制键名ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (treeView1.SelectedNode == null) { return; }
|
||||
JsonInfo item = (JsonInfo)treeView1.SelectedNode.Tag;
|
||||
ryCommon.RyFiles.CopyToClip(item.name);
|
||||
}
|
||||
|
||||
private void 复制键值ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (treeView1.SelectedNode == null) { return; }
|
||||
if (treeView1.SelectedNode.Tag == null) { return; }
|
||||
JsonInfo item = (JsonInfo)treeView1.SelectedNode.Tag;
|
||||
ryCommon.RyFiles.CopyToClip(item.value);
|
||||
}
|
||||
|
||||
private void BtnPasteJson_Click(object sender, EventArgs e)
|
||||
{
|
||||
textEditorControl1.BeginUpdate();
|
||||
textEditorControl1.Document.TextContent = Clipboard.GetText();
|
||||
textEditorControl1.Refresh();
|
||||
textEditorControl1.EndUpdate();
|
||||
BtnFormat.PerformClick();
|
||||
}
|
||||
|
||||
private void BtnCopyJson_Click(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.RyFiles.CopyToClip(textEditorControl1.Text);
|
||||
}
|
||||
|
||||
private void FrmJson_Load(object sender, EventArgs e)
|
||||
{
|
||||
textEditorControl1.Document.HighlightingStrategy = HighlightingStrategyFactory.CreateHighlightingStrategy("JSON");
|
||||
}
|
||||
|
||||
private void TreeView1_MouseDown(object sender, MouseEventArgs e)
|
||||
{
|
||||
if (e.Button == MouseButtons.Right)//判断你点的是不是右键
|
||||
{
|
||||
Point ClickPoint = new Point(e.X, e.Y);
|
||||
TreeNode CurrentNode = treeView1.GetNodeAt(ClickPoint);
|
||||
if (CurrentNode != null)//判断你点的是不是一个节点
|
||||
{
|
||||
treeView1.SelectedNode = CurrentNode;//选中这个节点
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void 展开ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
treeView1.ExpandAll();
|
||||
}
|
||||
|
||||
private void 折叠ToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
treeView1.CollapseAll();
|
||||
}
|
||||
|
||||
private void CopyJsonByCHS_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
JObject jo = (JObject)JsonConvert.DeserializeObject(textEditorControl1.Text);
|
||||
var aa = Newtonsoft.Json.JsonConvert.SerializeObject(jo, new Newtonsoft.Json.JsonSerializerSettings() { StringEscapeHandling = Newtonsoft.Json.StringEscapeHandling.EscapeNonAscii });
|
||||
ryCommon.RyFiles.CopyToClip(aa);
|
||||
}
|
||||
catch(Exception ex) {
|
||||
MessageBox.Show(ex.Message, "出错", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
}
|
||||
}
|
||||
public class JsonInfo
|
||||
{
|
||||
public string name = "";
|
||||
public string value = "";
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,269 @@
|
||||
<?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>
|
||||
<metadata name="contextMenuStripHighlightText1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>262, 17</value>
|
||||
</metadata>
|
||||
<metadata name="toolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>427, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="BtnFormat.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="BtnPasteJson.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="BtnCopyJson.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="CopyJsonByCHS.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>537, 17</value>
|
||||
</metadata>
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAABMLAAATCwAAAAAAAAAA
|
||||
AAAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAA
|
||||
AwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAA
|
||||
AwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwEAAAMBAAADAgAAAwMAAAMDAAADBAAAAwQAAAMFAAADBQAA
|
||||
AwYAAAMGAAADBgAAAwYAAAMGAAADBgAAAwYAAAMGAAADBQAAAwUAAAMEAAADBAAAAwMAAAMDAAADAgAA
|
||||
AwEAAAMBAAADAAAAAwAAAAMAAAADAAAAAwMAAAMMAAADFQAAAxsAAAMfAAACIgAAACIAAAAjAAAAJQAA
|
||||
ACcAAAAoAAAAKQAAACkAAAAqAAAAKgAAACoAAAAqAAAAKQAAACkAAAAoAAAAJwAAACUAAAAjAAAAIQAA
|
||||
ACIAAAMfAAADGwAAAxUAAAMMAAADAwAAAwAAAAMAAAADBAAAAxMAAAMhAAADKQAAAi4FBQgzaWlrYZSU
|
||||
lo+YmJqVmJialpmZmpaampuXmpqbl5qanJeampyYm5ucmJubnJebm5yXm5ucl5ubnJabm5yWm5uclZqa
|
||||
nJSDg4V2JiYoPAAAAC0AAAMpAAADIQAAAxMAAAMEAAADAAAAAwAAAAMBAAADAwAAAwYAAAIIAAAACLGx
|
||||
slvFxcboysrL/8zMzf/Ozs//z8/Q/9HR0v/S0tP/09PU/9PT1P/T09T/09PU/9PT1P/T09T/0tLT/9HR
|
||||
0v/Q0NH/zs7P/8vLzPnAwMKXV1dZEgAAAAgAAAMGAAADAwAAAwEAAAMAAAADAAAAAwAAAAMAAAADAJSU
|
||||
lgDU1NUIy8vMtszMzf/Ozs//0NDR/9LS0//U1NX/1dXW/9bW1//X19j/2NjZ/9jY2f/Y2Nn/2NjZ/9fX
|
||||
2P/X19j/1tbX/9TU1f/T09T/0dHS/8/P0O3Q0NEzwcHCAAAAAwAAAAMAAAADAAAAAwAAAAAAAAADAAAA
|
||||
AwAAAAMA0tLTANLS0xHOztDL0NDR/9PT1P/V1db/19fY/9jY2f/a2tv/29vc/9zc3f/d3d7/3d3e/93d
|
||||
3v/d3d7/3Nzd/9vb3P/a2tv/2dna/9fX2P/V1db/09PU99LS00bS0tMAAAADAAAAAwAAAAMAAAAAAAAA
|
||||
AAAAAAAAYoKHAHiTmADLztAA19fYEdPT1MvU1NX/19fY/9nZ2v/b29z/3d3e/9/f4P/g4OH/4ODh/+Dh
|
||||
4f/h4eL/4eHi/+Hh4f/g4OH/4ODh/9/f4P/e3t//3Nzd/9ra2//Y2Nn319bXRdHT1ABOcngATnJ4AAAA
|
||||
AAAAAAAAAAAAAFyAhwAAGyQANWFpAH2angDS09QS1dXXy9fX2P/a2tv/3Nzd/97e3//f3+D/3+Dh/+Dg
|
||||
4f/g4eL/4OHi/+Hh4v/h4eL/4eHi/+Dh4v/g4eH/4ODh/9/f4P/e39//3d3e/9rb3PfY2NlG2d7fAC9d
|
||||
ZQBHbnYAR292AAAAAAAAAAAAgYeRAC9cYwA7ZWwtNmBojTtja6NkgojrbIiN/2yJjv9tiY//bYqP/22K
|
||||
j/9uio//boqP/26KkP9uipD/boqQ/26KkP9uipD/boqQ/26KkP9uio//boqP/22Kj/9tiY//bIiN/Elv
|
||||
dbc0X2aYOGNqVVJ3fgNLcXgAAAAAAAAAAABRe4EAU32DCDppcK44Zm7/N2Zt/zVkbP83ZW3/NGNr/zVk
|
||||
bP80ZGv/NGNr/zdmbf80ZGv/NGNr/zVkbP80Y2v/NGRr/zdmbf80Y2v/NGNr/zVkbP81ZGz/NWRs/zVk
|
||||
bP80ZGv/OGZt/zhmbv85Z2/mPmxzLj1rcgAAAAAAAAAAAFB/hQBOfYQSP3J5zj1wd/9OfIP/oLi8/7fJ
|
||||
zP+DoaX/P3B3/059g/+as7f/ssXI/6S6vv9ag4n/O292/1+Jj/+mvcD/t8nM/5+2uv9UfoT/PXB4/4yq
|
||||
rv9kiY//OW11/2ePlP+kur3/SXZ9/z1wd/Y+cXhBPnF4AAAAAAAAAAAAVYeOAFOGjBJFfIPNQHmA/5W1
|
||||
uP/M19n/jq6y/+Do6f9hiY//obzA/77N0P9qlZr/r8jL/7zLzv9YhYv/0t/g/6q/wv95oaX/vtLV/8HP
|
||||
0f9MfYP/xtfZ/4Kgpf9MgIf/0N7g/+/y8v9Zg4n/QXqB9UN7gkBDe4IAAAAAAAAAAABZkZYAV4+VEkqG
|
||||
jc1GhIv/gKuw/3igpP9QiY//1+Tl/3WYnf9xoKX/Z5ab/2eYnv+4z9L/xdLU/4aorP/W4OH/T4KI/0KB
|
||||
iP9lmZ7/4Onq/2uSl//E19n/g6Km/5y7vv/Y4OL/3OPk/1yIjv9GhIv1SIWMQEiFjAAAAAAAAAAAAF6a
|
||||
nwBcmZ4ST5CWzU2Plf9Nj5X/TI6U/1qXnf/X5eb/dZqf/2ifpP/H293/1+Pl/73S1P9tnaL/kbm8/83Y
|
||||
2v9MhYv/TI+V/1+boP/e6er/dpug/8PY2v+xw8b/0Nze/4Glqf/U4OH/Xo2S/0yOlPVNj5VATY+VAAAA
|
||||
AAAAAAAAYqOoAGGiqBJUmqDNUpmf/1KZn/9SmZ//X6Gm/9nn6P92nKH/qMrN/8XT1f9hmp//h7e7/4Ss
|
||||
sP92qq//4enq/3Gcof9TmJ7/j73B/93l5v9ilJn/yt/h//X29/+Rr7P/ZqGm/9jk5f9hkZf/UZie9VKZ
|
||||
n0BSmZ8AAAAAAAAAAABnrLEAYqiuE16prs1apqv/V6Oo/1aiqP9hqK7/zuLj/3Oeo/+Dur7/zd/g/7fS
|
||||
1P/U5OX/hq2x/1afpP+q0dT/1OPk/8Tb3f/W5eb/kLS4/1Wdo//D3+H/wtLU/1WWnP9rr7T/zd7f/2GX
|
||||
nP9cqK31WKSqQVijqQAAAAAAAAAAAGy0uQBkr7QPZbS5yXK+wv9tub7/bLm+/226vv+FxMj/cba7/2y5
|
||||
vv+Dxcn/mNDT/4PBxf9rtrv/bLm+/266v/+JyMz/l8/T/4C/xP9rtrv/bLm+/4HEyP95ur//are8/3C7
|
||||
wP+Ew8f/cbm9/2q5vvZcrbI+Xq6zAAAAAAAAAAAAcbzAAJDAxQFjtrtxa77D5XXEye54xcr7ecbK/3jF
|
||||
yf95xsr/ecbK/3jFyf93xcn/eMXK/3nGyv95xsr/ecbK/3fFyf93xcn/eMXK/3nGyv95xsr/eMXJ/3jG
|
||||
yv95xsr/ecbK/nXEyfJwwcbsZLi9q2W2uhVmt7sAAAAAAAAAAABvub4AaLvAAG/DyAVhur8nfsXJQMTd
|
||||
39bK4OH/yuDi/8rg4v/K4OL/y+Di/8vg4v/L4eL/y+Hi/8vh4v/L4eP/y+Hj/8vh4//L4eL/y+Hi/8vg
|
||||
4v/L4OL/y+Di/8vg4v/K4OH5ptPWaVm3vSxovsMQW7K3AFKprgAAAAAAAAAAAK7a3QBpvsIAa77DAJDL
|
||||
zwD/9fQO7Ovry+zs7P/t7e3/7e3t/+3t7f/u7e3/7u3u/+7u7v/u7u7/7+7u/+/u7//v7u//7+7u/+7u
|
||||
7v/u7u7/7u3u/+7t7v/t7e3/7e3t/+3t7ffx7u5Ds9jaAGi9wgBVtrwAf8bKAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAA7OztAOvs7BHq6+vL6+zs/+vs7P/r7Oz/6+zs/+zs7f/s7e3/7O3t/+3t7v/t7e7/7e3u/+3t
|
||||
7v/t7e7/7e3u/+zt7f/s7e3/7e3u/+zt7f/s7ez/6+zs9+vs7Ebr7OwAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAADs7e0A6+zsEerr68vr7Oz/6+zs/+vs7P/s7O3/7Ozt/+zt7f/s7e3/7e3u/+3t
|
||||
7v/t7e7/7e3u/+3t7v/t7e7/7Ozt/+Xm5v/i4uP/4uLj/+Hi4//j5OT45+joRefo6AAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAOzt7QDr7OwR6uvry+vs7P/r7Oz/6+zs/+zs7f/s7O3/7O3t/+zt
|
||||
7f/t7e7/7e3u/+3t7v/t7e7/7e3u/+rr7P/Ky8z/pqeo/6OjpP+nqKn/rKyt/7a2t7bQ0dIZzM3OAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA7O3tAOvs7BHq6+vL6+zs/+vs7P/r7Oz/6+zs/+zs
|
||||
7f/s7e3/7O3t/+3t7v/t7e7/7e3u/+3t7v/u7u//1dXW/5aWmP+Pj5D/lpaX/5ycnf+hoaK3o6OkH76+
|
||||
vwDs7u4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADs7OwA6+vsEerq6svr7Oz/6+zs/+vs
|
||||
7P/r7Oz/7Ozt/+zs7f/s7e3/7O3t/+3t7v/t7e7/7e3u/+3t7v/BwsP/jo+Q/5SVlv+am5z/oKChtqeo
|
||||
qR+ioqMAg4OEAL+/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOvs7ADq6+sR6erqzOrr
|
||||
6//r7Oz/6+zs/+vs7P/s7O3/7Ozt/+zt7f/s7e3/7O3t/+zt7f/t7e7/7O3t/8DBwf+RkpP/l5iZ/52e
|
||||
n7WlpaYfoKGiAIOEhQDAwcEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA6uvrAOnq
|
||||
6gzo6enC6urr/+vs7P/r7Oz/6+zs/+vs7P/s7O3/7Ozt/+zs7f/s7e3/7O3t/+zt7f/s7e3/wcLD/5WV
|
||||
lv+am5y0n6ChHp2enwCFhYYAwMDBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AADr7OwA4ePjAOjp6XHp6ur56uvr/+vs7P/r7Oz/6+zs/+vs7P/s7O3/7Ozt/+zs7f/s7O3/7Ozt/+zs
|
||||
7f/Dw8X/l5iZtJycnR2cnJ0Aj5CRAL6+vwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAOrr6wDp6uoA6erqCunq6mDq6+ug6+zspevs7KXr7Oyl6+zspevs7KXs7O2l7Oztpezs
|
||||
7aXs7O2l7Oztps/Q0Y6ampsem5ydAJaVlgChoqMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAOjp6QDp6uoA5+joAOrr6wHq6+sC6+zsAuvs7ALr7OwC6+zsAuns
|
||||
6gLr7OwC7OztAuzs7QLq6+sC////AJaXmACPj5AAoKChAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOvs7ADs7O0A6uvrAOvs7ADr7OwA6+zsAOvs
|
||||
7ADr7OwA6+zsAOzs7QDs7O0A7OztAOvs7ADi4+MAs7O0AMnKygAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAcAAAAOAAAABgAAAAYAA
|
||||
AAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAABgAAAAYAAAAGAAAAB8AAAD/AAAA/wAAAP8AAAD/AA
|
||||
AA/wAAAf8AAAP/AAAH/wAAD/+AAB//wAA/8=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
+301
@@ -0,0 +1,301 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmPathInfo
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
this.table1 = new XPTable.Models.Table();
|
||||
this.columnModel1 = new XPTable.Models.ColumnModel();
|
||||
this.ColName = new XPTable.Models.TextColumn();
|
||||
this.ColPath = new XPTable.Models.TextColumn();
|
||||
this.ColDes = new XPTable.Models.TextColumn();
|
||||
this.tableModel1 = new XPTable.Models.TableModel();
|
||||
this.BtnClean = new ryControls.ButtonEx();
|
||||
this.BtnBatchZip = new ryControls.ButtonEx();
|
||||
this.LblState = new System.Windows.Forms.Label();
|
||||
this.BtnInsertUpdate = new ryControls.ButtonEx();
|
||||
this.BtnUpdateDll = new ryControls.ButtonEx();
|
||||
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.BtnCreateFolder = new ryControls.ButtonEx();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.TxtFolder = new ryControls.TextBoxEx2();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.TxtUSQ_Ver = new ryControls.TextBoxEx2();
|
||||
this.BtnUpdateDllVer = new ryControls.ButtonEx();
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).BeginInit();
|
||||
this.groupBox1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// table1
|
||||
//
|
||||
this.table1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.table1.ColumnModel = this.columnModel1;
|
||||
this.table1.EnableToolTips = true;
|
||||
this.table1.FullRowSelect = true;
|
||||
this.table1.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
||||
this.table1.Location = new System.Drawing.Point(12, 142);
|
||||
this.table1.Name = "table1";
|
||||
this.table1.NoItemsText = "当前列表没有任何项";
|
||||
this.table1.Size = new System.Drawing.Size(905, 362);
|
||||
this.table1.TabIndex = 20;
|
||||
this.table1.TableModel = this.tableModel1;
|
||||
this.table1.Text = "table1";
|
||||
this.table1.DoubleClick += new System.EventHandler(this.table1_DoubleClick);
|
||||
//
|
||||
// columnModel1
|
||||
//
|
||||
this.columnModel1.Columns.AddRange(new XPTable.Models.Column[] {
|
||||
this.ColName,
|
||||
this.ColPath,
|
||||
this.ColDes});
|
||||
//
|
||||
// ColName
|
||||
//
|
||||
this.ColName.Editable = false;
|
||||
this.ColName.Tag = null;
|
||||
this.ColName.Text = "名称";
|
||||
this.ColName.Width = 150;
|
||||
//
|
||||
// ColPath
|
||||
//
|
||||
this.ColPath.Editable = false;
|
||||
this.ColPath.Tag = null;
|
||||
this.ColPath.Text = "路径";
|
||||
this.ColPath.Width = 200;
|
||||
//
|
||||
// ColDes
|
||||
//
|
||||
this.ColDes.Editable = false;
|
||||
this.ColDes.Tag = null;
|
||||
this.ColDes.Text = "备注";
|
||||
this.ColDes.Width = 400;
|
||||
//
|
||||
// BtnClean
|
||||
//
|
||||
this.BtnClean.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnClean.Location = new System.Drawing.Point(216, 20);
|
||||
this.BtnClean.Name = "BtnClean";
|
||||
this.BtnClean.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnClean.TabIndex = 22;
|
||||
this.BtnClean.Text = "清理垃圾";
|
||||
this.toolTip1.SetToolTip(this.BtnClean, "清理debug目录下的pdb文件");
|
||||
this.BtnClean.UseVisualStyleBackColor = true;
|
||||
this.BtnClean.Click += new System.EventHandler(this.BtnClean_Click);
|
||||
//
|
||||
// BtnBatchZip
|
||||
//
|
||||
this.BtnBatchZip.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnBatchZip.Location = new System.Drawing.Point(531, 20);
|
||||
this.BtnBatchZip.Name = "BtnBatchZip";
|
||||
this.BtnBatchZip.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnBatchZip.TabIndex = 23;
|
||||
this.BtnBatchZip.Text = "一键打包";
|
||||
this.toolTip1.SetToolTip(this.BtnBatchZip, "一键混淆并打包当前项目生成的文件。");
|
||||
this.BtnBatchZip.UseVisualStyleBackColor = true;
|
||||
this.BtnBatchZip.Click += new System.EventHandler(this.BtnBatchZip_Click);
|
||||
//
|
||||
// LblState
|
||||
//
|
||||
this.LblState.AutoSize = true;
|
||||
this.LblState.Location = new System.Drawing.Point(10, 127);
|
||||
this.LblState.Name = "LblState";
|
||||
this.LblState.Size = new System.Drawing.Size(83, 12);
|
||||
this.LblState.TabIndex = 24;
|
||||
this.LblState.Text = "状态:准备就绪";
|
||||
//
|
||||
// BtnInsertUpdate
|
||||
//
|
||||
this.BtnInsertUpdate.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnInsertUpdate.Location = new System.Drawing.Point(321, 20);
|
||||
this.BtnInsertUpdate.Name = "BtnInsertUpdate";
|
||||
this.BtnInsertUpdate.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnInsertUpdate.TabIndex = 25;
|
||||
this.BtnInsertUpdate.Text = "插入更新日志";
|
||||
this.toolTip1.SetToolTip(this.BtnInsertUpdate, "将当前版本加入更新日志");
|
||||
this.BtnInsertUpdate.UseVisualStyleBackColor = true;
|
||||
this.BtnInsertUpdate.Click += new System.EventHandler(this.BtnInsertUpdate_Click);
|
||||
//
|
||||
// BtnUpdateDll
|
||||
//
|
||||
this.BtnUpdateDll.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnUpdateDll.Location = new System.Drawing.Point(6, 20);
|
||||
this.BtnUpdateDll.Name = "BtnUpdateDll";
|
||||
this.BtnUpdateDll.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnUpdateDll.TabIndex = 26;
|
||||
this.BtnUpdateDll.Text = "更新引用dll";
|
||||
this.toolTip1.SetToolTip(this.BtnUpdateDll, "将当前输出文件夹里的dll文件更新到最新版\r\n将当前项目文件里的引用dll位置修改至输出目录。");
|
||||
this.BtnUpdateDll.UseVisualStyleBackColor = true;
|
||||
this.BtnUpdateDll.Click += new System.EventHandler(this.BtnUpdateDll_Click);
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.groupBox1.Controls.Add(this.BtnUpdateDllVer);
|
||||
this.groupBox1.Controls.Add(this.BtnCreateFolder);
|
||||
this.groupBox1.Controls.Add(this.BtnUpdateDll);
|
||||
this.groupBox1.Controls.Add(this.BtnInsertUpdate);
|
||||
this.groupBox1.Controls.Add(this.BtnBatchZip);
|
||||
this.groupBox1.Controls.Add(this.BtnClean);
|
||||
this.groupBox1.Location = new System.Drawing.Point(12, 62);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(905, 62);
|
||||
this.groupBox1.TabIndex = 27;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "项目管理";
|
||||
//
|
||||
// BtnCreateFolder
|
||||
//
|
||||
this.BtnCreateFolder.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnCreateFolder.Location = new System.Drawing.Point(426, 20);
|
||||
this.BtnCreateFolder.Name = "BtnCreateFolder";
|
||||
this.BtnCreateFolder.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnCreateFolder.TabIndex = 27;
|
||||
this.BtnCreateFolder.Text = "创建毕方文件夹";
|
||||
this.BtnCreateFolder.UseVisualStyleBackColor = true;
|
||||
this.BtnCreateFolder.Click += new System.EventHandler(this.BtnCreateFolder_Click);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(10, 8);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(77, 12);
|
||||
this.label1.TabIndex = 29;
|
||||
this.label1.Text = "毕方项目路径";
|
||||
//
|
||||
// TxtFolder
|
||||
//
|
||||
this.TxtFolder.BackColor = System.Drawing.Color.White;
|
||||
this.TxtFolder.EmptyText = "";
|
||||
this.TxtFolder.Location = new System.Drawing.Point(12, 23);
|
||||
this.TxtFolder.MaxLength = 999999999;
|
||||
this.TxtFolder.Multiline = false;
|
||||
this.TxtFolder.Name = "TxtFolder";
|
||||
this.TxtFolder.OnlyNumeric = false;
|
||||
this.TxtFolder.PasswordChar = '\0';
|
||||
this.TxtFolder.ReadOnly = false;
|
||||
this.TxtFolder.SelectedText = "";
|
||||
this.TxtFolder.SelectionLength = 0;
|
||||
this.TxtFolder.SelectionStart = 0;
|
||||
this.TxtFolder.Size = new System.Drawing.Size(664, 33);
|
||||
this.TxtFolder.TabIndex = 28;
|
||||
this.TxtFolder.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtFolder.ToolTip = "";
|
||||
this.TxtFolder.WordWrap = true;
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(695, 8);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(47, 12);
|
||||
this.label2.TabIndex = 30;
|
||||
this.label2.Text = "USQ版本";
|
||||
//
|
||||
// TxtUSQ_Ver
|
||||
//
|
||||
this.TxtUSQ_Ver.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
|
||||
this.TxtUSQ_Ver.EmptyText = "";
|
||||
this.TxtUSQ_Ver.Location = new System.Drawing.Point(682, 24);
|
||||
this.TxtUSQ_Ver.MaxLength = 999999999;
|
||||
this.TxtUSQ_Ver.Multiline = false;
|
||||
this.TxtUSQ_Ver.Name = "TxtUSQ_Ver";
|
||||
this.TxtUSQ_Ver.OnlyNumeric = false;
|
||||
this.TxtUSQ_Ver.PasswordChar = '\0';
|
||||
this.TxtUSQ_Ver.ReadOnly = false;
|
||||
this.TxtUSQ_Ver.SelectedText = "";
|
||||
this.TxtUSQ_Ver.SelectionLength = 0;
|
||||
this.TxtUSQ_Ver.SelectionStart = 0;
|
||||
this.TxtUSQ_Ver.Size = new System.Drawing.Size(81, 33);
|
||||
this.TxtUSQ_Ver.TabIndex = 31;
|
||||
this.TxtUSQ_Ver.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
|
||||
this.TxtUSQ_Ver.ToolTip = "";
|
||||
this.TxtUSQ_Ver.WordWrap = true;
|
||||
//
|
||||
// BtnUpdateDllVer
|
||||
//
|
||||
this.BtnUpdateDllVer.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnUpdateDllVer.Location = new System.Drawing.Point(111, 20);
|
||||
this.BtnUpdateDllVer.Name = "BtnUpdateDllVer";
|
||||
this.BtnUpdateDllVer.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnUpdateDllVer.TabIndex = 28;
|
||||
this.BtnUpdateDllVer.Text = "更新dll版本";
|
||||
this.toolTip1.SetToolTip(this.BtnUpdateDllVer, "将当前输出文件夹里的dll文件更新到最新版");
|
||||
this.BtnUpdateDllVer.UseVisualStyleBackColor = true;
|
||||
this.BtnUpdateDllVer.Click += new System.EventHandler(this.BtnUpdateDllVer_Click);
|
||||
//
|
||||
// FrmPathInfo
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(929, 516);
|
||||
this.CloseButton = false;
|
||||
this.CloseButtonVisible = false;
|
||||
this.Controls.Add(this.TxtUSQ_Ver);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.TxtFolder);
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.Controls.Add(this.LblState);
|
||||
this.Controls.Add(this.table1);
|
||||
this.Name = "FrmPathInfo";
|
||||
this.Text = "项目";
|
||||
this.Load += new System.EventHandler(this.FrmPathInfo_Load);
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).EndInit();
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
private XPTable.Models.Table table1;
|
||||
private XPTable.Models.ColumnModel columnModel1;
|
||||
private XPTable.Models.TextColumn ColName;
|
||||
private XPTable.Models.TextColumn ColPath;
|
||||
private XPTable.Models.TextColumn ColDes;
|
||||
private XPTable.Models.TableModel tableModel1;
|
||||
private ryControls.ButtonEx BtnClean;
|
||||
private ryControls.ButtonEx BtnBatchZip;
|
||||
private System.Windows.Forms.Label LblState;
|
||||
private ryControls.ButtonEx BtnInsertUpdate;
|
||||
private ryControls.ButtonEx BtnUpdateDll;
|
||||
private System.Windows.Forms.ToolTip toolTip1;
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private ryControls.TextBoxEx2 TxtFolder;
|
||||
private ryControls.ButtonEx BtnCreateFolder;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private ryControls.TextBoxEx2 TxtUSQ_Ver;
|
||||
private ryControls.ButtonEx BtnUpdateDllVer;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,471 @@
|
||||
using Microsoft.Win32;
|
||||
using ryCommon;
|
||||
using ryCommonDb;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Windows.Forms;
|
||||
using System.Xml;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
using 开发辅助工具.Manager;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmPathInfo : DockContent
|
||||
{
|
||||
string SelectPath = "";
|
||||
public FrmPathInfo(string _Path)
|
||||
{
|
||||
SelectPath = _Path;
|
||||
InitializeComponent();
|
||||
LoadPath();
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取毕方标准项目根路径
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private string GetBFFolderPath()
|
||||
{
|
||||
var _path = SelectPath;
|
||||
if(System.IO.Directory.Exists(_path))
|
||||
{
|
||||
if (System.IO.File.Exists(_path + "\\查看项目.ryp"))
|
||||
{
|
||||
return _path;
|
||||
}
|
||||
}
|
||||
while (true)
|
||||
{
|
||||
_path = System.IO.Path.GetDirectoryName(_path.TrimEnd('\\')).TrimEnd('\\');
|
||||
if (System.IO.File.Exists(_path + "\\查看项目.ryp"))
|
||||
{
|
||||
return _path;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (_path.Length < 4) { break; }
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
private void LoadPath()
|
||||
{
|
||||
var _path = GetBFFolderPath();
|
||||
TxtFolder.Text = _path;
|
||||
if (_path!="")
|
||||
{
|
||||
var folder = _path;
|
||||
ryCommon.Ini ini = new Ini(folder + "\\查看项目.ryp");
|
||||
TxtUSQ_Ver.Text = ini.ReadIni("project", "usqver");
|
||||
AddPath(true,"Debug输出目录", "Bin\\Debug","包含调试信息的输出目录");
|
||||
AddPath(true, "Release输出目录", "Bin\\Release", "不包含调试信息的输出目录");
|
||||
AddPath(true,"源代码目录", "Source", "含有项目源码");
|
||||
AddPath(true, "安装包目录", "Publish", "对外发布的安装文件");
|
||||
AddPath(false, " - 免安装输出包目录", "Publish\\Green", "绿色免安装版本目录,通常为zip压缩包");
|
||||
AddPath(false, " - 安装输出包目录", "Publish\\Install", "需要安装的版本目录,通常为exe压缩包");
|
||||
AddPath(false, " - 输出底包目录", "Publish\\OriginalFiles", "输出底包,保留完整的文件结构,绿色版、安装包都以此来制作");
|
||||
AddPath(false, " - 升级输出包目录", "Publish\\UpdateFile", "升级包目录,通常为zip压缩包,非完整输出包");
|
||||
AddPath(true, "帮助文件目录", "Help", "帮助文档");
|
||||
AddPath(true, "外部资源目录", "Res", "项目用到的资源备份,例外图标、图片、第三方项目");
|
||||
AddPath(false, " - 第三方组件项目", "Res\\ThirdParty", "包含第三方组件的项目");
|
||||
AddPath(false, " - 图片文件夹", "Res\\Images", "含下载的项目图片");
|
||||
AddPath(true, "更新日志", "更新日志.txt", "当前项目更新日志文件");
|
||||
AddPath(true, "更新日志", "更新日志.md", "当前项目更新日志文件");
|
||||
AddPath(true, "更新日志", "CHANGELOG.md", "当前项目更新日志文件");
|
||||
AddPath(true, "自述文件", "README.md", "当前项目自述文件");
|
||||
void AddPath(bool bold,string name,string path,string des)
|
||||
{
|
||||
if (System.IO.File.Exists(folder + "\\" + path) || System.IO.Directory.Exists(folder + "\\" + path))
|
||||
{
|
||||
XPTable.Models.Row itemList = new XPTable.Models.Row
|
||||
{
|
||||
Tag = folder + "\\" + path
|
||||
};
|
||||
var cell_name = new XPTable.Models.Cell(name);
|
||||
if(bold)
|
||||
cell_name.ForeColor=Color.Blue;
|
||||
else
|
||||
{ cell_name.ForeColor = Color.Tomato; }
|
||||
itemList.Cells.Add(cell_name);
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(path));
|
||||
var cell = new XPTable.Models.Cell(des);
|
||||
cell.ForeColor = Color.Gray;
|
||||
itemList.Cells.Add(cell);
|
||||
table1.TableModel.Rows.Add(itemList);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
private void CloseApp()
|
||||
{
|
||||
Itrycn_Db.IsCloseConfirm = false;
|
||||
this.DockPanel.FindForm().Close();
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取Notepad++路径
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private string GetNotepadPlusPath()
|
||||
{
|
||||
var path = "";
|
||||
try
|
||||
{
|
||||
RegistryKey LMach = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64);
|
||||
RegistryKey softwareRun = LMach.OpenSubKey(@"SOFTWARE\Notepad++", true);
|
||||
if (softwareRun.GetValue("") != null)
|
||||
{
|
||||
string notepad_plus_path = softwareRun.GetValue("").ToString() + "\\notepad++.exe";
|
||||
if (System.IO.File.Exists(notepad_plus_path))
|
||||
{
|
||||
path = notepad_plus_path;
|
||||
}
|
||||
}
|
||||
softwareRun.Close();
|
||||
LMach.Close();
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
return path;
|
||||
}
|
||||
|
||||
private void FrmProject_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void table1_DoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
if (table1.SelectedItems.Length == 0) { return; }
|
||||
var path = table1.SelectedItems[0].Tag.ToString();
|
||||
if (System.IO.Directory.Exists(path))
|
||||
{
|
||||
ryCommon.RyFiles.OpenFile(path);
|
||||
}
|
||||
else if (System.IO.File.Exists(path))
|
||||
{
|
||||
if (System.IO.Path.GetExtension(path).ToLower() == ".txt")
|
||||
{
|
||||
string notepad_plus_path = GetNotepadPlusPath();
|
||||
if (System.IO.File.Exists(notepad_plus_path))
|
||||
{
|
||||
ryCommon.RyFiles.RunFile(notepad_plus_path, "\"" + path + "\"");
|
||||
}
|
||||
else
|
||||
{
|
||||
ryCommon.RyFiles.OpenFile(path);
|
||||
}
|
||||
}
|
||||
else if (System.IO.Path.GetExtension(path).ToLower() == ".md")
|
||||
{
|
||||
ryCommon.RyFiles.OpenFile(path);
|
||||
}
|
||||
else
|
||||
{
|
||||
ryCommon.RyFiles.OpenFolderGotoFile(path);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void BtnClean_Click(object sender, EventArgs e)
|
||||
{
|
||||
switch (MessageBox.Show("是否要进行清理不必要的文件,例如*.pdb", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information))
|
||||
{
|
||||
case DialogResult.No:
|
||||
return;
|
||||
}
|
||||
BtnClean.Enabled = false;
|
||||
var folder = GetBFFolderPath();
|
||||
if(folder!="")
|
||||
{
|
||||
if (System.IO.Directory.Exists(folder + "\\Bin\\Debug"))
|
||||
{
|
||||
Itrycn_Db.DeleteFiles(folder + "\\Bin\\Debug", "*.pdb");
|
||||
Itrycn_Db.DeleteFiles(folder + "\\Bin\\Debug", "*.dcu");
|
||||
}
|
||||
if (System.IO.Directory.Exists(folder + "\\Bin\\Release"))
|
||||
{
|
||||
Itrycn_Db.DeleteFiles(folder + "\\Bin\\Release", "*.pdb");
|
||||
Itrycn_Db.DeleteFiles(folder + "\\Bin\\Release", "*.dcu");
|
||||
}
|
||||
if (System.IO.Directory.Exists(folder + "\\Source"))
|
||||
{
|
||||
Itrycn_Db.DeleteFiles(folder + "\\Source", "*.pdb");
|
||||
Itrycn_Db.DeleteFiles(folder + "\\Source", "*.dcu");
|
||||
}
|
||||
}
|
||||
BtnClean.Enabled = true;
|
||||
MessageBox.Show("清理完成。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 等待进程执行完毕
|
||||
/// </summary>
|
||||
/// <param name="cmd_text"></param>
|
||||
/// <returns></returns>
|
||||
public static string Read_Prog(string exe,string cmd_text)
|
||||
{
|
||||
String cmd = exe;
|
||||
Process p = new Process
|
||||
{
|
||||
StartInfo = new System.Diagnostics.ProcessStartInfo
|
||||
{
|
||||
FileName = cmd,//设定程序名
|
||||
Arguments = cmd_text,
|
||||
UseShellExecute = false, //关闭shell的使用
|
||||
RedirectStandardInput = true, //重定向标准输入
|
||||
RedirectStandardOutput = true, //重定向标准输出
|
||||
RedirectStandardError = false, //重定向错误输出
|
||||
CreateNoWindow = true//设置不显示窗口
|
||||
}
|
||||
};
|
||||
p.Start();
|
||||
string result = p.StandardOutput.ReadToEnd();
|
||||
p.WaitForExit(20000);
|
||||
p.Close();
|
||||
return result;
|
||||
}
|
||||
private void BtnBatchZip_Click(object sender, EventArgs e)
|
||||
{
|
||||
BtnBatchZip.Enabled = false;
|
||||
Thread th = new Thread(Start);
|
||||
th.Start();
|
||||
void Start()
|
||||
{
|
||||
var com_mode = "Debug";
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
|
||||
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
|
||||
{
|
||||
var ds = db.ReadData("select * from Settings where name='Setting'");
|
||||
if (mydb.HaveData(ds))
|
||||
{
|
||||
var row = mydb.GetData(ds);
|
||||
ryCommon.Storage mStor = new ryCommon.Storage(row["value"].ToString());
|
||||
mStor.SelectNodeBySet();
|
||||
var ReactorPath = mStor.GetAttrValue("ReactorPath");
|
||||
var WinRARPath = mStor.GetAttrValue("WinRARPath");
|
||||
if (WinRARPath == "")
|
||||
{
|
||||
if (System.IO.File.Exists(@"C:\Program Files\WinRAR\WinRAR.exe"))
|
||||
{
|
||||
WinRARPath = @"C:\Program Files\WinRAR\WinRAR.exe";
|
||||
}
|
||||
}
|
||||
var bf_folder = GetBFFolderPath();
|
||||
if (bf_folder != "")
|
||||
{
|
||||
ryCommon.Ini ini = new Ini(bf_folder + "\\查看项目.ryp");
|
||||
var eng_name = ini.ReadIni("project", "engname");
|
||||
var proglang = ini.ReadIni("project", "proglang");
|
||||
var ouput_folder = bf_folder + "\\Bin\\" + com_mode + "\\" + eng_name;
|
||||
var file_ver = "";
|
||||
if (System.IO.File.Exists(ouput_folder + "\\" + eng_name + ".exe"))
|
||||
{
|
||||
FileVersionInfo fileVerInfo = System.Diagnostics.FileVersionInfo.GetVersionInfo(ouput_folder + "\\" + eng_name + ".exe");
|
||||
file_ver = fileVerInfo.ProductVersion;
|
||||
}
|
||||
if (proglang == "c#")
|
||||
{
|
||||
ShowState("正在进行混淆...");
|
||||
if (System.IO.File.Exists(bf_folder + "\\Bin\\混淆_" + com_mode + ".nrproj"))
|
||||
{
|
||||
var cmd = Read_Prog(ReactorPath, "-project \"" + bf_folder + "\\Bin\\混淆_" + com_mode + ".nrproj\"");
|
||||
}
|
||||
}
|
||||
ShowState("正在清理不重要的缓存...");
|
||||
ryCommon.RyFiles.DeleteFile(ouput_folder + "\\Secure\\*.pdb");
|
||||
ShowState("复制混淆文件到底包目录...");
|
||||
ryCommon.RyFiles.CopyFile(ouput_folder + "\\Secure\\*", bf_folder + "\\Publish\\OriginalFiles\\");
|
||||
#region 复制自定义规则文件到底包目录
|
||||
ShowState("复制自定义规则文件到底包目录...");
|
||||
var Publish = ryCommon.RyFiles.ReadAllLines(bf_folder + "\\Publish\\Publish.set");
|
||||
for (int m = 0; m < Publish.Length; m++)
|
||||
{
|
||||
var line = Publish[m].Trim();
|
||||
if (line == "" || line.IndexOf("#") == 0) { continue; }
|
||||
if (line.IndexOfEx("del:") == 0)
|
||||
{
|
||||
ryCommon.RyFiles.DeleteFile(bf_folder + "\\Publish\\OriginalFiles\\" + line.Substring(4));
|
||||
}
|
||||
else if (line.IndexOfEx("copy:") == 0)
|
||||
{
|
||||
var from_to = line.Substring(5).Replace("->", "|").Split('|');
|
||||
if (from_to.Length == 2)
|
||||
{
|
||||
var from_path = from_to[0];
|
||||
var to_path = from_to[1];
|
||||
ryCommon.RyFiles.CopyFile(ouput_folder + "\\" + from_path, bf_folder + "\\Publish\\OriginalFiles\\" + to_path);
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
ShowState("正在打包...");
|
||||
var cmd2 = Read_Prog(WinRARPath, "-r -ep1 a \"" + bf_folder + "\\Publish\\Green\\" + eng_name + ".zip\" \"" + bf_folder + "\\Publish\\OriginalFiles\\\"");
|
||||
RyFiles.CopyFile(bf_folder + "\\Publish\\Green\\" + eng_name + ".zip", bf_folder + "\\Publish\\Green\\HistoryVer\\" + eng_name + "_" + file_ver + ".zip");
|
||||
ShowState("打包完成...");
|
||||
}
|
||||
}
|
||||
}
|
||||
db.Free();
|
||||
void ShowState(string text)
|
||||
{
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
LblState.Text = "状态:" + text;
|
||||
}));
|
||||
}
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
BtnBatchZip.Enabled = true;
|
||||
}));
|
||||
}
|
||||
}
|
||||
private void GetVersBySln(string path)
|
||||
{
|
||||
RyProject project = new RyProject();
|
||||
string update_logs_text = "";
|
||||
if (System.IO.File.Exists(path))
|
||||
{
|
||||
var sln_text = ryCommon.RyFiles.ReadAllLines(path);
|
||||
for (int i = 0; i < sln_text.Length; i++)
|
||||
{
|
||||
if(sln_text[i].StartsWith("Project"))
|
||||
{
|
||||
var item = sln_text[i].Replace(" = ",",").Split(',');
|
||||
if (item.Length>=3)
|
||||
{
|
||||
var project_name = item[1].Trim().Trim('"');
|
||||
var project_path =System.IO.Path.GetDirectoryName(path).TrimEnd('\\')+"\\"+item[2].Trim().Trim('"');
|
||||
var ver = project.GetAssemblyVersion(project_path);
|
||||
if (ver != "")
|
||||
{
|
||||
if (update_logs_text != "") { update_logs_text += "\r\n"; }
|
||||
update_logs_text +="#### "+ project_name + " V" + ver+ "\r\n暂无\r\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (update_logs_text != "")
|
||||
{
|
||||
var _path = GetBFFolderPath();
|
||||
if (_path != "")
|
||||
{
|
||||
var update_text = ryCommon.RyFiles.ReadAllText(_path + "\\CHANGELOG.md");
|
||||
RyFiles.WriteAllText(_path+ "\\CHANGELOG.md", "### " + DateTime.Now.ToString("yyyy-MM-dd") + "更新\r\n------\r\n"+ update_logs_text + update_text, Encoding.UTF8);
|
||||
RyFiles.OpenFile(_path + "\\CHANGELOG.md");
|
||||
}
|
||||
}
|
||||
}
|
||||
private void BtnInsertUpdate_Click(object sender, EventArgs e)
|
||||
{
|
||||
var _path = GetBFFolderPath();
|
||||
if (_path != "")
|
||||
{
|
||||
var files = System.IO.Directory.GetFiles(_path+"\\Source");
|
||||
for (int i = 0; i < files.Length; i++)
|
||||
{
|
||||
var ext = System.IO.Path.GetExtension(files[i]).ToLower();
|
||||
if(ext==".sln")
|
||||
{
|
||||
GetVersBySln(files[i]);
|
||||
return;
|
||||
}
|
||||
}
|
||||
var dirs = System.IO.Directory.GetDirectories(_path + "\\Source");
|
||||
for (int i = 0; i < dirs.Length; i++)
|
||||
{
|
||||
var files2 = System.IO.Directory.GetFiles(dirs[i]);
|
||||
for (int m = 0; m < files2.Length; m++)
|
||||
{
|
||||
var ext = System.IO.Path.GetExtension(files2[m]).ToLower();
|
||||
if (ext == ".sln")
|
||||
{
|
||||
GetVersBySln(files2[m]);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
var sln_path = _path + "\\CHANGELOG.md";
|
||||
}
|
||||
}
|
||||
|
||||
private void BtnUpdateDll_Click(object sender, EventArgs e)
|
||||
{
|
||||
BtnUpdateDll.Enabled = false;
|
||||
int error = 0;
|
||||
RyProject project = new RyProject
|
||||
{
|
||||
CopyDllToBin = true,
|
||||
ChangedOutputPath = false
|
||||
};
|
||||
var bf_folder = GetBFFolderPath();
|
||||
if(bf_folder!="")
|
||||
{
|
||||
error+= project.UpdateCSproj(bf_folder+"\\Source");
|
||||
}
|
||||
error +=project.UpdateDlls(bf_folder+"\\Bin",out string _error_str);
|
||||
BtnUpdateDll.Enabled = true;
|
||||
if (error == 0)
|
||||
{
|
||||
MessageBox.Show("更新dll完成。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("更新dll完成,共失败"+error+ "项。\r\n\r\n" + _error_str, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void FrmPathInfo_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void BtnCreateFolder_Click(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.Ini ini= new Ini(TxtFolder.Text+ "\\查看项目.ryp");
|
||||
FrmCreateProject frm = new FrmCreateProject();
|
||||
frm.TxtFolder.Text = TxtFolder.Text;
|
||||
frm.ChkUnCreateProject.Checked = true;
|
||||
frm.TxtProjectEngName.Text = ini.ReadIni("project", "engname");
|
||||
frm.TxtProjectName.Text = ini.ReadIni("project", "name");
|
||||
frm.StartPosition = FormStartPosition.CenterParent;
|
||||
frm.ShowDialog();
|
||||
}
|
||||
|
||||
private void BtnUpdateDllVer_Click(object sender, EventArgs e)
|
||||
{
|
||||
BtnUpdateDllVer.Enabled = false;
|
||||
int error = 0;
|
||||
RyProject project = new RyProject
|
||||
{
|
||||
CopyDllToBin = true,
|
||||
ChangedOutputPath = false
|
||||
};
|
||||
var bf_folder = GetBFFolderPath();
|
||||
var _error_str = "";
|
||||
if (bf_folder != "")
|
||||
{
|
||||
error += project.UpdateDlls(bf_folder + "\\Bin", out _error_str);
|
||||
}
|
||||
BtnUpdateDllVer.Enabled = true;
|
||||
if (error == 0)
|
||||
{
|
||||
MessageBox.Show("更新dll完成。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("更新dll完成,共失败" + error + "项。\r\n\r\n"+ _error_str, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,132 @@
|
||||
<?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>
|
||||
<metadata name="columnModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="tableModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>158, 17</value>
|
||||
</metadata>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>285, 17</value>
|
||||
</metadata>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>285, 17</value>
|
||||
</metadata>
|
||||
</root>
|
||||
+304
@@ -0,0 +1,304 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmProject
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
this.BtnCustomMessageBox = new ryControls.ButtonEx();
|
||||
this.BtnCopyCMD = new System.Windows.Forms.Button();
|
||||
this.BtnOpenOutput = new System.Windows.Forms.Button();
|
||||
this.BtnMessageBox = new ryControls.ButtonEx();
|
||||
this.table1 = new XPTable.Models.Table();
|
||||
this.columnModel1 = new XPTable.Models.ColumnModel();
|
||||
this.ColName = new XPTable.Models.TextColumn();
|
||||
this.ColPath = new XPTable.Models.TextColumn();
|
||||
this.ColDes = new XPTable.Models.TextColumn();
|
||||
this.tableModel1 = new XPTable.Models.TableModel();
|
||||
this.BtnClean = new ryControls.ButtonEx();
|
||||
this.BtnBatchZip = new ryControls.ButtonEx();
|
||||
this.LblState = new System.Windows.Forms.Label();
|
||||
this.BtnInsertUpdate = new ryControls.ButtonEx();
|
||||
this.BtnUpdateDll = new ryControls.ButtonEx();
|
||||
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
|
||||
this.BtnUpdateVer = new ryControls.ButtonEx();
|
||||
this.BtnUpdateDllVer = new ryControls.ButtonEx();
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.groupBox2 = new System.Windows.Forms.GroupBox();
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).BeginInit();
|
||||
this.groupBox1.SuspendLayout();
|
||||
this.groupBox2.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// BtnCustomMessageBox
|
||||
//
|
||||
this.BtnCustomMessageBox.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnCustomMessageBox.Location = new System.Drawing.Point(111, 19);
|
||||
this.BtnCustomMessageBox.Name = "BtnCustomMessageBox";
|
||||
this.BtnCustomMessageBox.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnCustomMessageBox.TabIndex = 12;
|
||||
this.BtnCustomMessageBox.Text = "自定义对话框";
|
||||
this.BtnCustomMessageBox.UseVisualStyleBackColor = true;
|
||||
this.BtnCustomMessageBox.Click += new System.EventHandler(this.BtnCustomMessageBox_Click);
|
||||
//
|
||||
// BtnCopyCMD
|
||||
//
|
||||
this.BtnCopyCMD.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.BtnCopyCMD.Location = new System.Drawing.Point(775, 12);
|
||||
this.BtnCopyCMD.Name = "BtnCopyCMD";
|
||||
this.BtnCopyCMD.Size = new System.Drawing.Size(142, 38);
|
||||
this.BtnCopyCMD.TabIndex = 11;
|
||||
this.BtnCopyCMD.Text = "设置自动更新版本号";
|
||||
this.BtnCopyCMD.UseVisualStyleBackColor = true;
|
||||
this.BtnCopyCMD.Click += new System.EventHandler(this.BtnCopyCMD_Click);
|
||||
//
|
||||
// BtnOpenOutput
|
||||
//
|
||||
this.BtnOpenOutput.Location = new System.Drawing.Point(12, 12);
|
||||
this.BtnOpenOutput.Name = "BtnOpenOutput";
|
||||
this.BtnOpenOutput.Size = new System.Drawing.Size(142, 38);
|
||||
this.BtnOpenOutput.TabIndex = 9;
|
||||
this.BtnOpenOutput.Text = "打开输出文件夹";
|
||||
this.BtnOpenOutput.UseVisualStyleBackColor = true;
|
||||
this.BtnOpenOutput.Click += new System.EventHandler(this.BtnOpenOutput_Click);
|
||||
//
|
||||
// BtnMessageBox
|
||||
//
|
||||
this.BtnMessageBox.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnMessageBox.Location = new System.Drawing.Point(6, 19);
|
||||
this.BtnMessageBox.Name = "BtnMessageBox";
|
||||
this.BtnMessageBox.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnMessageBox.TabIndex = 8;
|
||||
this.BtnMessageBox.Text = "对话框代码";
|
||||
this.BtnMessageBox.UseVisualStyleBackColor = true;
|
||||
this.BtnMessageBox.Click += new System.EventHandler(this.BtnMessageBox_Click);
|
||||
//
|
||||
// table1
|
||||
//
|
||||
this.table1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.table1.ColumnModel = this.columnModel1;
|
||||
this.table1.EnableToolTips = true;
|
||||
this.table1.FullRowSelect = true;
|
||||
this.table1.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
||||
this.table1.Location = new System.Drawing.Point(12, 208);
|
||||
this.table1.Name = "table1";
|
||||
this.table1.NoItemsText = "当前列表没有任何项";
|
||||
this.table1.Size = new System.Drawing.Size(905, 296);
|
||||
this.table1.TabIndex = 20;
|
||||
this.table1.TableModel = this.tableModel1;
|
||||
this.table1.Text = "table1";
|
||||
this.table1.DoubleClick += new System.EventHandler(this.table1_DoubleClick);
|
||||
//
|
||||
// columnModel1
|
||||
//
|
||||
this.columnModel1.Columns.AddRange(new XPTable.Models.Column[] {
|
||||
this.ColName,
|
||||
this.ColPath,
|
||||
this.ColDes});
|
||||
//
|
||||
// ColName
|
||||
//
|
||||
this.ColName.Editable = false;
|
||||
this.ColName.Tag = null;
|
||||
this.ColName.Text = "名称";
|
||||
this.ColName.Width = 150;
|
||||
//
|
||||
// ColPath
|
||||
//
|
||||
this.ColPath.Editable = false;
|
||||
this.ColPath.Tag = null;
|
||||
this.ColPath.Text = "路径";
|
||||
this.ColPath.Width = 200;
|
||||
//
|
||||
// ColDes
|
||||
//
|
||||
this.ColDes.Editable = false;
|
||||
this.ColDes.Tag = null;
|
||||
this.ColDes.Text = "备注";
|
||||
this.ColDes.Width = 400;
|
||||
//
|
||||
// BtnClean
|
||||
//
|
||||
this.BtnClean.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnClean.Location = new System.Drawing.Point(216, 20);
|
||||
this.BtnClean.Name = "BtnClean";
|
||||
this.BtnClean.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnClean.TabIndex = 22;
|
||||
this.BtnClean.Text = "清理垃圾";
|
||||
this.toolTip1.SetToolTip(this.BtnClean, "清理debug目录下的pdb、dcu文件");
|
||||
this.BtnClean.UseVisualStyleBackColor = true;
|
||||
this.BtnClean.Click += new System.EventHandler(this.BtnClean_Click);
|
||||
//
|
||||
// BtnBatchZip
|
||||
//
|
||||
this.BtnBatchZip.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnBatchZip.Location = new System.Drawing.Point(531, 20);
|
||||
this.BtnBatchZip.Name = "BtnBatchZip";
|
||||
this.BtnBatchZip.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnBatchZip.TabIndex = 23;
|
||||
this.BtnBatchZip.Text = "一键打包";
|
||||
this.toolTip1.SetToolTip(this.BtnBatchZip, "一键混淆并打包当前项目生成的文件。");
|
||||
this.BtnBatchZip.UseVisualStyleBackColor = true;
|
||||
this.BtnBatchZip.Click += new System.EventHandler(this.BtnBatchZip_Click);
|
||||
//
|
||||
// LblState
|
||||
//
|
||||
this.LblState.AutoSize = true;
|
||||
this.LblState.Location = new System.Drawing.Point(10, 190);
|
||||
this.LblState.Name = "LblState";
|
||||
this.LblState.Size = new System.Drawing.Size(83, 12);
|
||||
this.LblState.TabIndex = 24;
|
||||
this.LblState.Text = "状态:准备就绪";
|
||||
//
|
||||
// BtnInsertUpdate
|
||||
//
|
||||
this.BtnInsertUpdate.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnInsertUpdate.Location = new System.Drawing.Point(321, 20);
|
||||
this.BtnInsertUpdate.Name = "BtnInsertUpdate";
|
||||
this.BtnInsertUpdate.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnInsertUpdate.TabIndex = 25;
|
||||
this.BtnInsertUpdate.Text = "插入更新日志";
|
||||
this.toolTip1.SetToolTip(this.BtnInsertUpdate, "将当前版本加入更新日志");
|
||||
this.BtnInsertUpdate.UseVisualStyleBackColor = true;
|
||||
this.BtnInsertUpdate.Click += new System.EventHandler(this.BtnInsertUpdate_Click);
|
||||
//
|
||||
// BtnUpdateDll
|
||||
//
|
||||
this.BtnUpdateDll.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnUpdateDll.Location = new System.Drawing.Point(6, 20);
|
||||
this.BtnUpdateDll.Name = "BtnUpdateDll";
|
||||
this.BtnUpdateDll.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnUpdateDll.TabIndex = 26;
|
||||
this.BtnUpdateDll.Text = "更新引用dll";
|
||||
this.toolTip1.SetToolTip(this.BtnUpdateDll, "将当前输出文件夹里的dll文件更新到最新版\r\n将当前项目文件里的引用dll位置修改至输出目录。");
|
||||
this.BtnUpdateDll.UseVisualStyleBackColor = true;
|
||||
this.BtnUpdateDll.Click += new System.EventHandler(this.BtnUpdateDll_Click);
|
||||
//
|
||||
// BtnUpdateVer
|
||||
//
|
||||
this.BtnUpdateVer.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnUpdateVer.Location = new System.Drawing.Point(426, 20);
|
||||
this.BtnUpdateVer.Name = "BtnUpdateVer";
|
||||
this.BtnUpdateVer.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnUpdateVer.TabIndex = 27;
|
||||
this.BtnUpdateVer.Text = "更新版本号";
|
||||
this.toolTip1.SetToolTip(this.BtnUpdateVer, "每点一次自动更新一下版本号。");
|
||||
this.BtnUpdateVer.UseVisualStyleBackColor = true;
|
||||
this.BtnUpdateVer.Click += new System.EventHandler(this.BtnUpdateVer_Click);
|
||||
//
|
||||
// BtnUpdateDllVer
|
||||
//
|
||||
this.BtnUpdateDllVer.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnUpdateDllVer.Location = new System.Drawing.Point(111, 20);
|
||||
this.BtnUpdateDllVer.Name = "BtnUpdateDllVer";
|
||||
this.BtnUpdateDllVer.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnUpdateDllVer.TabIndex = 29;
|
||||
this.BtnUpdateDllVer.Text = "更新dll版本";
|
||||
this.toolTip1.SetToolTip(this.BtnUpdateDllVer, "将当前输出文件夹里的dll文件更新到最新版");
|
||||
this.BtnUpdateDllVer.UseVisualStyleBackColor = true;
|
||||
this.BtnUpdateDllVer.Click += new System.EventHandler(this.BtnUpdateDllVer_Click);
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.groupBox1.Controls.Add(this.BtnUpdateDllVer);
|
||||
this.groupBox1.Controls.Add(this.BtnUpdateVer);
|
||||
this.groupBox1.Controls.Add(this.BtnUpdateDll);
|
||||
this.groupBox1.Controls.Add(this.BtnInsertUpdate);
|
||||
this.groupBox1.Controls.Add(this.BtnBatchZip);
|
||||
this.groupBox1.Controls.Add(this.BtnClean);
|
||||
this.groupBox1.Location = new System.Drawing.Point(12, 120);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(905, 62);
|
||||
this.groupBox1.TabIndex = 27;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "项目管理";
|
||||
//
|
||||
// groupBox2
|
||||
//
|
||||
this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.groupBox2.Controls.Add(this.BtnMessageBox);
|
||||
this.groupBox2.Controls.Add(this.BtnCustomMessageBox);
|
||||
this.groupBox2.Location = new System.Drawing.Point(12, 56);
|
||||
this.groupBox2.Name = "groupBox2";
|
||||
this.groupBox2.Size = new System.Drawing.Size(905, 60);
|
||||
this.groupBox2.TabIndex = 28;
|
||||
this.groupBox2.TabStop = false;
|
||||
this.groupBox2.Text = "快速代码";
|
||||
//
|
||||
// FrmProject
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(929, 516);
|
||||
this.CloseButton = false;
|
||||
this.CloseButtonVisible = false;
|
||||
this.Controls.Add(this.groupBox2);
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.Controls.Add(this.LblState);
|
||||
this.Controls.Add(this.table1);
|
||||
this.Controls.Add(this.BtnCopyCMD);
|
||||
this.Controls.Add(this.BtnOpenOutput);
|
||||
this.Name = "FrmProject";
|
||||
this.Text = "项目";
|
||||
this.Load += new System.EventHandler(this.FrmProject_Load);
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).EndInit();
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.groupBox2.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private ryControls.ButtonEx BtnCustomMessageBox;
|
||||
private System.Windows.Forms.Button BtnCopyCMD;
|
||||
private System.Windows.Forms.Button BtnOpenOutput;
|
||||
private ryControls.ButtonEx BtnMessageBox;
|
||||
private XPTable.Models.Table table1;
|
||||
private XPTable.Models.ColumnModel columnModel1;
|
||||
private XPTable.Models.TextColumn ColName;
|
||||
private XPTable.Models.TextColumn ColPath;
|
||||
private XPTable.Models.TextColumn ColDes;
|
||||
private XPTable.Models.TableModel tableModel1;
|
||||
private ryControls.ButtonEx BtnClean;
|
||||
private ryControls.ButtonEx BtnBatchZip;
|
||||
private System.Windows.Forms.Label LblState;
|
||||
private ryControls.ButtonEx BtnInsertUpdate;
|
||||
private ryControls.ButtonEx BtnUpdateDll;
|
||||
private System.Windows.Forms.ToolTip toolTip1;
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
private ryControls.ButtonEx BtnUpdateVer;
|
||||
private System.Windows.Forms.GroupBox groupBox2;
|
||||
private ryControls.ButtonEx BtnUpdateDllVer;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,592 @@
|
||||
using Microsoft.Win32;
|
||||
using ryCommon;
|
||||
using ryCommonDb;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Diagnostics;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Windows.Forms;
|
||||
using System.Xml;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
using 开发辅助工具.Manager;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmProject : DockContent
|
||||
{
|
||||
public FrmProject(string ProjectPath)
|
||||
{
|
||||
_ProjectPath = ProjectPath;
|
||||
InitializeComponent();
|
||||
try
|
||||
{
|
||||
if (_ProjectPath == "") { return; }
|
||||
System.Xml.XmlDocument xml = new System.Xml.XmlDocument();
|
||||
xml.Load(_ProjectPath);
|
||||
var xmlnsm = new XmlNamespaceManager(xml.NameTable);
|
||||
xmlnsm.AddNamespace("d", xml.DocumentElement.NamespaceURI);
|
||||
var root = @"d:Project//d:PropertyGroup//d:";
|
||||
var project_name = GetValue("AssemblyName");
|
||||
if (project_name != "") { Text = project_name; }
|
||||
#region 读取图标
|
||||
var ApplicationIcon = GetValue("ApplicationIcon");
|
||||
ApplicationIcon = System.IO.Path.GetDirectoryName(_ProjectPath) + "\\" + ApplicationIcon;
|
||||
if (System.IO.File.Exists(ApplicationIcon))
|
||||
{
|
||||
try
|
||||
{
|
||||
Icon = new Icon(ApplicationIcon);
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
LoadPath();
|
||||
string GetValue(string name)
|
||||
{
|
||||
var node = xml.SelectSingleNode(root + name, xmlnsm);
|
||||
if (node != null)
|
||||
{
|
||||
return node.InnerText;
|
||||
}
|
||||
return "";
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取毕方标准项目根路径
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private string GetBFFolderPath()
|
||||
{
|
||||
var _path = _ProjectPath;
|
||||
while (true)
|
||||
{
|
||||
_path = System.IO.Path.GetDirectoryName(_path.TrimEnd('\\')).TrimEnd('\\');
|
||||
if (System.IO.File.Exists(_path + "\\查看项目.ryp"))
|
||||
{
|
||||
return _path;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (_path.Length < 4) { break; }
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
private void LoadPath()
|
||||
{
|
||||
var _path = GetBFFolderPath();
|
||||
if (_path!="")
|
||||
{
|
||||
var folder = _path;
|
||||
AddPath(true,"Debug输出目录", "Bin\\Debug","包含调试信息的输出目录");
|
||||
AddPath(true, "Release输出目录", "Bin\\Release", "不包含调试信息的输出目录");
|
||||
AddPath(true,"源代码目录", "Source", "含有项目源码");
|
||||
AddPath(true, "安装包目录", "Publish", "对外发布的安装文件");
|
||||
AddPath(false, " - 免安装输出包目录", "Publish\\Green", "绿色免安装版本目录,通常为zip压缩包");
|
||||
AddPath(false, " - 安装输出包目录", "Publish\\Install", "需要安装的版本目录,通常为exe压缩包");
|
||||
AddPath(false, " - 输出底包目录", "Publish\\OriginalFiles", "输出底包,保留完整的文件结构,绿色版、安装包都以此来制作");
|
||||
AddPath(false, " - 升级输出包目录", "Publish\\UpdateFile", "升级包目录,通常为zip压缩包,非完整输出包");
|
||||
AddPath(true, "帮助文件目录", "Help", "帮助文档");
|
||||
AddPath(true, "外部资源目录", "Res", "项目用到的资源备份,例外图标、图片、第三方项目");
|
||||
AddPath(false, " - 第三方组件项目", "Res\\ThirdParty", "包含第三方组件的项目");
|
||||
AddPath(false, " - 图片文件夹", "Res\\Images", "含下载的项目图片");
|
||||
AddPath(true, "更新日志", "更新日志.txt", "当前项目更新日志文件");
|
||||
AddPath(true, "更新日志", "更新日志.md", "当前项目更新日志文件");
|
||||
AddPath(true, "更新日志", "CHANGELOG.md", "当前项目更新日志文件");
|
||||
AddPath(true, "自述文件", "README.md", "当前项目自述文件");
|
||||
void AddPath(bool bold,string name,string path,string des)
|
||||
{
|
||||
if (System.IO.File.Exists(folder + "\\" + path) || System.IO.Directory.Exists(folder + "\\" + path))
|
||||
{
|
||||
XPTable.Models.Row itemList = new XPTable.Models.Row
|
||||
{
|
||||
Tag = folder + "\\" + path
|
||||
};
|
||||
var cell_name = new XPTable.Models.Cell(name);
|
||||
if(bold)
|
||||
cell_name.ForeColor=Color.Blue;
|
||||
else
|
||||
{ cell_name.ForeColor = Color.Tomato; }
|
||||
itemList.Cells.Add(cell_name);
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(path));
|
||||
var cell = new XPTable.Models.Cell(des);
|
||||
cell.ForeColor = Color.Gray;
|
||||
itemList.Cells.Add(cell);
|
||||
table1.TableModel.Rows.Add(itemList);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
string _ProjectPath = "";
|
||||
private string GetPath(string _path)
|
||||
{
|
||||
string tmp_path = _path;
|
||||
if (_path.IndexOf("..") == 0)
|
||||
{
|
||||
tmp_path = System.IO.Path.GetDirectoryName(System.IO.Path.GetDirectoryName(_ProjectPath).Trim('\\'));
|
||||
tmp_path = tmp_path + "\\" + _path.Substring(2);
|
||||
}
|
||||
else if (_path.IndexOf(".") == 0)
|
||||
{
|
||||
tmp_path = System.IO.Path.GetDirectoryName(_ProjectPath);
|
||||
tmp_path = tmp_path + "\\" + _path.Substring(1);
|
||||
}
|
||||
else if (_path.IndexOf(":") < 0)
|
||||
{
|
||||
tmp_path = System.IO.Path.GetDirectoryName(_ProjectPath);
|
||||
tmp_path = tmp_path + "\\" + _path;
|
||||
}
|
||||
return tmp_path.Replace("\\\\", "\\");
|
||||
}
|
||||
private string GetDebugPath()
|
||||
{
|
||||
if (_ProjectPath == "") { return ""; }
|
||||
System.Xml.XmlDocument xml = new System.Xml.XmlDocument();
|
||||
xml.Load(_ProjectPath);
|
||||
var xmlnsm = new XmlNamespaceManager(xml.NameTable);
|
||||
xmlnsm.AddNamespace("d", xml.DocumentElement.NamespaceURI);
|
||||
var node = xml.SelectSingleNode(@"d:Project//d:PropertyGroup//d:OutputPath", xmlnsm);
|
||||
if (node != null)
|
||||
{
|
||||
string path = node.InnerText;
|
||||
path = GetPath(path);
|
||||
return path;
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
private void BtnCopyCMD_Click(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.RyFiles.CopyToClip("\"" + Application.ExecutablePath + "\" ver \"$(ProjectDir)\"");
|
||||
if (_ProjectPath == "") { MessageBox.Show("当前项目无效,无法设置", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); return; }
|
||||
System.Xml.XmlDocument xml = new System.Xml.XmlDocument();
|
||||
xml.Load(_ProjectPath);
|
||||
var xmlnsm = new XmlNamespaceManager(xml.NameTable);
|
||||
xmlnsm.AddNamespace("d", xml.DocumentElement.NamespaceURI);
|
||||
var node = xml.SelectSingleNode(@"d:Project//d:PropertyGroup//d:PreBuildEvent", xmlnsm);
|
||||
if (node != null)
|
||||
{
|
||||
if (node.InnerText == "")
|
||||
{
|
||||
node.InnerText = "\"" + Application.ExecutablePath + "\" ver \"$(ProjectDir)\"";
|
||||
xml.Save(_ProjectPath);
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("当前项目已经存在生成动作,为防止误删,请手工操作。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
return;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
XmlElement ww = xml.CreateElement("PropertyGroup", xml.DocumentElement.NamespaceURI);
|
||||
XmlElement ww2 = xml.CreateElement("PreBuildEvent", xml.DocumentElement.NamespaceURI);
|
||||
//ww.("xmlns");
|
||||
ww2.InnerText = "\"" + Application.ExecutablePath + "\" ver \"$(ProjectDir)\"";
|
||||
xml.DocumentElement.AppendChild(ww);
|
||||
ww.AppendChild(ww2);
|
||||
xml.Save(_ProjectPath);
|
||||
}
|
||||
MessageBox.Show("写入成功。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
private void CloseApp()
|
||||
{
|
||||
Itrycn_Db.IsCloseConfirm = false;
|
||||
this.DockPanel.FindForm().Close();
|
||||
}
|
||||
private void BtnOpenOutput_Click(object sender, EventArgs e)
|
||||
{
|
||||
var debug_path = GetDebugPath();
|
||||
if (System.IO.Directory.Exists(debug_path))
|
||||
{
|
||||
ryCommon.RyFiles.OpenFile(debug_path);
|
||||
CloseApp();
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("打开输出目录失败。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 获取Notepad++路径
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private string GetNotepadPlusPath()
|
||||
{
|
||||
var path = "";
|
||||
try
|
||||
{
|
||||
RegistryKey LMach = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry64);
|
||||
RegistryKey softwareRun = LMach.OpenSubKey(@"SOFTWARE\Notepad++", true);
|
||||
if (softwareRun.GetValue("") != null)
|
||||
{
|
||||
string notepad_plus_path = softwareRun.GetValue("").ToString() + "\\notepad++.exe";
|
||||
if (System.IO.File.Exists(notepad_plus_path))
|
||||
{
|
||||
path = notepad_plus_path;
|
||||
}
|
||||
}
|
||||
softwareRun.Close();
|
||||
LMach.Close();
|
||||
}
|
||||
catch
|
||||
{
|
||||
}
|
||||
return path;
|
||||
}
|
||||
|
||||
private void BtnMessageBox_Click(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.RyFiles.CopyToClip("MessageBox.Show(\"这是一个测试\",\"提示\",MessageBoxButtons.OK,MessageBoxIcon.Information);");
|
||||
CloseApp();
|
||||
}
|
||||
|
||||
private void BtnCustomMessageBox_Click(object sender, EventArgs e)
|
||||
{
|
||||
FrmMessageBox frm = new FrmMessageBox
|
||||
{
|
||||
Icon = Icon
|
||||
};
|
||||
if (frm.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
CloseApp();
|
||||
}
|
||||
}
|
||||
|
||||
private void FrmProject_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void table1_DoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
if (table1.SelectedItems.Length == 0) { return; }
|
||||
var path = table1.SelectedItems[0].Tag.ToString();
|
||||
if (System.IO.Directory.Exists(path))
|
||||
{
|
||||
ryCommon.RyFiles.OpenFile(path);
|
||||
}
|
||||
else if (System.IO.File.Exists(path))
|
||||
{
|
||||
if (System.IO.Path.GetExtension(path).ToLower() == ".txt")
|
||||
{
|
||||
string notepad_plus_path = GetNotepadPlusPath();
|
||||
if (System.IO.File.Exists(notepad_plus_path))
|
||||
{
|
||||
ryCommon.RyFiles.RunFile(notepad_plus_path, "\"" + path + "\"");
|
||||
}
|
||||
else
|
||||
{
|
||||
ryCommon.RyFiles.OpenFile(path);
|
||||
}
|
||||
}
|
||||
else if (System.IO.Path.GetExtension(path).ToLower() == ".md")
|
||||
{
|
||||
ryCommon.RyFiles.OpenFile(path);
|
||||
}
|
||||
else
|
||||
{
|
||||
ryCommon.RyFiles.OpenFolderGotoFile(path);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void BtnClean_Click(object sender, EventArgs e)
|
||||
{
|
||||
switch (MessageBox.Show("是否要进行清理不必要的文件,例如*.pdb", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information))
|
||||
{
|
||||
case DialogResult.No:
|
||||
return;
|
||||
}
|
||||
var debug_path = GetDebugPath();
|
||||
if (System.IO.Directory.Exists(debug_path))
|
||||
{
|
||||
Itrycn_Db.DeleteFiles(debug_path, "*.pdb");
|
||||
Itrycn_Db.DeleteFiles(debug_path, "*.dcu");
|
||||
}
|
||||
var folder = GetBFFolderPath();
|
||||
if(folder!="")
|
||||
{
|
||||
if(System.IO.Directory.Exists(folder + "\\Bin\\Release"))
|
||||
{
|
||||
Itrycn_Db.DeleteFiles(folder + "\\Bin\\Release", "*.pdb");
|
||||
Itrycn_Db.DeleteFiles(folder + "\\Bin\\Release", "*.dcu");
|
||||
}
|
||||
}
|
||||
MessageBox.Show("清理完成。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
/// <summary>
|
||||
/// 等待进程执行完毕
|
||||
/// </summary>
|
||||
/// <param name="cmd_text"></param>
|
||||
/// <returns></returns>
|
||||
public static string Read_Prog(string exe,string cmd_text)
|
||||
{
|
||||
String cmd = exe;
|
||||
Process p = new Process
|
||||
{
|
||||
StartInfo = new System.Diagnostics.ProcessStartInfo
|
||||
{
|
||||
FileName = cmd,//设定程序名
|
||||
Arguments = cmd_text,
|
||||
UseShellExecute = false, //关闭shell的使用
|
||||
RedirectStandardInput = true, //重定向标准输入
|
||||
RedirectStandardOutput = true, //重定向标准输出
|
||||
RedirectStandardError = false, //重定向错误输出
|
||||
CreateNoWindow = true//设置不显示窗口
|
||||
}
|
||||
};
|
||||
p.Start();
|
||||
string result = p.StandardOutput.ReadToEnd();
|
||||
p.WaitForExit(20000);
|
||||
p.Close();
|
||||
return result;
|
||||
}
|
||||
private void BtnBatchZip_Click(object sender, EventArgs e)
|
||||
{
|
||||
BtnBatchZip.Enabled = false;
|
||||
Thread th = new Thread(Start);
|
||||
th.Start();
|
||||
void Start()
|
||||
{
|
||||
var com_mode = "Debug";
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
|
||||
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
|
||||
{
|
||||
var ds = db.ReadData("select * from Settings where name='Setting'");
|
||||
if (mydb.HaveData(ds))
|
||||
{
|
||||
var row = mydb.GetData(ds);
|
||||
ryCommon.Storage mStor = new ryCommon.Storage(row["value"].ToString());
|
||||
mStor.SelectNodeBySet();
|
||||
var ReactorPath = mStor.GetAttrValue("ReactorPath");
|
||||
var WinRARPath = mStor.GetAttrValue("WinRARPath");
|
||||
if (WinRARPath == "")
|
||||
{
|
||||
if (System.IO.File.Exists(@"C:\Program Files\WinRAR\WinRAR.exe"))
|
||||
{
|
||||
WinRARPath = @"C:\Program Files\WinRAR\WinRAR.exe";
|
||||
}
|
||||
}
|
||||
var bf_folder = GetBFFolderPath();
|
||||
if (bf_folder != "")
|
||||
{
|
||||
ryCommon.Ini ini = new Ini(bf_folder+ "\\查看项目.ryp");
|
||||
var eng_name = ini.ReadIni("project", "engname");
|
||||
var proglang= ini.ReadIni("project", "proglang");
|
||||
var ouput_folder = bf_folder + "\\Bin\\" + com_mode + "\\" + eng_name;
|
||||
var file_ver = "";
|
||||
if (System.IO.File.Exists(ouput_folder + "\\" + eng_name + ".exe"))
|
||||
{
|
||||
FileVersionInfo fileVerInfo = System.Diagnostics.FileVersionInfo.GetVersionInfo(ouput_folder + "\\" + eng_name + ".exe");
|
||||
file_ver = fileVerInfo.ProductVersion;
|
||||
}
|
||||
if (proglang == "c#")
|
||||
{
|
||||
ShowState("正在进行混淆...");
|
||||
if (System.IO.File.Exists(bf_folder + "\\Bin\\混淆_" + com_mode + ".nrproj"))
|
||||
{
|
||||
var cmd = Read_Prog(ReactorPath, "-project \"" + bf_folder + "\\Bin\\混淆_" + com_mode + ".nrproj\"");
|
||||
MessageBox.Show(cmd, "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
}
|
||||
ShowState("正在清理不重要的缓存...");
|
||||
ryCommon.RyFiles.DeleteFile(ouput_folder + "\\Secure\\*.pdb");
|
||||
ShowState("复制混淆文件到底包目录...");
|
||||
ryCommon.RyFiles.CopyFile(ouput_folder + "\\Secure\\*", bf_folder + "\\Publish\\OriginalFiles\\");
|
||||
#region 复制自定义规则文件到底包目录
|
||||
ShowState("复制自定义规则文件到底包目录...");
|
||||
var Publish = ryCommon.RyFiles.ReadAllLines(bf_folder + "\\Publish\\Publish.set");
|
||||
for (int m = 0; m < Publish.Length; m++)
|
||||
{
|
||||
var line = Publish[m].Trim();
|
||||
if (line == "" || line.IndexOf("#") == 0) { continue; }
|
||||
if (line.IndexOfEx("del:") == 0)
|
||||
{
|
||||
ryCommon.RyFiles.DeleteFile(bf_folder + "\\Publish\\OriginalFiles\\" + line.Substring(4));
|
||||
}
|
||||
else if (line.IndexOfEx("copy:") == 0)
|
||||
{
|
||||
var from_to = line.Substring(5).Replace("->", "|").Split('|');
|
||||
if (from_to.Length == 2)
|
||||
{
|
||||
var from_path = from_to[0];
|
||||
var to_path = from_to[1];
|
||||
ryCommon.RyFiles.CopyFile(ouput_folder + "\\"+ from_path, bf_folder + "\\Publish\\OriginalFiles\\" + to_path);
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
ShowState("正在打包...");
|
||||
var cmd2 = Read_Prog(WinRARPath, "-r -ep1 a \""+ bf_folder + "\\Publish\\Green\\"+ eng_name + ".zip\" \""+ bf_folder + "\\Publish\\OriginalFiles\\\"");
|
||||
RyFiles.CopyFile(bf_folder + "\\Publish\\Green\\" + eng_name + ".zip", bf_folder + "\\Publish\\Green\\HistoryVer\\" + eng_name + "_"+file_ver+".zip");
|
||||
ShowState("打包完成...");
|
||||
}
|
||||
}
|
||||
}
|
||||
db.Free();
|
||||
void ShowState(string text)
|
||||
{
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
LblState.Text = "状态:" + text;
|
||||
}));
|
||||
}
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
BtnBatchZip.Enabled = true;
|
||||
}));
|
||||
}
|
||||
}
|
||||
private void GetVersBySln(string path)
|
||||
{
|
||||
var _bf_path = GetBFFolderPath();
|
||||
RyProject project = new RyProject();
|
||||
string update_logs_text = "";
|
||||
if (System.IO.File.Exists(path))
|
||||
{
|
||||
ryCommon.Ini ini = new Ini(_bf_path + "\\查看项目.ryp");
|
||||
var sln_text = ryCommon.RyFiles.ReadAllLines(path);
|
||||
for (int i = 0; i < sln_text.Length; i++)
|
||||
{
|
||||
if(sln_text[i].StartsWith("Project"))
|
||||
{
|
||||
var item = sln_text[i].Replace(" = ",",").Split(',');
|
||||
if (item.Length>=3)
|
||||
{
|
||||
var project_name = item[1].Trim().Trim('"');
|
||||
var project_path =System.IO.Path.GetDirectoryName(path).TrimEnd('\\')+"\\"+item[2].Trim().Trim('"');
|
||||
var ver = project.GetAssemblyVersion(project_path);
|
||||
if (ver != "")
|
||||
{
|
||||
if(ini.ReadIni("NoVerMD", project_name,0) == 1) { continue; }
|
||||
if (update_logs_text != "") { update_logs_text += "\r\n"; }
|
||||
update_logs_text +="#### "+ project_name + " V" + ver+ "\r\n暂无\r\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (update_logs_text != "")
|
||||
{
|
||||
if (_bf_path != "")
|
||||
{
|
||||
var update_text = ryCommon.RyFiles.ReadAllText(_bf_path + "\\CHANGELOG.md");
|
||||
RyFiles.WriteAllText(_bf_path+ "\\CHANGELOG.md", "### " + DateTime.Now.ToString("yyyy-MM-dd") + "更新\r\n------\r\n"+ update_logs_text + update_text, Encoding.UTF8);
|
||||
RyFiles.OpenFile(_bf_path + "\\CHANGELOG.md");
|
||||
}
|
||||
}
|
||||
}
|
||||
private void BtnInsertUpdate_Click(object sender, EventArgs e)
|
||||
{
|
||||
var _path = GetBFFolderPath();
|
||||
if (_path != "")
|
||||
{
|
||||
var files = System.IO.Directory.GetFiles(_path+"\\Source");
|
||||
for (int i = 0; i < files.Length; i++)
|
||||
{
|
||||
var ext = System.IO.Path.GetExtension(files[i]).ToLower();
|
||||
if(ext==".sln")
|
||||
{
|
||||
GetVersBySln(files[i]);
|
||||
return;
|
||||
}
|
||||
}
|
||||
var dirs = System.IO.Directory.GetDirectories(_path + "\\Source");
|
||||
for (int i = 0; i < dirs.Length; i++)
|
||||
{
|
||||
var files2 = System.IO.Directory.GetFiles(dirs[i]);
|
||||
for (int m = 0; m < files2.Length; m++)
|
||||
{
|
||||
var ext = System.IO.Path.GetExtension(files2[m]).ToLower();
|
||||
if (ext == ".sln")
|
||||
{
|
||||
GetVersBySln(files2[m]);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
//var sln_path = _path + "\\更新日志.md";
|
||||
}
|
||||
}
|
||||
|
||||
private void BtnUpdateDll_Click(object sender, EventArgs e)
|
||||
{
|
||||
BtnUpdateDll.Enabled = false;
|
||||
var debug_path = GetDebugPath();
|
||||
int error = 0;
|
||||
var _error_str = "";
|
||||
if (System.IO.Directory.Exists(debug_path))
|
||||
{
|
||||
RyProject project = new RyProject
|
||||
{
|
||||
CopyDllToBin = true,
|
||||
ChangedOutputPath = false
|
||||
};
|
||||
var bf_folder = GetBFFolderPath();
|
||||
if(bf_folder!="")
|
||||
{
|
||||
error+= project.UpdateCSproj(bf_folder+"\\Source");
|
||||
}
|
||||
else
|
||||
{
|
||||
project.SetCSproj(_ProjectPath, "");
|
||||
}
|
||||
error +=project.UpdateDlls(debug_path,out _error_str);
|
||||
}
|
||||
BtnUpdateDll.Enabled = true;
|
||||
if (error == 0)
|
||||
{
|
||||
MessageBox.Show("更新dll完成。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("更新dll完成,共失败"+error+"项。\r\n\r\n"+ _error_str, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||
}
|
||||
}
|
||||
|
||||
private void BtnUpdateVer_Click(object sender, EventArgs e)
|
||||
{
|
||||
var folder = System.IO.Path.GetDirectoryName(_ProjectPath);
|
||||
Manager.RyProject.UpdateVer(folder + "\\Properties\\AssemblyInfo.cs");
|
||||
CloseApp();
|
||||
}
|
||||
|
||||
private void BtnUpdateDllVer_Click(object sender, EventArgs e)
|
||||
{
|
||||
BtnUpdateDllVer.Enabled = false;
|
||||
int error = 0;
|
||||
RyProject project = new RyProject
|
||||
{
|
||||
CopyDllToBin = true,
|
||||
ChangedOutputPath = false
|
||||
};
|
||||
var bf_folder = GetBFFolderPath();
|
||||
var _error_str = "";
|
||||
if (bf_folder != "")
|
||||
{
|
||||
error += project.UpdateDlls(bf_folder + "\\Bin",out _error_str);
|
||||
}
|
||||
BtnUpdateDllVer.Enabled = true;
|
||||
if (error == 0)
|
||||
{
|
||||
MessageBox.Show("更新dll完成。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
else
|
||||
{
|
||||
MessageBox.Show("更新dll完成,共失败" + error + "项。\r\n\r\n"+ _error_str, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,129 @@
|
||||
<?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>
|
||||
<metadata name="columnModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="tableModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>158, 17</value>
|
||||
</metadata>
|
||||
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>285, 17</value>
|
||||
</metadata>
|
||||
</root>
|
||||
+153
@@ -0,0 +1,153 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmProjectSearch
|
||||
{
|
||||
/// <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.BtnBrowser = new ryControls.ButtonEx();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.TxtFolder = new ryControls.TextBoxEx2();
|
||||
this.LblState = new System.Windows.Forms.Label();
|
||||
this.ChkDealWithVer = new System.Windows.Forms.CheckBox();
|
||||
this.CbbAutoVer = new ryControls.RyComboBox();
|
||||
this.BtnScan = new ryControls.ButtonEx();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// BtnBrowser
|
||||
//
|
||||
this.BtnBrowser.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnBrowser.Location = new System.Drawing.Point(593, 25);
|
||||
this.BtnBrowser.Name = "BtnBrowser";
|
||||
this.BtnBrowser.Size = new System.Drawing.Size(75, 33);
|
||||
this.BtnBrowser.TabIndex = 5;
|
||||
this.BtnBrowser.Text = "选择";
|
||||
this.BtnBrowser.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(10, 10);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(65, 12);
|
||||
this.label1.TabIndex = 4;
|
||||
this.label1.Text = "选择文件夹";
|
||||
//
|
||||
// TxtFolder
|
||||
//
|
||||
this.TxtFolder.BackColor = System.Drawing.Color.White;
|
||||
this.TxtFolder.EmptyText = "";
|
||||
this.TxtFolder.Location = new System.Drawing.Point(12, 25);
|
||||
this.TxtFolder.MaxLength = 999999999;
|
||||
this.TxtFolder.Multiline = false;
|
||||
this.TxtFolder.Name = "TxtFolder";
|
||||
this.TxtFolder.OnlyNumeric = false;
|
||||
this.TxtFolder.PasswordChar = '\0';
|
||||
this.TxtFolder.ReadOnly = false;
|
||||
this.TxtFolder.SelectedText = "";
|
||||
this.TxtFolder.SelectionLength = 0;
|
||||
this.TxtFolder.SelectionStart = 0;
|
||||
this.TxtFolder.Size = new System.Drawing.Size(575, 33);
|
||||
this.TxtFolder.TabIndex = 3;
|
||||
this.TxtFolder.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtFolder.ToolTip = "";
|
||||
this.TxtFolder.WordWrap = true;
|
||||
//
|
||||
// LblState
|
||||
//
|
||||
this.LblState.AutoSize = true;
|
||||
this.LblState.Location = new System.Drawing.Point(12, 139);
|
||||
this.LblState.Name = "LblState";
|
||||
this.LblState.Size = new System.Drawing.Size(83, 12);
|
||||
this.LblState.TabIndex = 25;
|
||||
this.LblState.Text = "状态:准备就绪";
|
||||
//
|
||||
// ChkDealWithVer
|
||||
//
|
||||
this.ChkDealWithVer.AutoSize = true;
|
||||
this.ChkDealWithVer.Location = new System.Drawing.Point(12, 67);
|
||||
this.ChkDealWithVer.Name = "ChkDealWithVer";
|
||||
this.ChkDealWithVer.Size = new System.Drawing.Size(96, 16);
|
||||
this.ChkDealWithVer.TabIndex = 26;
|
||||
this.ChkDealWithVer.Text = "处理版本信息";
|
||||
this.ChkDealWithVer.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// CbbAutoVer
|
||||
//
|
||||
this.CbbAutoVer.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbAutoVer.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbAutoVer.FormattingEnabled = true;
|
||||
this.CbbAutoVer.Items.AddRange(new object[] {
|
||||
"不自动更新版本号",
|
||||
"自动更新版本号"});
|
||||
this.CbbAutoVer.Location = new System.Drawing.Point(114, 64);
|
||||
this.CbbAutoVer.Name = "CbbAutoVer";
|
||||
this.CbbAutoVer.Size = new System.Drawing.Size(136, 22);
|
||||
this.CbbAutoVer.TabIndex = 27;
|
||||
//
|
||||
// BtnScan
|
||||
//
|
||||
this.BtnScan.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnScan.Location = new System.Drawing.Point(674, 25);
|
||||
this.BtnScan.Name = "BtnScan";
|
||||
this.BtnScan.Size = new System.Drawing.Size(75, 33);
|
||||
this.BtnScan.TabIndex = 28;
|
||||
this.BtnScan.Text = "扫描";
|
||||
this.BtnScan.UseVisualStyleBackColor = true;
|
||||
this.BtnScan.Click += new System.EventHandler(this.BtnScan_Click);
|
||||
//
|
||||
// FrmProjectSearch
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(771, 438);
|
||||
this.Controls.Add(this.BtnScan);
|
||||
this.Controls.Add(this.CbbAutoVer);
|
||||
this.Controls.Add(this.ChkDealWithVer);
|
||||
this.Controls.Add(this.LblState);
|
||||
this.Controls.Add(this.BtnBrowser);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.TxtFolder);
|
||||
this.Name = "FrmProjectSearch";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
|
||||
this.Text = "项目自动更新设置";
|
||||
this.Load += new System.EventHandler(this.FrmProjectSearch_Load);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private ryControls.ButtonEx BtnBrowser;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private ryControls.TextBoxEx2 TxtFolder;
|
||||
private System.Windows.Forms.Label LblState;
|
||||
private System.Windows.Forms.CheckBox ChkDealWithVer;
|
||||
private ryControls.RyComboBox CbbAutoVer;
|
||||
private ryControls.ButtonEx BtnScan;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmProjectSearch : Form
|
||||
{
|
||||
public FrmProjectSearch()
|
||||
{
|
||||
InitializeComponent();
|
||||
CbbAutoVer.SelectedIndex = 0;
|
||||
}
|
||||
|
||||
private void FrmProjectSearch_Load(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.RyFiles.AddDropDrag(TxtFolder.Handle).ElevatedDragDrop += FrmCreateProject_ElevatedDragDrop;
|
||||
}
|
||||
private void FrmCreateProject_ElevatedDragDrop(object sender, ElevatedDragDropArgs e)
|
||||
{
|
||||
TxtFolder.Text = e.Files[0];
|
||||
}
|
||||
/// <summary>
|
||||
/// 是否处理版本信息
|
||||
/// </summary>
|
||||
bool DealWithVer_ON = false;
|
||||
/// <summary>
|
||||
/// 处理版本信息的方式
|
||||
/// </summary>
|
||||
int AutoVer = 0;
|
||||
private void AutoScan(string folder)
|
||||
{
|
||||
Manager.RyProject project = new Manager.RyProject();
|
||||
project.ChangedOutputPath = false;
|
||||
project.CopyDllToBin = false;
|
||||
project.UpdateCSproj(folder);
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
MessageBox.Show("更新完成。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}));
|
||||
}
|
||||
|
||||
private void BtnScan_Click(object sender, EventArgs e)
|
||||
{
|
||||
DealWithVer_ON = ChkDealWithVer.Checked;
|
||||
AutoVer = CbbAutoVer.SelectedIndex = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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>
|
||||
+279
@@ -0,0 +1,279 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmQrCode
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmQrCode));
|
||||
this.tabControl1 = new System.Windows.Forms.TabControl();
|
||||
this.tabPage1 = new System.Windows.Forms.TabPage();
|
||||
this.pictureBox1 = new System.Windows.Forms.PictureBox();
|
||||
this.BtnCreate = new ryControls.ButtonEx();
|
||||
this.TxtFromStr = new ryControls.TextBoxEx2();
|
||||
this.tabPage2 = new System.Windows.Forms.TabPage();
|
||||
this.BtnCapture = new ryControls.ButtonEx();
|
||||
this.BtnAnaly = new ryControls.ButtonEx();
|
||||
this.TxtToResult = new ryControls.TextBoxEx2();
|
||||
this.pictureBox2 = new System.Windows.Forms.PictureBox();
|
||||
this.BtnBrowser = new ryControls.ButtonEx();
|
||||
this.TxtQrCodePath = new ryControls.TextBoxEx2();
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
|
||||
this.saveFileDialog1 = new System.Windows.Forms.SaveFileDialog();
|
||||
this.tabControl1.SuspendLayout();
|
||||
this.tabPage1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
|
||||
this.tabPage2.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// tabControl1
|
||||
//
|
||||
this.tabControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.tabControl1.Controls.Add(this.tabPage1);
|
||||
this.tabControl1.Controls.Add(this.tabPage2);
|
||||
this.tabControl1.Location = new System.Drawing.Point(3, 1);
|
||||
this.tabControl1.Name = "tabControl1";
|
||||
this.tabControl1.SelectedIndex = 0;
|
||||
this.tabControl1.Size = new System.Drawing.Size(906, 502);
|
||||
this.tabControl1.TabIndex = 0;
|
||||
//
|
||||
// tabPage1
|
||||
//
|
||||
this.tabPage1.Controls.Add(this.pictureBox1);
|
||||
this.tabPage1.Controls.Add(this.BtnCreate);
|
||||
this.tabPage1.Controls.Add(this.TxtFromStr);
|
||||
this.tabPage1.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage1.Name = "tabPage1";
|
||||
this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage1.Size = new System.Drawing.Size(898, 476);
|
||||
this.tabPage1.TabIndex = 0;
|
||||
this.tabPage1.Text = "二维码生成";
|
||||
this.tabPage1.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pictureBox1
|
||||
//
|
||||
this.pictureBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.pictureBox1.Location = new System.Drawing.Point(7, 158);
|
||||
this.pictureBox1.Name = "pictureBox1";
|
||||
this.pictureBox1.Size = new System.Drawing.Size(882, 312);
|
||||
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
|
||||
this.pictureBox1.TabIndex = 2;
|
||||
this.pictureBox1.TabStop = false;
|
||||
this.pictureBox1.Click += new System.EventHandler(this.PictureBox1_Click);
|
||||
//
|
||||
// BtnCreate
|
||||
//
|
||||
this.BtnCreate.ForeColor = System.Drawing.Color.White;
|
||||
this.BtnCreate.Location = new System.Drawing.Point(7, 6);
|
||||
this.BtnCreate.Name = "BtnCreate";
|
||||
this.BtnCreate.Size = new System.Drawing.Size(67, 23);
|
||||
this.BtnCreate.TabIndex = 1;
|
||||
this.BtnCreate.Text = "生成";
|
||||
this.BtnCreate.UseVisualStyleBackColor = true;
|
||||
this.BtnCreate.Click += new System.EventHandler(this.BtnCreate_Click);
|
||||
//
|
||||
// TxtFromStr
|
||||
//
|
||||
this.TxtFromStr.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.TxtFromStr.BackColor = System.Drawing.Color.White;
|
||||
this.TxtFromStr.EmptyText = "";
|
||||
this.TxtFromStr.Location = new System.Drawing.Point(7, 35);
|
||||
this.TxtFromStr.MaxLength = 999999999;
|
||||
this.TxtFromStr.Multiline = true;
|
||||
this.TxtFromStr.Name = "TxtFromStr";
|
||||
this.TxtFromStr.OnlyNumeric = false;
|
||||
this.TxtFromStr.PasswordChar = '\0';
|
||||
this.TxtFromStr.ReadOnly = false;
|
||||
this.TxtFromStr.SelectedText = "";
|
||||
this.TxtFromStr.SelectionLength = 0;
|
||||
this.TxtFromStr.SelectionStart = 0;
|
||||
this.TxtFromStr.Size = new System.Drawing.Size(882, 117);
|
||||
this.TxtFromStr.TabIndex = 0;
|
||||
this.TxtFromStr.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtFromStr.ToolTip = "";
|
||||
this.TxtFromStr.DoubleClick += new System.EventHandler(this.TxtFromStr_DoubleClick);
|
||||
//
|
||||
// tabPage2
|
||||
//
|
||||
this.tabPage2.Controls.Add(this.BtnCapture);
|
||||
this.tabPage2.Controls.Add(this.BtnAnaly);
|
||||
this.tabPage2.Controls.Add(this.TxtToResult);
|
||||
this.tabPage2.Controls.Add(this.pictureBox2);
|
||||
this.tabPage2.Controls.Add(this.BtnBrowser);
|
||||
this.tabPage2.Controls.Add(this.TxtQrCodePath);
|
||||
this.tabPage2.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage2.Name = "tabPage2";
|
||||
this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage2.Size = new System.Drawing.Size(898, 476);
|
||||
this.tabPage2.TabIndex = 1;
|
||||
this.tabPage2.Text = "二维码解析";
|
||||
this.tabPage2.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// BtnCapture
|
||||
//
|
||||
this.BtnCapture.ForeColor = System.Drawing.Color.White;
|
||||
this.BtnCapture.Location = new System.Drawing.Point(622, 6);
|
||||
this.BtnCapture.Name = "BtnCapture";
|
||||
this.BtnCapture.Size = new System.Drawing.Size(71, 30);
|
||||
this.BtnCapture.TabIndex = 6;
|
||||
this.BtnCapture.Text = "截图";
|
||||
this.BtnCapture.UseVisualStyleBackColor = true;
|
||||
this.BtnCapture.Click += new System.EventHandler(this.BtnCapture_Click);
|
||||
//
|
||||
// BtnAnaly
|
||||
//
|
||||
this.BtnAnaly.ForeColor = System.Drawing.Color.White;
|
||||
this.BtnAnaly.Location = new System.Drawing.Point(699, 6);
|
||||
this.BtnAnaly.Name = "BtnAnaly";
|
||||
this.BtnAnaly.Size = new System.Drawing.Size(71, 30);
|
||||
this.BtnAnaly.TabIndex = 5;
|
||||
this.BtnAnaly.Text = "解析";
|
||||
this.BtnAnaly.UseVisualStyleBackColor = true;
|
||||
this.BtnAnaly.Click += new System.EventHandler(this.BtnAnaly_Click);
|
||||
//
|
||||
// TxtToResult
|
||||
//
|
||||
this.TxtToResult.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.TxtToResult.BackColor = System.Drawing.Color.White;
|
||||
this.TxtToResult.EmptyText = "解析出来的内容";
|
||||
this.TxtToResult.Location = new System.Drawing.Point(6, 42);
|
||||
this.TxtToResult.MaxLength = 999999999;
|
||||
this.TxtToResult.Multiline = true;
|
||||
this.TxtToResult.Name = "TxtToResult";
|
||||
this.TxtToResult.OnlyNumeric = false;
|
||||
this.TxtToResult.PasswordChar = '\0';
|
||||
this.TxtToResult.ReadOnly = false;
|
||||
this.TxtToResult.SelectedText = "";
|
||||
this.TxtToResult.SelectionLength = 0;
|
||||
this.TxtToResult.SelectionStart = 0;
|
||||
this.TxtToResult.Size = new System.Drawing.Size(882, 117);
|
||||
this.TxtToResult.TabIndex = 4;
|
||||
this.TxtToResult.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtToResult.ToolTip = "";
|
||||
//
|
||||
// pictureBox2
|
||||
//
|
||||
this.pictureBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.pictureBox2.Location = new System.Drawing.Point(8, 165);
|
||||
this.pictureBox2.Name = "pictureBox2";
|
||||
this.pictureBox2.Size = new System.Drawing.Size(882, 305);
|
||||
this.pictureBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom;
|
||||
this.pictureBox2.TabIndex = 3;
|
||||
this.pictureBox2.TabStop = false;
|
||||
//
|
||||
// BtnBrowser
|
||||
//
|
||||
this.BtnBrowser.ForeColor = System.Drawing.Color.White;
|
||||
this.BtnBrowser.Location = new System.Drawing.Point(541, 6);
|
||||
this.BtnBrowser.Name = "BtnBrowser";
|
||||
this.BtnBrowser.Size = new System.Drawing.Size(75, 30);
|
||||
this.BtnBrowser.TabIndex = 1;
|
||||
this.BtnBrowser.Text = "浏览";
|
||||
this.BtnBrowser.UseVisualStyleBackColor = true;
|
||||
this.BtnBrowser.Click += new System.EventHandler(this.BtnBrowser_Click);
|
||||
//
|
||||
// TxtQrCodePath
|
||||
//
|
||||
this.TxtQrCodePath.BackColor = System.Drawing.Color.White;
|
||||
this.TxtQrCodePath.EmptyText = "二维码图片路径";
|
||||
this.TxtQrCodePath.Location = new System.Drawing.Point(6, 6);
|
||||
this.TxtQrCodePath.MaxLength = 999999999;
|
||||
this.TxtQrCodePath.Multiline = false;
|
||||
this.TxtQrCodePath.Name = "TxtQrCodePath";
|
||||
this.TxtQrCodePath.OnlyNumeric = false;
|
||||
this.TxtQrCodePath.PasswordChar = '\0';
|
||||
this.TxtQrCodePath.ReadOnly = false;
|
||||
this.TxtQrCodePath.SelectedText = "";
|
||||
this.TxtQrCodePath.SelectionLength = 0;
|
||||
this.TxtQrCodePath.SelectionStart = 0;
|
||||
this.TxtQrCodePath.Size = new System.Drawing.Size(529, 30);
|
||||
this.TxtQrCodePath.TabIndex = 0;
|
||||
this.TxtQrCodePath.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtQrCodePath.ToolTip = "";
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(173, 48);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// openFileDialog1
|
||||
//
|
||||
this.openFileDialog1.Filter = "图片文件|*.jpg;*.bmp;*.png;*.jpeg;";
|
||||
//
|
||||
// saveFileDialog1
|
||||
//
|
||||
this.saveFileDialog1.Filter = "图片文件|*.jpg;*.bmp;*.png;*.jpeg;|BMP图片|*.bmp|JPG图片|*.jpg;*.jpeg|PNG图片|*.png";
|
||||
//
|
||||
// FrmQrCode
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(907, 509);
|
||||
this.Controls.Add(this.tabControl1);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmQrCode";
|
||||
this.TabPageContextMenuStrip = this.menuRight1;
|
||||
this.Text = "二维码生成和读取";
|
||||
this.tabControl1.ResumeLayout(false);
|
||||
this.tabPage1.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
|
||||
this.tabPage2.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.TabControl tabControl1;
|
||||
private System.Windows.Forms.TabPage tabPage1;
|
||||
private ryControls.ButtonEx BtnCreate;
|
||||
private ryControls.TextBoxEx2 TxtFromStr;
|
||||
private System.Windows.Forms.TabPage tabPage2;
|
||||
private System.Windows.Forms.PictureBox pictureBox1;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
private ryControls.ButtonEx BtnAnaly;
|
||||
private ryControls.TextBoxEx2 TxtToResult;
|
||||
private System.Windows.Forms.PictureBox pictureBox2;
|
||||
private ryControls.ButtonEx BtnBrowser;
|
||||
private ryControls.TextBoxEx2 TxtQrCodePath;
|
||||
private System.Windows.Forms.OpenFileDialog openFileDialog1;
|
||||
private ryControls.ButtonEx BtnCapture;
|
||||
private System.Windows.Forms.SaveFileDialog saveFileDialog1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,164 @@
|
||||
using _SCREEN_CAPTURE;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
using ZXing;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmQrCode : DockContent
|
||||
{
|
||||
public FrmQrCode()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
/// <summary>
|
||||
/// 生成二维码图片
|
||||
/// </summary>
|
||||
/// <param name="strMessage">要生成二维码的字符串</param>
|
||||
/// <param name="width">二维码图片宽度</param>
|
||||
/// <param name="height">二维码图片高度</param>
|
||||
/// <returns></returns>
|
||||
private Bitmap CreateQrCode(String strMessage, Int32 width, Int32 height)
|
||||
{
|
||||
Bitmap result = null;
|
||||
try
|
||||
{
|
||||
BarcodeWriter barCodeWriter = new BarcodeWriter
|
||||
{
|
||||
Format = BarcodeFormat.QR_CODE
|
||||
};
|
||||
barCodeWriter.Options.Hints.Add(EncodeHintType.CHARACTER_SET, "UTF-8");
|
||||
barCodeWriter.Options.Hints.Add(EncodeHintType.ERROR_CORRECTION, ZXing.QrCode.Internal.ErrorCorrectionLevel.H);
|
||||
barCodeWriter.Options.Height = height;
|
||||
barCodeWriter.Options.Width = width;
|
||||
barCodeWriter.Options.Margin = 0;
|
||||
ZXing.Common.BitMatrix bm = barCodeWriter.Encode(strMessage);
|
||||
result = barCodeWriter.Write(bm);
|
||||
Bitmap qr_bg = (Bitmap)ryCommon.RyFiles.LoadPicFromFile(Application.StartupPath + "\\mod\\qr_bg.jpg");
|
||||
Graphics g = Graphics.FromImage(qr_bg);
|
||||
g.DrawImage(result, new Rectangle(25, 25, qr_bg.Width - 50, qr_bg.Height - 50));
|
||||
result = qr_bg;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
//异常输出
|
||||
}
|
||||
return result;
|
||||
}
|
||||
private void BtnCreate_Click(object sender, EventArgs e)
|
||||
{
|
||||
pictureBox1.Image= CreateQrCode(TxtFromStr.Text, 256, 256);
|
||||
}
|
||||
|
||||
private void BtnBrowser_Click(object sender, EventArgs e)
|
||||
{
|
||||
if(openFileDialog1.ShowDialog()==DialogResult.OK)
|
||||
{
|
||||
TxtQrCodePath.Text = openFileDialog1.FileName;
|
||||
BtnAnaly.PerformClick();
|
||||
}
|
||||
}
|
||||
|
||||
private void BtnAnaly_Click(object sender, EventArgs e)
|
||||
{
|
||||
string path = TxtQrCodePath.Text;
|
||||
if (!System.IO.File.Exists(path)) { Init(); return; }
|
||||
var img = ryCommon.RyFiles.LoadPicFromFile(path);
|
||||
if (img == null) { Init(); return; }
|
||||
Bitmap bmap;
|
||||
try
|
||||
{
|
||||
bmap = new Bitmap(img);
|
||||
}
|
||||
catch (System.IO.IOException ioe)
|
||||
{
|
||||
MessageBox.Show(ioe.ToString(),"提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
return;
|
||||
}
|
||||
if (bmap == null)
|
||||
{
|
||||
MessageBox.Show("不能解码图片","提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
return;
|
||||
}
|
||||
try
|
||||
{
|
||||
BarcodeReader reader = new BarcodeReader();
|
||||
reader.Options.CharacterSet = "UTF-8";
|
||||
var result = reader.Decode(bmap);
|
||||
TxtToResult.Text = (result == null) ? "" : result.Text;
|
||||
pictureBox2.Image = img;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
Init();
|
||||
MessageBox.Show("解析二维码失败。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
void Init()
|
||||
{
|
||||
pictureBox2.Image = null; TxtToResult.Text = "";
|
||||
}
|
||||
}
|
||||
|
||||
private void PictureBox1_Click(object sender, EventArgs e)
|
||||
{
|
||||
if(saveFileDialog1.ShowDialog()==DialogResult.OK)
|
||||
{
|
||||
try
|
||||
{
|
||||
pictureBox1.Image.Save(saveFileDialog1.FileName);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void BtnCapture_Click(object sender, EventArgs e)
|
||||
{
|
||||
ScreenCapture capture = new _SCREEN_CAPTURE.ScreenCapture();
|
||||
Bitmap m = capture.StartCapture(false);
|
||||
if (m != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
BarcodeReader reader = new BarcodeReader();
|
||||
reader.Options.CharacterSet = "UTF-8";
|
||||
var result = reader.Decode(m);
|
||||
TxtToResult.Text = (result == null) ? "" : result.Text;
|
||||
pictureBox2.Image = m;
|
||||
}
|
||||
catch (Exception)
|
||||
{
|
||||
Init();
|
||||
MessageBox.Show("解析二维码失败。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
void Init()
|
||||
{
|
||||
pictureBox2.Image = null; TxtToResult.Text = "";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void TxtFromStr_DoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
ryControls.TextBoxEx2 txt = (ryControls.TextBoxEx2)sender;
|
||||
开发辅助工具.Controls.FrmText frm = new Controls.FrmText
|
||||
{
|
||||
Icon = Icon
|
||||
};
|
||||
frm.richTextBox1.Text = txt.Text;
|
||||
if (frm.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
txt.Text = frm.richTextBox1.Text;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,206 @@
|
||||
<?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>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAGEPAABhDwAAAAAAAAAA
|
||||
AAAAAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAOUAAAAkAAAAAAAA
|
||||
AAAAAAAbAAAA4gAAAOsAAAAkAAAAGwAAAOIAAADqAAAAIQAAABgAAADiAAAA6gAAACEAAAAZAAAA4gAA
|
||||
AOkAAAAiAAAAAAAAAP8AAAD8AAAA4wAAAN4AAADeAAAA3gAAAN4AAADeAAAA3gAAAOIAAAD9AAAA5QAA
|
||||
ACQAAAACAAAAHgAAADoAAADIAAAAywAAAB8AAAAXAAAAwwAAAM8AAAA+AAAAOAAAAMgAAADOAAAAPgAA
|
||||
ADgAAADIAAAAzgAAAD8AAAAiAAAA/wAAAOgAAAA8AAAAGgAAABsAAAAaAAAAGgAAABsAAAAbAAAANwAA
|
||||
AOQAAADnAAAAIgAAABkAAADMAAAA1QAAADgAAAAWAAAABAAAAAMAAAAVAAAAMwAAANAAAADVAAAANgAA
|
||||
ADAAAADPAAAA1QAAADkAAAAyAAAAzgAAAOkAAAD/AAAA5QAAACIAAAAAAAAAHgAAACMAAAAjAAAAHwAA
|
||||
AAEAAAAcAAAA4AAAAOcAAAAiAAAAGAAAAMYAAADPAAAAPgAAAB4AAAAFAAAABAAAAB0AAAA6AAAAygAA
|
||||
AM8AAAA9AAAANwAAAMoAAADLAAAAHQAAABYAAADDAAAA4gAAAP8AAADlAAAAIgAAABkAAADJAAAA6AAA
|
||||
AOcAAADOAAAAHwAAABsAAADhAAAA5wAAACQAAAABAAAAFgAAADMAAADPAAAA0wAAAB4AAAAWAAAAywAA
|
||||
ANYAAAA6AAAAMwAAAM8AAADVAAAAOQAAABYAAAAEAAAAAwAAABcAAAAbAAAA/wAAAOUAAAAiAAAAHAAA
|
||||
AOEAAAD/AAAA/wAAAOcAAAAjAAAAGwAAAOEAAADnAAAAJAAAAAIAAAAdAAAAOQAAAMkAAADQAAAAQAAA
|
||||
ADgAAADKAAAAzAAAAB0AAAAWAAAAxAAAANAAAAA/AAAAHgAAAAUAAAAEAAAAHgAAACMAAAD/AAAA5QAA
|
||||
ACIAAAAcAAAA4QAAAP8AAAD/AAAA5wAAACMAAAAbAAAA4QAAAOcAAAAiAAAAGQAAAMwAAADVAAAANgAA
|
||||
ADIAAADRAAAA1QAAADgAAAAWAAAABAAAAAMAAAAWAAAAMwAAANAAAADSAAAAHgAAABYAAADKAAAA6gAA
|
||||
AP8AAADlAAAAIgAAABgAAADDAAAA4AAAAOAAAADIAAAAHgAAABwAAADhAAAA5wAAACIAAAAYAAAAxQAA
|
||||
AM8AAAA8AAAAOAAAAMsAAADOAAAAPgAAAB0AAAAFAAAABAAAAB0AAAA5AAAAygAAAM8AAAA+AAAAOAAA
|
||||
AMgAAADiAAAA/wAAAOUAAAAhAAAAAAAAABcAAAAbAAAAGwAAABgAAAAAAAAAGwAAAOAAAADnAAAAJAAA
|
||||
AAEAAAAWAAAAMgAAAM8AAADWAAAAOAAAADAAAADPAAAA0gAAAB4AAAAWAAAAywAAANUAAAA3AAAAMAAA
|
||||
AM8AAADVAAAAOAAAABgAAAD/AAAA6QAAAEMAAAAjAAAAIwAAACMAAAAjAAAAIwAAACMAAAA+AAAA5QAA
|
||||
AOcAAAAkAAAAAgAAAB0AAAA5AAAAygAAANEAAAA+AAAANwAAAMoAAADQAAAAQAAAADkAAADKAAAA0AAA
|
||||
AD4AAAA4AAAAygAAANAAAAA+AAAAIQAAAP8AAAD/AAAA7AAAAOgAAADoAAAA6AAAAOgAAADoAAAA6AAA
|
||||
AOsAAAD/AAAA5wAAACMAAAAZAAAAzQAAANUAAAA3AAAAMgAAANEAAADVAAAANwAAADIAAADQAAAA1gAA
|
||||
ADkAAAAzAAAA0AAAANYAAAA4AAAAMQAAAM4AAADqAAAA3gAAAN4AAADgAAAA4AAAAOAAAADgAAAA4AAA
|
||||
AOAAAADgAAAA4AAAAOAAAADIAAAAHgAAABgAAADFAAAAzwAAADwAAAA4AAAAywAAAM4AAAA8AAAANwAA
|
||||
AMoAAADLAAAAHAAAABYAAADEAAAAzwAAADwAAAA2AAAAyAAAAOIAAAAdAAAAHQAAABsAAAAbAAAAHQAA
|
||||
AB0AAAAdAAAAHQAAAB0AAAAdAAAAGwAAABgAAAAEAAAAAwAAABYAAAAyAAAAzgAAANYAAAA4AAAAMAAA
|
||||
AM4AAADVAAAAOQAAABYAAAAEAAAAAwAAABYAAAAyAAAAzwAAANQAAAA4AAAAGAAAAAAAAAACAAAAHwAA
|
||||
ACAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAfAAAAIAAAAAUAAAAEAAAAHgAAADoAAADLAAAA0QAA
|
||||
AD8AAAA4AAAAywAAANEAAABAAAAAHgAAAAUAAAAEAAAAHgAAADoAAADLAAAA0AAAAD8AAAAiAAAAAAAA
|
||||
ABgAAADMAAAA0wAAAB8AAAAAAAAAAAAAAAAAAAAAAAAAGQAAAM0AAADTAAAAHQAAABcAAADNAAAA1gAA
|
||||
ADoAAAA1AAAA0gAAANYAAAA4AAAAMgAAANEAAADSAAAAHQAAABYAAADMAAAA1wAAADgAAAAxAAAAzwAA
|
||||
AOoAAAAiAAAAOgAAAMoAAADPAAAAQAAAAB8AAAAFAAAABAAAAB4AAAA7AAAAygAAAM8AAAA9AAAAOQAA
|
||||
AMsAAADKAAAAHAAAABcAAADGAAAAzwAAADwAAAA3AAAAygAAAM8AAAA+AAAAOAAAAMoAAADPAAAAPAAA
|
||||
ADYAAADIAAAA4gAAAOkAAADTAAAAOAAAADMAAADQAAAA0QAAAB8AAAAZAAAAywAAANUAAAA5AAAAMgAA
|
||||
AM8AAADVAAAAOQAAABYAAAAEAAAAAwAAABgAAAA0AAAAzwAAANUAAAA5AAAAMgAAAM8AAADVAAAAOQAA
|
||||
ADMAAADPAAAA1QAAADoAAAAbAAAA4wAAAMoAAAAcAAAAFwAAAMYAAADMAAAAHgAAABgAAADGAAAAzAAA
|
||||
AB0AAAAWAAAAxQAAANEAAAA/AAAAHgAAAAUAAAAAAAAAAAAAABgAAADFAAAAzQAAAB0AAAAWAAAAxQAA
|
||||
AMwAAAAdAAAAFgAAAMYAAADMAAAAHgAAAAAAAAAcAAAAGQAAAAIAAAABAAAAGAAAABkAAAACAAAAAQAA
|
||||
ABgAAAAZAAAAAgAAAAEAAAAYAAAANgAAANEAAADSAAAAHwAAAAAAAAAAAAAAAwAAABgAAAAZAAAAAgAA
|
||||
AAEAAAAYAAAAGQAAAAIAAAABAAAAGAAAABkAAAACAAAAAAAAACIAAAAiAAAAJAAAACQAAAAiAAAAIgAA
|
||||
ACQAAAAkAAAAIgAAACIAAAAkAAAAIAAAAAIAAAAYAAAAxQAAAM8AAAA/AAAAHwAAAAUAAAAEAAAAHgAA
|
||||
ACMAAAAkAAAAJAAAACIAAAAiAAAAJAAAACQAAAAiAAAAIgAAACQAAAAkAAAA5QAAAOUAAADnAAAA5wAA
|
||||
AOcAAADnAAAA5wAAAOcAAADnAAAA5wAAAOcAAADOAAAAIAAAAAEAAAAWAAAAMgAAAM8AAADTAAAAIAAA
|
||||
ABgAAADIAAAA5wAAAOcAAADnAAAA5wAAAOcAAADnAAAA5wAAAOcAAADnAAAA5QAAAOUAAAD/AAAA/QAA
|
||||
AOUAAADgAAAA4QAAAOEAAADhAAAA4QAAAOAAAADkAAAA/gAAAOcAAAAkAAAAAgAAAB0AAAA5AAAAygAA
|
||||
AM0AAAAfAAAAGwAAAOAAAAD/AAAA5QAAAOAAAADhAAAA4QAAAOEAAADhAAAA4AAAAOQAAAD9AAAA/wAA
|
||||
AP8AAADoAAAAPQAAABsAAAAbAAAAGwAAABsAAAAbAAAAHAAAADgAAADkAAAA5wAAACIAAAAZAAAAzAAA
|
||||
ANUAAAA4AAAAFwAAAAIAAAAdAAAA4AAAAOsAAAA+AAAAGwAAABwAAAAbAAAAGwAAABsAAAAcAAAANwAA
|
||||
AOIAAAD/AAAA/wAAAOUAAAAiAAAAAAAAAB4AAAAjAAAAIwAAAB8AAAABAAAAHAAAAOAAAADnAAAAIgAA
|
||||
ABgAAADGAAAAzwAAAD4AAAAdAAAAAwAAAB0AAADgAAAA6AAAACMAAAAAAAAAHgAAACMAAAAjAAAAHwAA
|
||||
AAEAAAAbAAAA3gAAAP8AAAD/AAAA5QAAACIAAAAZAAAAyQAAAOcAAADnAAAAzgAAAB8AAAAbAAAA4QAA
|
||||
AOcAAAAkAAAAAQAAABYAAAAzAAAAzwAAANMAAAAgAAAAGwAAAOAAAADoAAAAIwAAABgAAADIAAAA5wAA
|
||||
AOcAAADOAAAAHwAAABsAAADeAAAA/wAAAP8AAADlAAAAIgAAABwAAADhAAAA/wAAAP8AAADnAAAAIwAA
|
||||
ABsAAADhAAAA5wAAACQAAAACAAAAHAAAADgAAADKAAAAzAAAAB8AAAAbAAAA4AAAAOgAAAAjAAAAGwAA
|
||||
AOAAAAD/AAAA/wAAAOcAAAAjAAAAGgAAAN4AAAD/AAAA/wAAAOUAAAAiAAAAHAAAAOEAAAD/AAAA/wAA
|
||||
AOcAAAAjAAAAGwAAAOEAAADnAAAAIgAAABkAAADMAAAA1AAAADgAAAAWAAAAAgAAAB0AAADgAAAA6AAA
|
||||
ACMAAAAbAAAA4AAAAP8AAAD/AAAA6AAAACMAAAAaAAAA3gAAAP8AAAD/AAAA5QAAACIAAAAYAAAAxAAA
|
||||
AOEAAADhAAAAyQAAAB4AAAAbAAAA4QAAAOcAAAAiAAAAGAAAAMYAAADQAAAAPgAAAB4AAAADAAAAHQAA
|
||||
AOAAAADoAAAAIwAAABcAAADDAAAA4QAAAOEAAADJAAAAHgAAABsAAADeAAAA/wAAAP8AAADlAAAAIQAA
|
||||
AAAAAAAYAAAAHAAAABwAAAAZAAAAAAAAABsAAADgAAAA5wAAACQAAAABAAAAFwAAADMAAADPAAAA0wAA
|
||||
ACAAAAAbAAAA4AAAAOgAAAAjAAAAAAAAABgAAAAcAAAAHAAAABkAAAAAAAAAGgAAAN4AAAD/AAAA/wAA
|
||||
AOkAAABCAAAAIQAAACIAAAAiAAAAIgAAACIAAAAiAAAAPQAAAOUAAADnAAAAJAAAAAIAAAAcAAAAOAAA
|
||||
AMoAAADMAAAAHwAAABsAAADgAAAA7AAAAEMAAAAhAAAAIgAAACIAAAAiAAAAIgAAACIAAAA8AAAA4wAA
|
||||
AP8AAAD/AAAA/AAAAOkAAADlAAAA5QAAAOUAAADlAAAA5QAAAOUAAADoAAAA/QAAAOUAAAAiAAAAGQAA
|
||||
AMoAAADTAAAAOgAAABgAAAACAAAAHQAAAN4AAAD/AAAA6QAAAOUAAADlAAAA5QAAAOUAAADlAAAA5QAA
|
||||
AOgAAAD8AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA5QAA
|
||||
ACIAAAAcAAAA4wAAAOkAAAAiAAAAAAAAAAAAAAAdAAAA3gAAAP8AAAD/AAAA/wAAAP8AAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA/wAAAP8AAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="openFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>141, 17</value>
|
||||
</metadata>
|
||||
<metadata name="saveFileDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>289, 17</value>
|
||||
</metadata>
|
||||
</root>
|
||||
Generated
+290
@@ -0,0 +1,290 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmRegex
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmRegex));
|
||||
this.tabControl3 = new System.Windows.Forms.TabControl();
|
||||
this.TabTxtResult = new System.Windows.Forms.TabPage();
|
||||
this.RichRegexOutput = new System.Windows.Forms.RichTextBox();
|
||||
this.contextMenuStripRichText1 = new ryProcessManager.hezuo.ContextMenuStripRichText();
|
||||
this.tabPage10 = new System.Windows.Forms.TabPage();
|
||||
this.table1 = new XPTable.Models.Table();
|
||||
this.columnModel1 = new XPTable.Models.ColumnModel();
|
||||
this.textColumn1 = new XPTable.Models.TextColumn();
|
||||
this.textColumn2 = new XPTable.Models.TextColumn();
|
||||
this.textColumn3 = new XPTable.Models.TextColumn();
|
||||
this.tableModel1 = new XPTable.Models.TableModel();
|
||||
this.tabPage11 = new System.Windows.Forms.TabPage();
|
||||
this.LnkRegexHelp = new System.Windows.Forms.LinkLabel();
|
||||
this.ChkIgnoreCase = new System.Windows.Forms.CheckBox();
|
||||
this.ChkMultiline = new System.Windows.Forms.CheckBox();
|
||||
this.RySearchRegex = new ryControls.rySearch();
|
||||
this.label12 = new System.Windows.Forms.Label();
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.TxtRegexInput = new ryControls.Controls.RichTextBox2();
|
||||
this.tabControl3.SuspendLayout();
|
||||
this.TabTxtResult.SuspendLayout();
|
||||
this.tabPage10.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).BeginInit();
|
||||
this.tabPage11.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// tabControl3
|
||||
//
|
||||
this.tabControl3.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.tabControl3.Controls.Add(this.TabTxtResult);
|
||||
this.tabControl3.Controls.Add(this.tabPage10);
|
||||
this.tabControl3.Controls.Add(this.tabPage11);
|
||||
this.tabControl3.Location = new System.Drawing.Point(12, 201);
|
||||
this.tabControl3.Name = "tabControl3";
|
||||
this.tabControl3.SelectedIndex = 0;
|
||||
this.tabControl3.Size = new System.Drawing.Size(825, 294);
|
||||
this.tabControl3.TabIndex = 13;
|
||||
//
|
||||
// TabTxtResult
|
||||
//
|
||||
this.TabTxtResult.Controls.Add(this.RichRegexOutput);
|
||||
this.TabTxtResult.Location = new System.Drawing.Point(4, 22);
|
||||
this.TabTxtResult.Name = "TabTxtResult";
|
||||
this.TabTxtResult.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.TabTxtResult.Size = new System.Drawing.Size(817, 268);
|
||||
this.TabTxtResult.TabIndex = 0;
|
||||
this.TabTxtResult.Text = "普通结果";
|
||||
this.TabTxtResult.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// RichRegexOutput
|
||||
//
|
||||
this.RichRegexOutput.BackColor = System.Drawing.Color.White;
|
||||
this.RichRegexOutput.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.RichRegexOutput.ContextMenuStrip = this.contextMenuStripRichText1;
|
||||
this.RichRegexOutput.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.RichRegexOutput.Location = new System.Drawing.Point(3, 3);
|
||||
this.RichRegexOutput.Name = "RichRegexOutput";
|
||||
this.RichRegexOutput.ReadOnly = true;
|
||||
this.RichRegexOutput.Size = new System.Drawing.Size(811, 262);
|
||||
this.RichRegexOutput.TabIndex = 4;
|
||||
this.RichRegexOutput.Text = "";
|
||||
this.RichRegexOutput.WordWrap = false;
|
||||
//
|
||||
// contextMenuStripRichText1
|
||||
//
|
||||
this.contextMenuStripRichText1.Name = "contextMenuStripRichText1";
|
||||
this.contextMenuStripRichText1.Size = new System.Drawing.Size(101, 164);
|
||||
//
|
||||
// tabPage10
|
||||
//
|
||||
this.tabPage10.Controls.Add(this.table1);
|
||||
this.tabPage10.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage10.Name = "tabPage10";
|
||||
this.tabPage10.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage10.Size = new System.Drawing.Size(817, 268);
|
||||
this.tabPage10.TabIndex = 1;
|
||||
this.tabPage10.Text = "列表展示";
|
||||
this.tabPage10.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// table1
|
||||
//
|
||||
this.table1.ColumnModel = this.columnModel1;
|
||||
this.table1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.table1.FullRowSelect = true;
|
||||
this.table1.Location = new System.Drawing.Point(3, 3);
|
||||
this.table1.Name = "table1";
|
||||
this.table1.NoItemsText = "当前列表没有任何项";
|
||||
this.table1.Size = new System.Drawing.Size(811, 262);
|
||||
this.table1.TabIndex = 0;
|
||||
this.table1.TableModel = this.tableModel1;
|
||||
this.table1.Text = "table1";
|
||||
//
|
||||
// columnModel1
|
||||
//
|
||||
this.columnModel1.Columns.AddRange(new XPTable.Models.Column[] {
|
||||
this.textColumn1,
|
||||
this.textColumn2,
|
||||
this.textColumn3});
|
||||
//
|
||||
// textColumn1
|
||||
//
|
||||
this.textColumn1.Editable = false;
|
||||
this.textColumn1.Tag = null;
|
||||
this.textColumn1.Text = "匹配的内容";
|
||||
this.textColumn1.Width = 550;
|
||||
//
|
||||
// textColumn2
|
||||
//
|
||||
this.textColumn2.Editable = false;
|
||||
this.textColumn2.Tag = null;
|
||||
this.textColumn2.Text = "位置";
|
||||
//
|
||||
// textColumn3
|
||||
//
|
||||
this.textColumn3.Editable = false;
|
||||
this.textColumn3.Tag = null;
|
||||
this.textColumn3.Text = "分组";
|
||||
this.textColumn3.Width = 150;
|
||||
//
|
||||
// tabPage11
|
||||
//
|
||||
this.tabPage11.Controls.Add(this.LnkRegexHelp);
|
||||
this.tabPage11.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage11.Name = "tabPage11";
|
||||
this.tabPage11.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage11.Size = new System.Drawing.Size(817, 268);
|
||||
this.tabPage11.TabIndex = 2;
|
||||
this.tabPage11.Text = "正则帮助";
|
||||
this.tabPage11.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// LnkRegexHelp
|
||||
//
|
||||
this.LnkRegexHelp.AutoSize = true;
|
||||
this.LnkRegexHelp.Location = new System.Drawing.Point(13, 10);
|
||||
this.LnkRegexHelp.Name = "LnkRegexHelp";
|
||||
this.LnkRegexHelp.Size = new System.Drawing.Size(53, 12);
|
||||
this.LnkRegexHelp.TabIndex = 0;
|
||||
this.LnkRegexHelp.TabStop = true;
|
||||
this.LnkRegexHelp.Text = "访问帮助";
|
||||
this.LnkRegexHelp.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.LnkRegexHelp_LinkClicked);
|
||||
//
|
||||
// ChkIgnoreCase
|
||||
//
|
||||
this.ChkIgnoreCase.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.ChkIgnoreCase.AutoSize = true;
|
||||
this.ChkIgnoreCase.Location = new System.Drawing.Point(616, 12);
|
||||
this.ChkIgnoreCase.Name = "ChkIgnoreCase";
|
||||
this.ChkIgnoreCase.Size = new System.Drawing.Size(84, 16);
|
||||
this.ChkIgnoreCase.TabIndex = 17;
|
||||
this.ChkIgnoreCase.Text = "忽略大小写";
|
||||
this.ChkIgnoreCase.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// ChkMultiline
|
||||
//
|
||||
this.ChkMultiline.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.ChkMultiline.AutoSize = true;
|
||||
this.ChkMultiline.Location = new System.Drawing.Point(538, 12);
|
||||
this.ChkMultiline.Name = "ChkMultiline";
|
||||
this.ChkMultiline.Size = new System.Drawing.Size(72, 16);
|
||||
this.ChkMultiline.TabIndex = 16;
|
||||
this.ChkMultiline.Text = "多行模式";
|
||||
this.ChkMultiline.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// RySearchRegex
|
||||
//
|
||||
this.RySearchRegex.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.RySearchRegex.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
|
||||
this.RySearchRegex.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.RySearchRegex.EmptyText = "";
|
||||
this.RySearchRegex.Location = new System.Drawing.Point(81, 6);
|
||||
this.RySearchRegex.Name = "RySearchRegex";
|
||||
this.RySearchRegex.Size = new System.Drawing.Size(451, 25);
|
||||
this.RySearchRegex.TabIndex = 14;
|
||||
this.RySearchRegex.OnSearch += new System.EventHandler(this.RySearchRegex_OnSearch);
|
||||
//
|
||||
// label12
|
||||
//
|
||||
this.label12.AutoSize = true;
|
||||
this.label12.Location = new System.Drawing.Point(10, 13);
|
||||
this.label12.Name = "label12";
|
||||
this.label12.Size = new System.Drawing.Size(65, 12);
|
||||
this.label12.TabIndex = 12;
|
||||
this.label12.Text = "正则表达式";
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(185, 70);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// TxtRegexInput
|
||||
//
|
||||
this.TxtRegexInput.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.TxtRegexInput.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.TxtRegexInput.DetectUrls = false;
|
||||
this.TxtRegexInput.EmptyText = "在此输入待匹配文本";
|
||||
this.TxtRegexInput.ForeColor = System.Drawing.Color.Black;
|
||||
this.TxtRegexInput.Location = new System.Drawing.Point(12, 37);
|
||||
this.TxtRegexInput.Name = "TxtRegexInput";
|
||||
this.TxtRegexInput.OnlyInputText = true;
|
||||
this.TxtRegexInput.Size = new System.Drawing.Size(825, 158);
|
||||
this.TxtRegexInput.TabIndex = 18;
|
||||
this.TxtRegexInput.Text = "";
|
||||
this.TxtRegexInput.DoubleClick += new System.EventHandler(this.TxtRegexInput_DoubleClick);
|
||||
//
|
||||
// FrmRegex
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(849, 499);
|
||||
this.Controls.Add(this.TxtRegexInput);
|
||||
this.Controls.Add(this.tabControl3);
|
||||
this.Controls.Add(this.ChkIgnoreCase);
|
||||
this.Controls.Add(this.ChkMultiline);
|
||||
this.Controls.Add(this.RySearchRegex);
|
||||
this.Controls.Add(this.label12);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmRegex";
|
||||
this.TabPageContextMenuStrip = this.menuRight1;
|
||||
this.Text = "正则表达式";
|
||||
this.tabControl3.ResumeLayout(false);
|
||||
this.TabTxtResult.ResumeLayout(false);
|
||||
this.tabPage10.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).EndInit();
|
||||
this.tabPage11.ResumeLayout(false);
|
||||
this.tabPage11.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.TabControl tabControl3;
|
||||
private System.Windows.Forms.TabPage TabTxtResult;
|
||||
private System.Windows.Forms.RichTextBox RichRegexOutput;
|
||||
private System.Windows.Forms.TabPage tabPage10;
|
||||
private XPTable.Models.Table table1;
|
||||
private System.Windows.Forms.TabPage tabPage11;
|
||||
private System.Windows.Forms.LinkLabel LnkRegexHelp;
|
||||
private System.Windows.Forms.CheckBox ChkIgnoreCase;
|
||||
private System.Windows.Forms.CheckBox ChkMultiline;
|
||||
private ryControls.rySearch RySearchRegex;
|
||||
private System.Windows.Forms.Label label12;
|
||||
private XPTable.Models.ColumnModel columnModel1;
|
||||
private XPTable.Models.TableModel tableModel1;
|
||||
private XPTable.Models.TextColumn textColumn1;
|
||||
private XPTable.Models.TextColumn textColumn2;
|
||||
private XPTable.Models.TextColumn textColumn3;
|
||||
private ryProcessManager.hezuo.ContextMenuStripRichText contextMenuStripRichText1;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
private ryControls.Controls.RichTextBox2 TxtRegexInput;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,110 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmRegex : DockContent
|
||||
{
|
||||
public FrmRegex()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void RySearchRegex_OnSearch(object sender, EventArgs e)
|
||||
{
|
||||
if (RySearchRegex.Text.Trim() == "")
|
||||
{
|
||||
MessageBox.Show("正则表达式不能为空。", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
return;
|
||||
}
|
||||
RichRegexOutput.Text = "";
|
||||
table1.TableModel.Rows.Clear();
|
||||
tabPage10.Text = "列表展示(" + tableModel1.Rows.Count + ")";
|
||||
TabTxtResult.Text = "普通结果(正在读取)";
|
||||
bool IgnoreCase = ChkIgnoreCase.Checked;
|
||||
bool Multiline = ChkMultiline.Checked;
|
||||
string RegexText = RySearchRegex.Text;
|
||||
string RegexInput = TxtRegexInput.Text;
|
||||
table1.BeginUpdate();
|
||||
try
|
||||
{
|
||||
RegexOptions option = new RegexOptions();
|
||||
if (IgnoreCase)
|
||||
{
|
||||
option = RegexOptions.IgnoreCase;
|
||||
}
|
||||
if (Multiline) { option = option | RegexOptions.Multiline; }
|
||||
Regex reg = new Regex(RegexText, option);
|
||||
//返回一个结果集
|
||||
MatchCollection result = reg.Matches(RegexInput);
|
||||
string[] groups = reg.GetGroupNames();
|
||||
string txt = "";
|
||||
//遍历每个结果
|
||||
for(int n=0;n<result.Count;n++)
|
||||
{
|
||||
Match m = result[n];
|
||||
//输出结果
|
||||
txt += m.ToString() + "\r\n";
|
||||
if (m.Groups.Count > 0)
|
||||
{
|
||||
for (int i = 0; i < groups.Length; i++)
|
||||
{
|
||||
XPTable.Models.Row itemList = new XPTable.Models.Row();
|
||||
//需要修改此处
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(m.Groups[groups[i]].Value));//示例
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(m.Index.ToString()));
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(groups[i]));
|
||||
tableModel1.Rows.Add(itemList);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
XPTable.Models.Row itemList = new XPTable.Models.Row();
|
||||
//需要修改此处
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(m.ToString()));//示例
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(m.Index.ToString()));
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(""));
|
||||
tableModel1.Rows.Add(itemList);
|
||||
}
|
||||
}
|
||||
table1.EndUpdate();
|
||||
RichRegexOutput.Text = txt;
|
||||
TabTxtResult.Text = "普通结果("+result.Count+")";
|
||||
tabPage10.Text = "列表展示(" + tableModel1.Rows.Count + ")";
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
TabTxtResult.Text = "普通结果(" + 0 + ")";
|
||||
tabPage10.Text = "列表展示(" + tableModel1.Rows.Count + ")";
|
||||
MessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
|
||||
}
|
||||
}
|
||||
|
||||
private void LnkRegexHelp_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
|
||||
{
|
||||
ryCommon.RyFiles.OpenUrl("http://www.runoob.com/regexp/regexp-metachar.html");
|
||||
}
|
||||
|
||||
private void TxtRegexInput_DoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
ryControls.Controls.RichTextBox2 txt = (ryControls.Controls.RichTextBox2)sender;
|
||||
开发辅助工具.Controls.FrmText frm = new Controls.FrmText
|
||||
{
|
||||
Icon = Icon
|
||||
};
|
||||
frm.richTextBox1.Text = txt.Text;
|
||||
if (frm.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
txt.Text = frm.richTextBox1.Text;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,209 @@
|
||||
<?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>
|
||||
<metadata name="contextMenuStripRichText1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>303, 14</value>
|
||||
</metadata>
|
||||
<metadata name="columnModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>35, 14</value>
|
||||
</metadata>
|
||||
<metadata name="tableModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>176, 14</value>
|
||||
</metadata>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>518, 14</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJmZmQCKiooAnp6eAI2N
|
||||
jQaUlJQXlJSUFYaGhgSenp4AeHh4AJmZmQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmZmZAJ6e
|
||||
ngCZmZk5pqammK2trb2srKy7paWllpqamjmdnZ0AmZmZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACZmZkAmZmZAJmZmQCZmZkAmZmZAAAA
|
||||
AACZmZkAlZWVEqqqqrTLy8v/1NTU/9PT0//Kysr/qampsZSUlA+ZmZkAAAAAAJmZmQCZmZkAmZmZAJmZ
|
||||
mQCZmZkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmZmZAJeXlwDAwMAAgYGBB21t
|
||||
bQKYmJgAmZmZAJmZmQCWlpY6u7u75djY2P/Z2dn/2dnZ/9fX1/+4uLjblpaWMJmZmQCZmZkAmJiYAG1t
|
||||
bQKBgYEHzc3NAJOTkwCZmZkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJmZmQCYmJgAkpKSDZ+f
|
||||
n0+pqamYpKSkeJaWlisPDw8AFxcXAZqamm7Dw8P82tra/9nZ2f/Z2dn/2tra/8HBwfWZmZljAAAAARgY
|
||||
GACWlpYrpKSkeKmpqZigoKBKbGxsApiYmACZmZkAAAAAAAAAAAAAAAAAAAAAAAAAAACZmZkAl5eXAJOT
|
||||
kw2ioqJtv7+/5M3Nzf/IyMj8sLCwzp+fn2+kpKSXuLi44tPT0//b29v/2tra/9ra2v/b29v/0tLS/7a2
|
||||
tt+kpKSWoKCgb7Gxsc7IyMj8zc3N/7m5ueGenp5UdnZ2ApSUlACZmZkAAAAAAAAAAAAAAAAAAAAAAJmZ
|
||||
mQCtra0Anp6eS7+/v+TZ2dn/3Nzc/9zc3P/U1NT/x8fH+c7Ozv/Y2Nj/29vb/9vb2//b29v/29vb/9vb
|
||||
2//b29v/2NjY/87Ozv/Hx8f51dXV/9zc3P/c3Nz/19fX/7m5ueGfn59HsbGxAJmZmQAAAAAAAAAAAAAA
|
||||
AAAAAAAAmZmZAH5+fgapqamTz8/P/93d3f/c3Nz/3Nzc/9zc3P/c3Nz/3Nzc/9zc3P/b29v/3Nzc/93d
|
||||
3f/d3d3/3Nzc/9zc3P/c3Nz/3Nzc/9zc3P/c3Nz/3Nzc/9zc3P/d3d3/z8/P/6mpqZN+fn4GmZmZAAAA
|
||||
AAAAAAAAAAAAAAAAAACZmZkAAAAAAKOjo2vOzs745OTk/93d3f/d3d3/3d3d/93d3f/d3d3/39/f/+Li
|
||||
4v/g4OD/4ODg/+Dg4P/g4OD/4eHh/9/f3//d3d3/3d3d/93d3f/d3d3/3d3d/+Tk5P/Ozs74o6OjawAA
|
||||
AACZmZkAAAAAAAAAAAAAAAAAAAAAAJmZmQCYmJgAlJSUIbOzs8Th4eH/4ODg/93d3f/e3t7/39/f/+Pj
|
||||
4//g4OD/2tra/9XV1f/S0tL/0tLS/9XV1f/a2tr/4ODg/+Pj4//f39//3t7e/93d3f/g4OD/4eHh/7Oz
|
||||
s8OUlJQhmJiYAJmZmQAAAAAAAAAAAAAAAAAAAAAAAAAAAJmZmQDj4+MAn5+fbsvLy/ng4OD/3t7e/9/f
|
||||
3//j4+P/29vb/9HR0f/Pz8//z8/P/9DQ0P/Q0ND/z8/P/8/Pz//R0dH/29vb/+Pj4//f39//3t7e/+Dg
|
||||
4P/Kysr4n5+fbOfn5wCZmZkAAAAAAAAAAAAAAAAAmZmZAJmZmQCZmZkAmJiYAAwMDAGlpaWX0tLS/+Dg
|
||||
4P/g4OD/5OTk/9nZ2f/Ozs7/zs7O/87Ozv/Ozs7/zs7O/87Ozv/Ozs7/zs7O/87Ozv/Ozs7/2dnZ/+Pj
|
||||
4//g4OD/4ODg/9LS0v+kpKSOvLy8AJmZmQCZmZkAmZmZAJmZmQCRkZEAo6OjAJWVlReWlpY8nJycbbu7
|
||||
u+Le3t7/4ODg/+Li4v/c3Nz/zc3N/8vLy//Ly8v/y8vL/szMzNrMzMy2zMzMtszMzNrLy8v+y8vL/8vL
|
||||
y//Nzc3/3d3d/+Li4v/g4OD/3d3d/7q6ut2amppqlpaWPJWVlRejo6MAkZGRAJ+fnwCZmZk5ra2tucDA
|
||||
wOfJycn829vb/+Li4v/i4uL/4uLi/9HR0f/IyMj/ycnJ/8nJyf7Jycm1ysrKNsnJyQ3JyckNysrKNsnJ
|
||||
ybXJycn+ycnJ/8jIyP/R0dH/4uLi/+Li4v/i4uL/2dnZ/8jIyPzAwMDnra2tuZqamjqhoaEAg4ODBKen
|
||||
p5bT09P/4uLi/+Tk5P/j4+P/4+Pj/+Tk5P/e3t7/ycnJ/8bGxv/Gxsb/xsbG2sbGxjbIyMgAysrKAMrK
|
||||
ygDIyMgAxsbGNsbGxtrGxsb/xsbG/8nJyf/d3d3/5OTk/+Pj4//k5OT/5OTk/+Li4v/S0tL/oqKikbu7
|
||||
uwCTk5MVsLCwu97e3v/k5OT/5OTk/+Tk5P/k5OT/5eXl/9vb2//ExMT/xMTE/8TExP/ExMS2xMTEDcXF
|
||||
xQDIyMgAyMjIAMXFxQDExMQNxMTEtsTExP/ExMT/xMTE/9zc3P/l5eX/5OTk/+Tk5P/k5OT/5OTk/9vb
|
||||
2/+kpKSmwcHBAJKSkhKvr6+54ODg/+bm5v/l5eX/5eXl/+Xl5f/m5ub/2tra/8LCwv/BwcH/wcHB/8HB
|
||||
wbbBwcENwMDAAL29vQC9vb0AwMDAAMHBwQ3BwcG2wcHB/8HBwf/BwcH/2dnZ/+bm5v/l5eX/5eXl/+Xl
|
||||
5f/m5ub/3d3d/6SkpKbCwsIAYWFhAqenp47f39//8vLy/+7u7v/p6en/5ubm/+bm5v/c3Nz/wsLC/76+
|
||||
vv+/v7//v7+/2r6+vja9vb0Au7u7ALu7uwC9vb0Avr6+Nr+/v9q/v7//vr6+/8LCwv/c3Nz/5ubm/+bm
|
||||
5v/p6en/7u7u//Ly8v/e3t7/pKSki8LCwgCioqIAm5ubM7Gxsa3KysrZ19fX9ezs7P/t7e3/5+fn/+Pj
|
||||
4//Hx8f/vLy8/7y8vP+8vLz+vLy8tbu7uza7u7sNu7u7Dbu7uza8vLy1vLy8/ry8vP+8vLz/x8fH/+Pj
|
||||
4//n5+f/7e3t/+3t7f/X19f1ysrK2bGxsa2bm5szpaWlAGpqagCgoKAAkJCQDJSUlC+ZmZlfxMTE2u3t
|
||||
7f/p6en/6Ojo/9TU1P+7u7v/ubm5/7q6uv+6urr+ubm52rm5uba5ubm2ubm52rq6uv66urr/ubm5/7u7
|
||||
u//U1NT/6Ojo/+np6f/u7u7/w8PD2ZmZmV+UlJQvkJCQDKCgoABqamoAmZmZAJmZmQCZmZkAmJiYAL6+
|
||||
vgCmpqaN4ODg/+zs7P/p6en/5ubm/8jIyP+3t7f/t7e3/7e3t/+3t7f/t7e3/7e3t/+3t7f/t7e3/7e3
|
||||
t/+3t7f/yMjI/+bm5v/p6en/7Ozs/97e3v6lpaWIvb29AJiYmACZmZkAmZmZAJmZmQAAAAAAAAAAAAAA
|
||||
AACZmZkAEBAQAKGhoXDS0tL56+vr/+rq6v/q6ur/4+Pj/8fHx/+3t7f/tbW1/7W1tf+1tbX/tbW1/7W1
|
||||
tf+1tbX/t7e3/8fHx//j4+P/6urq/+rq6v/r6+v/0tLS+aGhoW////8AmZmZAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAmZmZAJiYmACVlZUrtbW1zuPj4//r6+v/6+vr/+vr6//r6+v/5+fn/9TU1P/CwsL/urq6/7W1
|
||||
tf+1tbX/urq6/8LCwv/U1NT/5+fn/+vr6//r6+v/6+vr/+vr6//i4uL/tLS0yZWVlSaYmJgAmZmZAAAA
|
||||
AAAAAAAAAAAAAAAAAACZmZkAYWFhAqioqHnV1dX87Ozs/+zs7P/s7Oz/7Ozs/+vr6//s7Oz/7Ozs/+bm
|
||||
5v/e3t7/2tra/9ra2v/e3t7/5ubm/+zs7P/s7Oz/6+vr/+zs7P/s7Oz/7Ozs/+zs7P/U1NT6qKiod2Rk
|
||||
ZAKZmZkAAAAAAAAAAAAAAAAAAAAAAJmZmQB4eHgGrq6uleDg4P/x8fH/7e3t/+3t7f/x8fH/9PT0//Ly
|
||||
8v/u7u7/7e3t/+7u7v/u7u7/7u7u/+7u7v/t7e3/7u7u//Ly8v/09PT/8fHx/+3t7f/t7e3/8vLy/+Dg
|
||||
4P+urq6VeHh4BpmZmQAAAAAAAAAAAAAAAAAAAAAAmZmZALy8vAChoaFHysrK4fX19f/09PT/9fX1//Dw
|
||||
8P/b29v45+fn/fX19f/09PT/7u7u/+7u7v/u7u7/7u7u//T09P/19fX/5ubm/dra2vfw8PD/9fX1//T0
|
||||
9P/19fX/ysrK4aGhoUe8vLwAmZmZAAAAAAAAAAAAAAAAAAAAAACZmZkAkZGRAGNjYwKioqJUysrK4ejo
|
||||
6P/e3t74uLi4xKCgoGmoqKiFxcXF2e/v7//x8fH/7u7u/+7u7v/y8vL/7+/v/8XFxdmnp6eDoKCgZ7i4
|
||||
uMTe3t746Ojo/8rKyuGioqJUY2NjApGRkQCZmZkAAAAAAAAAAAAAAAAAAAAAAAAAAACZmZkAl5eXAHBw
|
||||
cAKfn59EsLCwkKioqGuTk5Mh////AL6+vgCZmZlj09PT+fPz8//v7+//7+/v//T09P/S0tL1mZmZX8HB
|
||||
wQD///8Ak5OTIaioqGuwsLCQn5+fRHBwcAKXl5cAmZmZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AACZmZkAkpKSAKurqwBubm4FAAAAAZiYmACZmZkAmZmZAJWVlTjIyMji9PT0//Dw8P/w8PD/8/Pz/8XF
|
||||
xduVlZUxmZmZAJmZmQCYmJgAAAAAAW5ubgWrq6sAkpKSAJmZmQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAACZmZkAmZmZAJmZmQCZmZkAmZmZAAAAAACZmZkAkZGRDrKysq/k5OT/7+/v/+/v
|
||||
7//k5OT/srKyr5GRkQ+ZmZkAAAAAAJmZmQCZmZkAmZmZAJmZmQCZmZkAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJmZmQCgoKAAm5ubM6am
|
||||
pouoqKimqKiopqampoubm5szoKCgAJmZmQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmZmZAGpq
|
||||
agCkpKQAx8fHANDQ0ADQ0NAAx8fHAKSkpABqamoAmZmZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAA/+AH///gB//4IAQf8AAAD+AAAAfAAAADwAAAA8AAAAPAAAADwAAAA+AA
|
||||
AAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAB8AAAAPAAAADwAAAA8AA
|
||||
AAPAAAAD4AAAB/AAAA/4IAQf/+AH///gB/8=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
Generated
+84
@@ -0,0 +1,84 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmSetup
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmSetup));
|
||||
this.BtnCopyExe = new System.Windows.Forms.Button();
|
||||
this.BtnCopyPram = new System.Windows.Forms.Button();
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// BtnCopyExe
|
||||
//
|
||||
this.BtnCopyExe.Location = new System.Drawing.Point(12, 12);
|
||||
this.BtnCopyExe.Name = "BtnCopyExe";
|
||||
this.BtnCopyExe.Size = new System.Drawing.Size(142, 38);
|
||||
this.BtnCopyExe.TabIndex = 4;
|
||||
this.BtnCopyExe.Text = "复制命令";
|
||||
this.BtnCopyExe.UseVisualStyleBackColor = true;
|
||||
this.BtnCopyExe.Click += new System.EventHandler(this.BtnCopyExe_Click);
|
||||
//
|
||||
// BtnCopyPram
|
||||
//
|
||||
this.BtnCopyPram.Location = new System.Drawing.Point(160, 12);
|
||||
this.BtnCopyPram.Name = "BtnCopyPram";
|
||||
this.BtnCopyPram.Size = new System.Drawing.Size(142, 38);
|
||||
this.BtnCopyPram.TabIndex = 5;
|
||||
this.BtnCopyPram.Text = "复制参数";
|
||||
this.BtnCopyPram.UseVisualStyleBackColor = true;
|
||||
this.BtnCopyPram.Click += new System.EventHandler(this.BtnCopyPram_Click);
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(185, 92);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// FrmSetup
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(800, 450);
|
||||
this.Controls.Add(this.BtnCopyExe);
|
||||
this.Controls.Add(this.BtnCopyPram);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmSetup";
|
||||
this.Text = "安装";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Button BtnCopyExe;
|
||||
private System.Windows.Forms.Button BtnCopyPram;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmSetup : DockContent
|
||||
{
|
||||
public FrmSetup()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void BtnCopyExe_Click(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.RyFiles.CopyToClip(Application.ExecutablePath);
|
||||
}
|
||||
|
||||
private void BtnCopyPram_Click(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.RyFiles.CopyToClip("get \"$(ProjectDir)$(ProjectFileName)\"");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,200 @@
|
||||
<?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>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJmZmQCKiooAnp6eAI2N
|
||||
jQaUlJQXlJSUFYaGhgSenp4AeHh4AJmZmQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmZmZAJ6e
|
||||
ngCZmZk5pqammK2trb2srKy7paWllpqamjmdnZ0AmZmZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACZmZkAmZmZAJmZmQCZmZkAmZmZAAAA
|
||||
AACZmZkAlZWVEqqqqrTLy8v/1NTU/9PT0//Kysr/qampsZSUlA+ZmZkAAAAAAJmZmQCZmZkAmZmZAJmZ
|
||||
mQCZmZkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmZmZAJeXlwDAwMAAgYGBB21t
|
||||
bQKYmJgAmZmZAJmZmQCWlpY6u7u75djY2P/Z2dn/2dnZ/9fX1/+4uLjblpaWMJmZmQCZmZkAmJiYAG1t
|
||||
bQKBgYEHzc3NAJOTkwCZmZkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJmZmQCYmJgAkpKSDZ+f
|
||||
n0+pqamYpKSkeJaWlisPDw8AFxcXAZqamm7Dw8P82tra/9nZ2f/Z2dn/2tra/8HBwfWZmZljAAAAARgY
|
||||
GACWlpYrpKSkeKmpqZigoKBKbGxsApiYmACZmZkAAAAAAAAAAAAAAAAAAAAAAAAAAACZmZkAl5eXAJOT
|
||||
kw2ioqJtv7+/5M3Nzf/IyMj8sLCwzp+fn2+kpKSXuLi44tPT0//b29v/2tra/9ra2v/b29v/0tLS/7a2
|
||||
tt+kpKSWoKCgb7Gxsc7IyMj8zc3N/7m5ueGenp5UdnZ2ApSUlACZmZkAAAAAAAAAAAAAAAAAAAAAAJmZ
|
||||
mQCtra0Anp6eS7+/v+TZ2dn/3Nzc/9zc3P/U1NT/x8fH+c7Ozv/Y2Nj/29vb/9vb2//b29v/29vb/9vb
|
||||
2//b29v/2NjY/87Ozv/Hx8f51dXV/9zc3P/c3Nz/19fX/7m5ueGfn59HsbGxAJmZmQAAAAAAAAAAAAAA
|
||||
AAAAAAAAmZmZAH5+fgapqamTz8/P/93d3f/c3Nz/3Nzc/9zc3P/c3Nz/3Nzc/9zc3P/b29v/3Nzc/93d
|
||||
3f/d3d3/3Nzc/9zc3P/c3Nz/3Nzc/9zc3P/c3Nz/3Nzc/9zc3P/d3d3/z8/P/6mpqZN+fn4GmZmZAAAA
|
||||
AAAAAAAAAAAAAAAAAACZmZkAAAAAAKOjo2vOzs745OTk/93d3f/d3d3/3d3d/93d3f/d3d3/39/f/+Li
|
||||
4v/g4OD/4ODg/+Dg4P/g4OD/4eHh/9/f3//d3d3/3d3d/93d3f/d3d3/3d3d/+Tk5P/Ozs74o6OjawAA
|
||||
AACZmZkAAAAAAAAAAAAAAAAAAAAAAJmZmQCYmJgAlJSUIbOzs8Th4eH/4ODg/93d3f/e3t7/39/f/+Pj
|
||||
4//g4OD/2tra/9XV1f/S0tL/0tLS/9XV1f/a2tr/4ODg/+Pj4//f39//3t7e/93d3f/g4OD/4eHh/7Oz
|
||||
s8OUlJQhmJiYAJmZmQAAAAAAAAAAAAAAAAAAAAAAAAAAAJmZmQDj4+MAn5+fbsvLy/ng4OD/3t7e/9/f
|
||||
3//j4+P/29vb/9HR0f/Pz8//z8/P/9DQ0P/Q0ND/z8/P/8/Pz//R0dH/29vb/+Pj4//f39//3t7e/+Dg
|
||||
4P/Kysr4n5+fbOfn5wCZmZkAAAAAAAAAAAAAAAAAmZmZAJmZmQCZmZkAmJiYAAwMDAGlpaWX0tLS/+Dg
|
||||
4P/g4OD/5OTk/9nZ2f/Ozs7/zs7O/87Ozv/Ozs7/zs7O/87Ozv/Ozs7/zs7O/87Ozv/Ozs7/2dnZ/+Pj
|
||||
4//g4OD/4ODg/9LS0v+kpKSOvLy8AJmZmQCZmZkAmZmZAJmZmQCRkZEAo6OjAJWVlReWlpY8nJycbbu7
|
||||
u+Le3t7/4ODg/+Li4v/c3Nz/zc3N/8vLy//Ly8v/y8vL/szMzNrMzMy2zMzMtszMzNrLy8v+y8vL/8vL
|
||||
y//Nzc3/3d3d/+Li4v/g4OD/3d3d/7q6ut2amppqlpaWPJWVlRejo6MAkZGRAJ+fnwCZmZk5ra2tucDA
|
||||
wOfJycn829vb/+Li4v/i4uL/4uLi/9HR0f/IyMj/ycnJ/8nJyf7Jycm1ysrKNsnJyQ3JyckNysrKNsnJ
|
||||
ybXJycn+ycnJ/8jIyP/R0dH/4uLi/+Li4v/i4uL/2dnZ/8jIyPzAwMDnra2tuZqamjqhoaEAg4ODBKen
|
||||
p5bT09P/4uLi/+Tk5P/j4+P/4+Pj/+Tk5P/e3t7/ycnJ/8bGxv/Gxsb/xsbG2sbGxjbIyMgAysrKAMrK
|
||||
ygDIyMgAxsbGNsbGxtrGxsb/xsbG/8nJyf/d3d3/5OTk/+Pj4//k5OT/5OTk/+Li4v/S0tL/oqKikbu7
|
||||
uwCTk5MVsLCwu97e3v/k5OT/5OTk/+Tk5P/k5OT/5eXl/9vb2//ExMT/xMTE/8TExP/ExMS2xMTEDcXF
|
||||
xQDIyMgAyMjIAMXFxQDExMQNxMTEtsTExP/ExMT/xMTE/9zc3P/l5eX/5OTk/+Tk5P/k5OT/5OTk/9vb
|
||||
2/+kpKSmwcHBAJKSkhKvr6+54ODg/+bm5v/l5eX/5eXl/+Xl5f/m5ub/2tra/8LCwv/BwcH/wcHB/8HB
|
||||
wbbBwcENwMDAAL29vQC9vb0AwMDAAMHBwQ3BwcG2wcHB/8HBwf/BwcH/2dnZ/+bm5v/l5eX/5eXl/+Xl
|
||||
5f/m5ub/3d3d/6SkpKbCwsIAYWFhAqenp47f39//8vLy/+7u7v/p6en/5ubm/+bm5v/c3Nz/wsLC/76+
|
||||
vv+/v7//v7+/2r6+vja9vb0Au7u7ALu7uwC9vb0Avr6+Nr+/v9q/v7//vr6+/8LCwv/c3Nz/5ubm/+bm
|
||||
5v/p6en/7u7u//Ly8v/e3t7/pKSki8LCwgCioqIAm5ubM7Gxsa3KysrZ19fX9ezs7P/t7e3/5+fn/+Pj
|
||||
4//Hx8f/vLy8/7y8vP+8vLz+vLy8tbu7uza7u7sNu7u7Dbu7uza8vLy1vLy8/ry8vP+8vLz/x8fH/+Pj
|
||||
4//n5+f/7e3t/+3t7f/X19f1ysrK2bGxsa2bm5szpaWlAGpqagCgoKAAkJCQDJSUlC+ZmZlfxMTE2u3t
|
||||
7f/p6en/6Ojo/9TU1P+7u7v/ubm5/7q6uv+6urr+ubm52rm5uba5ubm2ubm52rq6uv66urr/ubm5/7u7
|
||||
u//U1NT/6Ojo/+np6f/u7u7/w8PD2ZmZmV+UlJQvkJCQDKCgoABqamoAmZmZAJmZmQCZmZkAmJiYAL6+
|
||||
vgCmpqaN4ODg/+zs7P/p6en/5ubm/8jIyP+3t7f/t7e3/7e3t/+3t7f/t7e3/7e3t/+3t7f/t7e3/7e3
|
||||
t/+3t7f/yMjI/+bm5v/p6en/7Ozs/97e3v6lpaWIvb29AJiYmACZmZkAmZmZAJmZmQAAAAAAAAAAAAAA
|
||||
AACZmZkAEBAQAKGhoXDS0tL56+vr/+rq6v/q6ur/4+Pj/8fHx/+3t7f/tbW1/7W1tf+1tbX/tbW1/7W1
|
||||
tf+1tbX/t7e3/8fHx//j4+P/6urq/+rq6v/r6+v/0tLS+aGhoW////8AmZmZAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAmZmZAJiYmACVlZUrtbW1zuPj4//r6+v/6+vr/+vr6//r6+v/5+fn/9TU1P/CwsL/urq6/7W1
|
||||
tf+1tbX/urq6/8LCwv/U1NT/5+fn/+vr6//r6+v/6+vr/+vr6//i4uL/tLS0yZWVlSaYmJgAmZmZAAAA
|
||||
AAAAAAAAAAAAAAAAAACZmZkAYWFhAqioqHnV1dX87Ozs/+zs7P/s7Oz/7Ozs/+vr6//s7Oz/7Ozs/+bm
|
||||
5v/e3t7/2tra/9ra2v/e3t7/5ubm/+zs7P/s7Oz/6+vr/+zs7P/s7Oz/7Ozs/+zs7P/U1NT6qKiod2Rk
|
||||
ZAKZmZkAAAAAAAAAAAAAAAAAAAAAAJmZmQB4eHgGrq6uleDg4P/x8fH/7e3t/+3t7f/x8fH/9PT0//Ly
|
||||
8v/u7u7/7e3t/+7u7v/u7u7/7u7u/+7u7v/t7e3/7u7u//Ly8v/09PT/8fHx/+3t7f/t7e3/8vLy/+Dg
|
||||
4P+urq6VeHh4BpmZmQAAAAAAAAAAAAAAAAAAAAAAmZmZALy8vAChoaFHysrK4fX19f/09PT/9fX1//Dw
|
||||
8P/b29v45+fn/fX19f/09PT/7u7u/+7u7v/u7u7/7u7u//T09P/19fX/5ubm/dra2vfw8PD/9fX1//T0
|
||||
9P/19fX/ysrK4aGhoUe8vLwAmZmZAAAAAAAAAAAAAAAAAAAAAACZmZkAkZGRAGNjYwKioqJUysrK4ejo
|
||||
6P/e3t74uLi4xKCgoGmoqKiFxcXF2e/v7//x8fH/7u7u/+7u7v/y8vL/7+/v/8XFxdmnp6eDoKCgZ7i4
|
||||
uMTe3t746Ojo/8rKyuGioqJUY2NjApGRkQCZmZkAAAAAAAAAAAAAAAAAAAAAAAAAAACZmZkAl5eXAHBw
|
||||
cAKfn59EsLCwkKioqGuTk5Mh////AL6+vgCZmZlj09PT+fPz8//v7+//7+/v//T09P/S0tL1mZmZX8HB
|
||||
wQD///8Ak5OTIaioqGuwsLCQn5+fRHBwcAKXl5cAmZmZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AACZmZkAkpKSAKurqwBubm4FAAAAAZiYmACZmZkAmZmZAJWVlTjIyMji9PT0//Dw8P/w8PD/8/Pz/8XF
|
||||
xduVlZUxmZmZAJmZmQCYmJgAAAAAAW5ubgWrq6sAkpKSAJmZmQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAACZmZkAmZmZAJmZmQCZmZkAmZmZAAAAAACZmZkAkZGRDrKysq/k5OT/7+/v/+/v
|
||||
7//k5OT/srKyr5GRkQ+ZmZkAAAAAAJmZmQCZmZkAmZmZAJmZmQCZmZkAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJmZmQCgoKAAm5ubM6am
|
||||
pouoqKimqKiopqampoubm5szoKCgAJmZmQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmZmZAGpq
|
||||
agCkpKQAx8fHANDQ0ADQ0NAAx8fHAKSkpABqamoAmZmZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAA/+AH///gB//4IAQf8AAAD+AAAAfAAAADwAAAA8AAAAPAAAADwAAAA+AA
|
||||
AAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAB8AAAAPAAAADwAAAA8AA
|
||||
AAPAAAAD4AAAB/AAAA/4IAQf/+AH///gB/8=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
+99
@@ -0,0 +1,99 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmStrCount
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmStrCount));
|
||||
this.textEditorControl1 = new ICSharpCode.TextEditor.TextEditorControl();
|
||||
this.contextMenuStripHighlightText1 = new ryProcessManager.hezuo.ContextMenuStripHighlightText();
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.TxtFromCode = new ryControls.Controls.RichTextBox2();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// textEditorControl1
|
||||
//
|
||||
this.textEditorControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.textEditorControl1.ContextMenuStrip = this.contextMenuStripHighlightText1;
|
||||
this.textEditorControl1.IsReadOnly = false;
|
||||
this.textEditorControl1.Location = new System.Drawing.Point(12, 216);
|
||||
this.textEditorControl1.Name = "textEditorControl1";
|
||||
this.textEditorControl1.Size = new System.Drawing.Size(812, 267);
|
||||
this.textEditorControl1.TabIndex = 19;
|
||||
//
|
||||
// contextMenuStripHighlightText1
|
||||
//
|
||||
this.contextMenuStripHighlightText1.Name = "contextMenuStripHighlightText1";
|
||||
this.contextMenuStripHighlightText1.Size = new System.Drawing.Size(101, 186);
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(173, 48);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// TxtFromCode
|
||||
//
|
||||
this.TxtFromCode.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.TxtFromCode.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.TxtFromCode.DetectUrls = false;
|
||||
this.TxtFromCode.EmptyText = "请填写待计算的字符串";
|
||||
this.TxtFromCode.ForeColor = System.Drawing.Color.Black;
|
||||
this.TxtFromCode.Location = new System.Drawing.Point(12, 3);
|
||||
this.TxtFromCode.Name = "TxtFromCode";
|
||||
this.TxtFromCode.OnlyInputText = true;
|
||||
this.TxtFromCode.Size = new System.Drawing.Size(812, 207);
|
||||
this.TxtFromCode.TabIndex = 30;
|
||||
this.TxtFromCode.Text = "";
|
||||
this.TxtFromCode.TextChanged += new System.EventHandler(this.TxtFromCode_TextChanged);
|
||||
//
|
||||
// FrmStrCount
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(836, 495);
|
||||
this.Controls.Add(this.TxtFromCode);
|
||||
this.Controls.Add(this.textEditorControl1);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmStrCount";
|
||||
this.TabPageContextMenuStrip = this.menuRight1;
|
||||
this.Text = "字符串统计";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
private ICSharpCode.TextEditor.TextEditorControl textEditorControl1;
|
||||
private ryProcessManager.hezuo.ContextMenuStripHighlightText contextMenuStripHighlightText1;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
private ryControls.Controls.RichTextBox2 TxtFromCode;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
using ICSharpCode.TextEditor.Document;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmStrCount : DockContent
|
||||
{
|
||||
public FrmStrCount()
|
||||
{
|
||||
InitializeComponent();
|
||||
textEditorControl1.IsReadOnly = true;
|
||||
}
|
||||
|
||||
private void TxtFromCode_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
Manager.TotalCount totalCount = new Manager.TotalCount();
|
||||
string fromText = TxtFromCode.Text;
|
||||
int iCount = totalCount.GetByteLength(fromText, out int HanziCount, out int engCount, out int NumCount);
|
||||
string resultStr = "";
|
||||
resultStr = "字节数: " + iCount.ToString() + "个(汉字算两个字符)";
|
||||
resultStr += "\r\n字数: " + fromText.Length.ToString() + "个(汉字算一个字符)";
|
||||
resultStr += "\r\n汉字数: " + HanziCount.ToString() + "个(汉字算一个字符)";
|
||||
resultStr += "\r\n英文数量: " + engCount.ToString() + "个";
|
||||
resultStr += "\r\n数字数量: " + NumCount.ToString() + "个";
|
||||
textEditorControl1.Text = resultStr;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,194 @@
|
||||
<?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>
|
||||
<metadata name="contextMenuStripHighlightText1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>262, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAIBwAAAEAIACYDgAAFgAAACgAAAAgAAAAOAAAAAEAIAAAAAAAAA4AAKdrAACnawAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJAAA
|
||||
AKAAAABbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAsAAAA7AAAANgAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAIAAACUAAAA/wAAAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAADoAAAA2wAAACEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAI4AAAD/AAAAfwAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAOUAAADfAAAAJQAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAB6AAAAYgAAAAIAAAAAAAAAiQAA
|
||||
AP8AAACFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE4AAACGAAAAHgAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjAAAArwAAAP8AAACvAAAABgAA
|
||||
AAAAAAAoAAAA4gAAAOIAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjwAAAP8AAADDAAAANAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAAAMwAAAD/AAAAtgAA
|
||||
ACgAAAAAAAAAAAAAAAAAAACDAAAA/wAAAIoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAoAAA
|
||||
AP8AAADdAAAAUQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAFsAAADkAAAA/QAA
|
||||
AJYAAAAVAAAAAAAAAAAAAAAAAAAAAAAAACQAAADeAAAA5gAAAC0AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAALAAAAfgAAAPUAAADwAAAAcgAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAB8AAAA8wAA
|
||||
AO8AAABzAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH4AAAD/AAAAjwAAAAEAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAACAAAAXAAAAOMAAAD7AAAAlAAAABMAAAAAAAAAAAAAAAAAAAAAAAAASQAA
|
||||
APoAAAD8AAAAbgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAANoAAADpAAAAMQAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUgAAAPIAAAD/AAAAVgAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAfAAAAuAAAAP8AAADGAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAA
|
||||
AP8AAACVAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACcAAACyAAAA/wAAAMwAAAAsAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAXAAAAmgAAAP4AAADhAAAAVwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAdAAAA1gAAAOwAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABCAAAA0QAAAP8AAACxAAAAJQAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJAAAAeAAAAPMAAADzAAAAeAAAAAoAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAByAAAA/wAAAJsAAAADAAAAAAAAAAAAAAAEAAAAYQAAAOgAAAD7AAAAjwAA
|
||||
ABIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAVgAAAOEAAAD/AAAAigAA
|
||||
AAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoAAADSAAAA7wAAADkAAAAAAAAAAAAAAG0AAAD5AAAA7gAA
|
||||
AG0AAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOQAA
|
||||
AL8AAACXAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG0AAAD/AAAAoAAAAAQAAAAAAAAAfAAA
|
||||
AMsAAABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAADgAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFwAAAM4AAADyAAAAPQAA
|
||||
AAAAAAAIAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZwAA
|
||||
AP8AAAClAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAUAAAAyQAAAPQAAABCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAABiAAAA/wAAAKsAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAADEAAAA9gAAAEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFwAAAD/AAAAoQAAAAEAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQAAAH8AAABXAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8H////A////wH///8B
|
||||
////AP///wD///wAeD/4AHAf8AAwD+AAMAfAABABgAAQAYAACAGAMA4BgDgEAYAIAAGADAABwAwAA/AO
|
||||
AAf4DgAf/A8AP///AP///4B///+Af///wH///8B////gf///4P8=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
+158
@@ -0,0 +1,158 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmStrToCode
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmStrToCode));
|
||||
this.RbStrToC = new System.Windows.Forms.RadioButton();
|
||||
this.RbStrToJS = new System.Windows.Forms.RadioButton();
|
||||
this.RbStrToQuickJS = new System.Windows.Forms.RadioButton();
|
||||
this.textEditorControl1 = new ICSharpCode.TextEditor.TextEditorControl();
|
||||
this.contextMenuStripHighlightText1 = new ryProcessManager.hezuo.ContextMenuStripHighlightText();
|
||||
this.RbStrToASP = new System.Windows.Forms.RadioButton();
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.TxtFromCode = new ryControls.Controls.RichTextBox2();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// RbStrToC
|
||||
//
|
||||
this.RbStrToC.AutoSize = true;
|
||||
this.RbStrToC.Checked = true;
|
||||
this.RbStrToC.Location = new System.Drawing.Point(12, 216);
|
||||
this.RbStrToC.Name = "RbStrToC";
|
||||
this.RbStrToC.Size = new System.Drawing.Size(107, 16);
|
||||
this.RbStrToC.TabIndex = 16;
|
||||
this.RbStrToC.TabStop = true;
|
||||
this.RbStrToC.Text = "字符串转C#代码";
|
||||
this.RbStrToC.UseVisualStyleBackColor = true;
|
||||
this.RbStrToC.CheckedChanged += new System.EventHandler(this.RbStrToC_CheckedChanged);
|
||||
//
|
||||
// RbStrToJS
|
||||
//
|
||||
this.RbStrToJS.AutoSize = true;
|
||||
this.RbStrToJS.Location = new System.Drawing.Point(158, 216);
|
||||
this.RbStrToJS.Name = "RbStrToJS";
|
||||
this.RbStrToJS.Size = new System.Drawing.Size(107, 16);
|
||||
this.RbStrToJS.TabIndex = 17;
|
||||
this.RbStrToJS.Text = "字符串转JS代码";
|
||||
this.RbStrToJS.UseVisualStyleBackColor = true;
|
||||
this.RbStrToJS.CheckedChanged += new System.EventHandler(this.RbStrToJS_CheckedChanged);
|
||||
//
|
||||
// RbStrToQuickJS
|
||||
//
|
||||
this.RbStrToQuickJS.AutoSize = true;
|
||||
this.RbStrToQuickJS.Location = new System.Drawing.Point(306, 216);
|
||||
this.RbStrToQuickJS.Name = "RbStrToQuickJS";
|
||||
this.RbStrToQuickJS.Size = new System.Drawing.Size(131, 16);
|
||||
this.RbStrToQuickJS.TabIndex = 18;
|
||||
this.RbStrToQuickJS.Text = "字符串转极速JS代码";
|
||||
this.RbStrToQuickJS.UseVisualStyleBackColor = true;
|
||||
this.RbStrToQuickJS.CheckedChanged += new System.EventHandler(this.RbStrToQuickJS_CheckedChanged);
|
||||
//
|
||||
// textEditorControl1
|
||||
//
|
||||
this.textEditorControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.textEditorControl1.ContextMenuStrip = this.contextMenuStripHighlightText1;
|
||||
this.textEditorControl1.IsReadOnly = false;
|
||||
this.textEditorControl1.Location = new System.Drawing.Point(12, 238);
|
||||
this.textEditorControl1.Name = "textEditorControl1";
|
||||
this.textEditorControl1.Size = new System.Drawing.Size(812, 245);
|
||||
this.textEditorControl1.TabIndex = 19;
|
||||
//
|
||||
// contextMenuStripHighlightText1
|
||||
//
|
||||
this.contextMenuStripHighlightText1.Name = "contextMenuStripHighlightText1";
|
||||
this.contextMenuStripHighlightText1.Size = new System.Drawing.Size(101, 186);
|
||||
//
|
||||
// RbStrToASP
|
||||
//
|
||||
this.RbStrToASP.AutoSize = true;
|
||||
this.RbStrToASP.Location = new System.Drawing.Point(477, 216);
|
||||
this.RbStrToASP.Name = "RbStrToASP";
|
||||
this.RbStrToASP.Size = new System.Drawing.Size(113, 16);
|
||||
this.RbStrToASP.TabIndex = 21;
|
||||
this.RbStrToASP.Text = "字符串转Asp代码";
|
||||
this.RbStrToASP.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(173, 48);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// TxtFromCode
|
||||
//
|
||||
this.TxtFromCode.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.TxtFromCode.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.TxtFromCode.DetectUrls = false;
|
||||
this.TxtFromCode.EmptyText = "请填写待转换的内容";
|
||||
this.TxtFromCode.ForeColor = System.Drawing.Color.Black;
|
||||
this.TxtFromCode.Location = new System.Drawing.Point(12, 3);
|
||||
this.TxtFromCode.Name = "TxtFromCode";
|
||||
this.TxtFromCode.OnlyInputText = true;
|
||||
this.TxtFromCode.Size = new System.Drawing.Size(812, 207);
|
||||
this.TxtFromCode.TabIndex = 31;
|
||||
this.TxtFromCode.Text = "";
|
||||
this.TxtFromCode.TextChanged += new System.EventHandler(this.TxtFromCode_TextChanged);
|
||||
this.TxtFromCode.DoubleClick += new System.EventHandler(this.TxtFromCode_DoubleClick);
|
||||
//
|
||||
// FrmStrToCode
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(836, 495);
|
||||
this.Controls.Add(this.TxtFromCode);
|
||||
this.Controls.Add(this.RbStrToASP);
|
||||
this.Controls.Add(this.textEditorControl1);
|
||||
this.Controls.Add(this.RbStrToQuickJS);
|
||||
this.Controls.Add(this.RbStrToJS);
|
||||
this.Controls.Add(this.RbStrToC);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmStrToCode";
|
||||
this.TabPageContextMenuStrip = this.menuRight1;
|
||||
this.Text = "字符串转代码";
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
private System.Windows.Forms.RadioButton RbStrToC;
|
||||
private System.Windows.Forms.RadioButton RbStrToJS;
|
||||
private System.Windows.Forms.RadioButton RbStrToQuickJS;
|
||||
private ICSharpCode.TextEditor.TextEditorControl textEditorControl1;
|
||||
private ryProcessManager.hezuo.ContextMenuStripHighlightText contextMenuStripHighlightText1;
|
||||
private System.Windows.Forms.RadioButton RbStrToASP;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
private ryControls.Controls.RichTextBox2 TxtFromCode;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,87 @@
|
||||
using ICSharpCode.TextEditor.Document;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmStrToCode : DockContent
|
||||
{
|
||||
public FrmStrToCode()
|
||||
{
|
||||
InitializeComponent();
|
||||
textEditorControl1.IsReadOnly = true;
|
||||
}
|
||||
private void Convert()
|
||||
{
|
||||
StringBuilder builder = new StringBuilder();
|
||||
string format = "C#";
|
||||
if (RbStrToC.Checked)
|
||||
{
|
||||
builder.Append(" StringBuilder sb = new StringBuilder();\r\n");
|
||||
builder.Append(" sb.Append(\"" + TxtFromCode.Text.Trim().Replace("\"", "\\\"").Replace("\r\n", "\n").Replace("\n", "\");\r\n sb.Append(\"") + "\");");
|
||||
format = "C#";
|
||||
}
|
||||
else if (RbStrToJS.Checked)
|
||||
{
|
||||
builder.Append("var sb=\"" + this.TxtFromCode.Text.Trim().Replace("\"", "\\\"").Replace("\r\n", "\n").Replace("\n", "\";\r\n sb=sb+\"") + "\";");
|
||||
format = "JavaScript";
|
||||
}
|
||||
else if (RbStrToQuickJS.Checked)
|
||||
{
|
||||
builder.Append("var sb=\"" + this.TxtFromCode.Text.Trim().Replace("\"", "\\\"").Replace("\r\n", "\n").Replace("\n", "\";\r\n sb=sb+\"") + "\";");
|
||||
builder = new StringBuilder(builder.ToString().Replace("script", "scr\"+\"ipt") + " document.write(sb);");
|
||||
builder.Insert(0, "<script>\r\n");
|
||||
builder.Append ("\r\n</script>");
|
||||
format = "HTML";
|
||||
}
|
||||
else if (RbStrToASP.Checked)
|
||||
{
|
||||
builder.Append("sb=\"" + this.TxtFromCode.Text.Trim().Replace("\"", "\"\"").Replace("\r\n", "\n").Replace("\n", "\" & vbCrLf \r\nsb=sb & \"") + "\"");
|
||||
format = "ASP/XHTML";
|
||||
}
|
||||
textEditorControl1.Document.HighlightingStrategy = HighlightingStrategyFactory.CreateHighlightingStrategy(format);
|
||||
textEditorControl1.Text = builder.ToString();
|
||||
}
|
||||
|
||||
private void RbStrToC_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Convert();
|
||||
}
|
||||
|
||||
private void RbStrToJS_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Convert();
|
||||
}
|
||||
|
||||
private void RbStrToQuickJS_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
Convert();
|
||||
}
|
||||
|
||||
private void TxtFromCode_DoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
ryControls.Controls.RichTextBox2 txt = (ryControls.Controls.RichTextBox2)sender;
|
||||
开发辅助工具.Controls.FrmText frm = new Controls.FrmText
|
||||
{
|
||||
Icon = Icon
|
||||
};
|
||||
frm.richTextBox1.Text = txt.Text;
|
||||
if (frm.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
txt.Text = frm.richTextBox1.Text;
|
||||
}
|
||||
}
|
||||
|
||||
private void TxtFromCode_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
Convert();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,194 @@
|
||||
<?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>
|
||||
<metadata name="contextMenuStripHighlightText1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>262, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAIBwAAAEAIACYDgAAFgAAACgAAAAgAAAAOAAAAAEAIAAAAAAAAA4AAKdrAACnawAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJAAA
|
||||
AKAAAABbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAsAAAA7AAAANgAAAAeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAIAAACUAAAA/wAAAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAADoAAAA2wAAACEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAI4AAAD/AAAAfwAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAAAOUAAADfAAAAJQAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAB6AAAAYgAAAAIAAAAAAAAAiQAA
|
||||
AP8AAACFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE4AAACGAAAAHgAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjAAAArwAAAP8AAACvAAAABgAA
|
||||
AAAAAAAoAAAA4gAAAOIAAAAoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjwAAAP8AAADDAAAANAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPAAAAMwAAAD/AAAAtgAA
|
||||
ACgAAAAAAAAAAAAAAAAAAACDAAAA/wAAAIoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAoAAA
|
||||
AP8AAADdAAAAUQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAFsAAADkAAAA/QAA
|
||||
AJYAAAAVAAAAAAAAAAAAAAAAAAAAAAAAACQAAADeAAAA5gAAAC0AAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAALAAAAfgAAAPUAAADwAAAAcgAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAB8AAAA8wAA
|
||||
AO8AAABzAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAH4AAAD/AAAAjwAAAAEAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAACAAAAXAAAAOMAAAD7AAAAlAAAABMAAAAAAAAAAAAAAAAAAAAAAAAASQAA
|
||||
APoAAAD8AAAAbgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAANoAAADpAAAAMQAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUgAAAPIAAAD/AAAAVgAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAfAAAAuAAAAP8AAADGAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAA
|
||||
AP8AAACVAAAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACcAAACyAAAA/wAAAMwAAAAsAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAXAAAAmgAAAP4AAADhAAAAVwAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAdAAAA1gAAAOwAAAA1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAABCAAAA0QAAAP8AAACxAAAAJQAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJAAAAeAAAAPMAAADzAAAAeAAAAAoAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAByAAAA/wAAAJsAAAADAAAAAAAAAAAAAAAEAAAAYQAAAOgAAAD7AAAAjwAA
|
||||
ABIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAVgAAAOEAAAD/AAAAigAA
|
||||
AAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoAAADSAAAA7wAAADkAAAAAAAAAAAAAAG0AAAD5AAAA7gAA
|
||||
AG0AAAAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOQAA
|
||||
AL8AAACXAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG0AAAD/AAAAoAAAAAQAAAAAAAAAfAAA
|
||||
AMsAAABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAADgAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFwAAAM4AAADyAAAAPQAA
|
||||
AAAAAAAIAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZwAA
|
||||
AP8AAAClAAAABgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAUAAAAyQAAAPQAAABCAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAABiAAAA/wAAAKsAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAADEAAAA9gAAAEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFwAAAD/AAAAoQAAAAEAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQAAAH8AAABXAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8H////A////wH///8B
|
||||
////AP///wD///wAeD/4AHAf8AAwD+AAMAfAABABgAAQAYAACAGAMA4BgDgEAYAIAAGADAABwAwAA/AO
|
||||
AAf4DgAf/A8AP///AP///4B///+Af///wH///8B////gf///4P8=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
Generated
+361
@@ -0,0 +1,361 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmTime
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmTime));
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.TxtFromUnixTime = new ryControls.TextBoxEx2();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.TxtResultTime = new ryControls.TextBoxEx2();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.dateTimePickerEX1 = new ryControls.DateTimePickerEX();
|
||||
this.TxtResultUnixTime = new ryControls.TextBoxEx2();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.TxtJSTime2 = new ryControls.TextBoxEx2();
|
||||
this.label5 = new System.Windows.Forms.Label();
|
||||
this.TxtJSTime1 = new ryControls.TextBoxEx2();
|
||||
this.label6 = new System.Windows.Forms.Label();
|
||||
this.TxtUnixTime3 = new ryControls.TextBoxEx2();
|
||||
this.label7 = new System.Windows.Forms.Label();
|
||||
this.TxtResultTime3 = new ryControls.TextBoxEx2();
|
||||
this.label8 = new System.Windows.Forms.Label();
|
||||
this.TxtFromJSTime3 = new ryControls.TextBoxEx2();
|
||||
this.label9 = new System.Windows.Forms.Label();
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(11, 8);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(65, 12);
|
||||
this.label1.TabIndex = 0;
|
||||
this.label1.Text = "Unix时间戳";
|
||||
//
|
||||
// TxtFromUnixTime
|
||||
//
|
||||
this.TxtFromUnixTime.BackColor = System.Drawing.Color.White;
|
||||
this.TxtFromUnixTime.EmptyText = "请输入时间戳";
|
||||
this.TxtFromUnixTime.Location = new System.Drawing.Point(13, 23);
|
||||
this.TxtFromUnixTime.MaxLength = 999999999;
|
||||
this.TxtFromUnixTime.Multiline = false;
|
||||
this.TxtFromUnixTime.Name = "TxtFromUnixTime";
|
||||
this.TxtFromUnixTime.OnlyNumeric = false;
|
||||
this.TxtFromUnixTime.PasswordChar = '\0';
|
||||
this.TxtFromUnixTime.ReadOnly = false;
|
||||
this.TxtFromUnixTime.SelectedText = "";
|
||||
this.TxtFromUnixTime.SelectionLength = 0;
|
||||
this.TxtFromUnixTime.SelectionStart = 0;
|
||||
this.TxtFromUnixTime.Size = new System.Drawing.Size(277, 30);
|
||||
this.TxtFromUnixTime.TabIndex = 1;
|
||||
this.TxtFromUnixTime.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtFromUnixTime.ToolTip = "";
|
||||
this.TxtFromUnixTime.TextChanged2 += new System.EventHandler(this.TxtFromUnixTime_TextChanged2);
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(294, 9);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(53, 12);
|
||||
this.label2.TabIndex = 2;
|
||||
this.label2.Text = "具体时间";
|
||||
//
|
||||
// TxtResultTime
|
||||
//
|
||||
this.TxtResultTime.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
|
||||
this.TxtResultTime.EmptyText = "";
|
||||
this.TxtResultTime.Location = new System.Drawing.Point(296, 23);
|
||||
this.TxtResultTime.MaxLength = 999999999;
|
||||
this.TxtResultTime.Multiline = false;
|
||||
this.TxtResultTime.Name = "TxtResultTime";
|
||||
this.TxtResultTime.OnlyNumeric = false;
|
||||
this.TxtResultTime.PasswordChar = '\0';
|
||||
this.TxtResultTime.ReadOnly = true;
|
||||
this.TxtResultTime.SelectedText = "";
|
||||
this.TxtResultTime.SelectionLength = 0;
|
||||
this.TxtResultTime.SelectionStart = 0;
|
||||
this.TxtResultTime.Size = new System.Drawing.Size(243, 30);
|
||||
this.TxtResultTime.TabIndex = 3;
|
||||
this.TxtResultTime.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtResultTime.ToolTip = "";
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(11, 56);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(53, 12);
|
||||
this.label3.TabIndex = 4;
|
||||
this.label3.Text = "具体时间";
|
||||
//
|
||||
// dateTimePickerEX1
|
||||
//
|
||||
this.dateTimePickerEX1.CustomFormat = "yyyy年MM月dd日 dddd HH:mm:ss";
|
||||
this.dateTimePickerEX1.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.dateTimePickerEX1.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
|
||||
this.dateTimePickerEX1.Location = new System.Drawing.Point(13, 75);
|
||||
this.dateTimePickerEX1.Name = "dateTimePickerEX1";
|
||||
this.dateTimePickerEX1.Size = new System.Drawing.Size(277, 23);
|
||||
this.dateTimePickerEX1.TabIndex = 5;
|
||||
this.dateTimePickerEX1.ValueChanged += new System.EventHandler(this.DateTimePickerEX1_ValueChanged);
|
||||
//
|
||||
// TxtResultUnixTime
|
||||
//
|
||||
this.TxtResultUnixTime.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
|
||||
this.TxtResultUnixTime.EmptyText = "";
|
||||
this.TxtResultUnixTime.Location = new System.Drawing.Point(296, 71);
|
||||
this.TxtResultUnixTime.MaxLength = 999999999;
|
||||
this.TxtResultUnixTime.Multiline = false;
|
||||
this.TxtResultUnixTime.Name = "TxtResultUnixTime";
|
||||
this.TxtResultUnixTime.OnlyNumeric = false;
|
||||
this.TxtResultUnixTime.PasswordChar = '\0';
|
||||
this.TxtResultUnixTime.ReadOnly = true;
|
||||
this.TxtResultUnixTime.SelectedText = "";
|
||||
this.TxtResultUnixTime.SelectionLength = 0;
|
||||
this.TxtResultUnixTime.SelectionStart = 0;
|
||||
this.TxtResultUnixTime.Size = new System.Drawing.Size(243, 30);
|
||||
this.TxtResultUnixTime.TabIndex = 7;
|
||||
this.TxtResultUnixTime.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtResultUnixTime.ToolTip = "";
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Location = new System.Drawing.Point(294, 57);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(65, 12);
|
||||
this.label4.TabIndex = 6;
|
||||
this.label4.Text = "Unix时间戳";
|
||||
//
|
||||
// TxtJSTime2
|
||||
//
|
||||
this.TxtJSTime2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
|
||||
this.TxtJSTime2.EmptyText = "";
|
||||
this.TxtJSTime2.Location = new System.Drawing.Point(545, 71);
|
||||
this.TxtJSTime2.MaxLength = 999999999;
|
||||
this.TxtJSTime2.Multiline = false;
|
||||
this.TxtJSTime2.Name = "TxtJSTime2";
|
||||
this.TxtJSTime2.OnlyNumeric = false;
|
||||
this.TxtJSTime2.PasswordChar = '\0';
|
||||
this.TxtJSTime2.ReadOnly = true;
|
||||
this.TxtJSTime2.SelectedText = "";
|
||||
this.TxtJSTime2.SelectionLength = 0;
|
||||
this.TxtJSTime2.SelectionStart = 0;
|
||||
this.TxtJSTime2.Size = new System.Drawing.Size(243, 30);
|
||||
this.TxtJSTime2.TabIndex = 11;
|
||||
this.TxtJSTime2.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtJSTime2.ToolTip = "";
|
||||
//
|
||||
// label5
|
||||
//
|
||||
this.label5.AutoSize = true;
|
||||
this.label5.Location = new System.Drawing.Point(543, 57);
|
||||
this.label5.Name = "label5";
|
||||
this.label5.Size = new System.Drawing.Size(53, 12);
|
||||
this.label5.TabIndex = 10;
|
||||
this.label5.Text = "JS时间戳";
|
||||
//
|
||||
// TxtJSTime1
|
||||
//
|
||||
this.TxtJSTime1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
|
||||
this.TxtJSTime1.EmptyText = "";
|
||||
this.TxtJSTime1.Location = new System.Drawing.Point(545, 23);
|
||||
this.TxtJSTime1.MaxLength = 999999999;
|
||||
this.TxtJSTime1.Multiline = false;
|
||||
this.TxtJSTime1.Name = "TxtJSTime1";
|
||||
this.TxtJSTime1.OnlyNumeric = false;
|
||||
this.TxtJSTime1.PasswordChar = '\0';
|
||||
this.TxtJSTime1.ReadOnly = true;
|
||||
this.TxtJSTime1.SelectedText = "";
|
||||
this.TxtJSTime1.SelectionLength = 0;
|
||||
this.TxtJSTime1.SelectionStart = 0;
|
||||
this.TxtJSTime1.Size = new System.Drawing.Size(243, 30);
|
||||
this.TxtJSTime1.TabIndex = 9;
|
||||
this.TxtJSTime1.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtJSTime1.ToolTip = "";
|
||||
//
|
||||
// label6
|
||||
//
|
||||
this.label6.AutoSize = true;
|
||||
this.label6.Location = new System.Drawing.Point(543, 9);
|
||||
this.label6.Name = "label6";
|
||||
this.label6.Size = new System.Drawing.Size(53, 12);
|
||||
this.label6.TabIndex = 8;
|
||||
this.label6.Text = "JS时间戳";
|
||||
//
|
||||
// TxtUnixTime3
|
||||
//
|
||||
this.TxtUnixTime3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
|
||||
this.TxtUnixTime3.EmptyText = "";
|
||||
this.TxtUnixTime3.Location = new System.Drawing.Point(545, 120);
|
||||
this.TxtUnixTime3.MaxLength = 999999999;
|
||||
this.TxtUnixTime3.Multiline = false;
|
||||
this.TxtUnixTime3.Name = "TxtUnixTime3";
|
||||
this.TxtUnixTime3.OnlyNumeric = false;
|
||||
this.TxtUnixTime3.PasswordChar = '\0';
|
||||
this.TxtUnixTime3.ReadOnly = true;
|
||||
this.TxtUnixTime3.SelectedText = "";
|
||||
this.TxtUnixTime3.SelectionLength = 0;
|
||||
this.TxtUnixTime3.SelectionStart = 0;
|
||||
this.TxtUnixTime3.Size = new System.Drawing.Size(243, 30);
|
||||
this.TxtUnixTime3.TabIndex = 17;
|
||||
this.TxtUnixTime3.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtUnixTime3.ToolTip = "";
|
||||
//
|
||||
// label7
|
||||
//
|
||||
this.label7.AutoSize = true;
|
||||
this.label7.Location = new System.Drawing.Point(543, 106);
|
||||
this.label7.Name = "label7";
|
||||
this.label7.Size = new System.Drawing.Size(65, 12);
|
||||
this.label7.TabIndex = 16;
|
||||
this.label7.Text = "Unix时间戳";
|
||||
//
|
||||
// TxtResultTime3
|
||||
//
|
||||
this.TxtResultTime3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
|
||||
this.TxtResultTime3.EmptyText = "";
|
||||
this.TxtResultTime3.Location = new System.Drawing.Point(296, 120);
|
||||
this.TxtResultTime3.MaxLength = 999999999;
|
||||
this.TxtResultTime3.Multiline = false;
|
||||
this.TxtResultTime3.Name = "TxtResultTime3";
|
||||
this.TxtResultTime3.OnlyNumeric = false;
|
||||
this.TxtResultTime3.PasswordChar = '\0';
|
||||
this.TxtResultTime3.ReadOnly = true;
|
||||
this.TxtResultTime3.SelectedText = "";
|
||||
this.TxtResultTime3.SelectionLength = 0;
|
||||
this.TxtResultTime3.SelectionStart = 0;
|
||||
this.TxtResultTime3.Size = new System.Drawing.Size(243, 30);
|
||||
this.TxtResultTime3.TabIndex = 15;
|
||||
this.TxtResultTime3.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtResultTime3.ToolTip = "";
|
||||
//
|
||||
// label8
|
||||
//
|
||||
this.label8.AutoSize = true;
|
||||
this.label8.Location = new System.Drawing.Point(294, 106);
|
||||
this.label8.Name = "label8";
|
||||
this.label8.Size = new System.Drawing.Size(53, 12);
|
||||
this.label8.TabIndex = 14;
|
||||
this.label8.Text = "具体时间";
|
||||
//
|
||||
// TxtFromJSTime3
|
||||
//
|
||||
this.TxtFromJSTime3.BackColor = System.Drawing.Color.White;
|
||||
this.TxtFromJSTime3.EmptyText = "请输入时间戳";
|
||||
this.TxtFromJSTime3.Location = new System.Drawing.Point(13, 120);
|
||||
this.TxtFromJSTime3.MaxLength = 999999999;
|
||||
this.TxtFromJSTime3.Multiline = false;
|
||||
this.TxtFromJSTime3.Name = "TxtFromJSTime3";
|
||||
this.TxtFromJSTime3.OnlyNumeric = false;
|
||||
this.TxtFromJSTime3.PasswordChar = '\0';
|
||||
this.TxtFromJSTime3.ReadOnly = false;
|
||||
this.TxtFromJSTime3.SelectedText = "";
|
||||
this.TxtFromJSTime3.SelectionLength = 0;
|
||||
this.TxtFromJSTime3.SelectionStart = 0;
|
||||
this.TxtFromJSTime3.Size = new System.Drawing.Size(277, 30);
|
||||
this.TxtFromJSTime3.TabIndex = 13;
|
||||
this.TxtFromJSTime3.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtFromJSTime3.ToolTip = "";
|
||||
this.TxtFromJSTime3.TextChanged2 += new System.EventHandler(this.TxtFromJSTime3_TextChanged2);
|
||||
//
|
||||
// label9
|
||||
//
|
||||
this.label9.AutoSize = true;
|
||||
this.label9.Location = new System.Drawing.Point(11, 105);
|
||||
this.label9.Name = "label9";
|
||||
this.label9.Size = new System.Drawing.Size(53, 12);
|
||||
this.label9.TabIndex = 12;
|
||||
this.label9.Text = "JS时间戳";
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(173, 48);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// FrmTime
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(800, 450);
|
||||
this.Controls.Add(this.TxtUnixTime3);
|
||||
this.Controls.Add(this.label7);
|
||||
this.Controls.Add(this.TxtResultTime3);
|
||||
this.Controls.Add(this.label8);
|
||||
this.Controls.Add(this.TxtFromJSTime3);
|
||||
this.Controls.Add(this.label9);
|
||||
this.Controls.Add(this.TxtJSTime2);
|
||||
this.Controls.Add(this.label5);
|
||||
this.Controls.Add(this.TxtJSTime1);
|
||||
this.Controls.Add(this.label6);
|
||||
this.Controls.Add(this.TxtResultUnixTime);
|
||||
this.Controls.Add(this.label4);
|
||||
this.Controls.Add(this.dateTimePickerEX1);
|
||||
this.Controls.Add(this.label3);
|
||||
this.Controls.Add(this.TxtResultTime);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.TxtFromUnixTime);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmTime";
|
||||
this.TabPageContextMenuStrip = this.menuRight1;
|
||||
this.Text = "时间戳转换";
|
||||
this.Load += new System.EventHandler(this.FrmTime_Load);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.Label label1;
|
||||
private ryControls.TextBoxEx2 TxtFromUnixTime;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private ryControls.TextBoxEx2 TxtResultTime;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private ryControls.DateTimePickerEX dateTimePickerEX1;
|
||||
private ryControls.TextBoxEx2 TxtResultUnixTime;
|
||||
private System.Windows.Forms.Label label4;
|
||||
private ryControls.TextBoxEx2 TxtJSTime2;
|
||||
private System.Windows.Forms.Label label5;
|
||||
private ryControls.TextBoxEx2 TxtJSTime1;
|
||||
private System.Windows.Forms.Label label6;
|
||||
private ryControls.TextBoxEx2 TxtUnixTime3;
|
||||
private System.Windows.Forms.Label label7;
|
||||
private ryControls.TextBoxEx2 TxtResultTime3;
|
||||
private System.Windows.Forms.Label label8;
|
||||
private ryControls.TextBoxEx2 TxtFromJSTime3;
|
||||
private System.Windows.Forms.Label label9;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,48 @@
|
||||
using ryCommon;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmTime : DockContent
|
||||
{
|
||||
public FrmTime()
|
||||
{
|
||||
InitializeComponent();
|
||||
dateTimePickerEX1.Value = DateTime.Now.Date;
|
||||
|
||||
}
|
||||
|
||||
private void FrmTime_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void TxtFromUnixTime_TextChanged2(object sender, EventArgs e)
|
||||
{
|
||||
var dt =RyDate.UnixTimeToDateTime(TxtFromUnixTime.Text);
|
||||
TxtResultTime.Text = dt.ToString("yyyy-MM-dd dddd HH:mm:ss");
|
||||
TxtJSTime1.Text = RyDate.DateTimeToJSTime(dt).ToString();
|
||||
}
|
||||
|
||||
private void DateTimePickerEX1_ValueChanged(object sender, EventArgs e)
|
||||
{
|
||||
TxtResultUnixTime.Text = RyDate.DateTimeToUnixTime(dateTimePickerEX1.Value).ToString();
|
||||
TxtJSTime2.Text = RyDate.DateTimeToJSTime(dateTimePickerEX1.Value).ToString();
|
||||
}
|
||||
|
||||
private void TxtFromJSTime3_TextChanged2(object sender, EventArgs e)
|
||||
{
|
||||
var dt = RyDate.JSTimeToDateTime(TxtFromJSTime3.Text);
|
||||
TxtResultTime3.Text = dt.ToString("yyyy-MM-dd dddd HH:mm:ss");
|
||||
TxtUnixTime3.Text = RyDate.DateTimeToUnixTime(dt).ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,200 @@
|
||||
<?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>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAGDqAABg6gAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAA
|
||||
ACcAAABMAAAAaQAAAHgAAAB4AAAAaAAAAEwAAAAnAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAA
|
||||
AGkAAAC2AAAA5QAAAPkAAAD/AAAA/wAAAP8AAAD/AAAA+QAAAOYAAAC4AAAAaQAAABwAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAA
|
||||
AGcAAADSAAAA/gAAAP8AAAD/AAAA/wAAAPkAAADzAAAA8wAAAPkAAAD/AAAA/wAAAP8AAAD+AAAA0wAA
|
||||
AGgAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
ACMAAACpAAAA+wAAAP8AAAD/AAAA4wAAAKcAAABvAAAASwAAADkAAAA5AAAASwAAAG8AAACoAAAA4wAA
|
||||
AP8AAAD/AAAA+wAAAKgAAAAjAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAuAAAAxwAAAP8AAAD/AAAA5QAAAIQAAAApAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAQAAAApAAAAgwAAAOUAAAD/AAAA/wAAAMcAAAAuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAIwAAAMcAAAD/AAAA/wAAAL4AAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAANwAAAL0AAAD/AAAA/wAAAMcAAAAjAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAwAAACpAAAA/wAAAP8AAACsAAAAGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGgAAAKwAAAD/AAAA/wAAAKkAAAAMAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAPsAAAD/AAAAvQAAABoAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGgAAAL0AAAD/AAAA+wAA
|
||||
AGcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAADTAAAA/wAAAOUAAAA3AAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANwAA
|
||||
AOUAAAD/AAAA0gAAABwAAAAAAAAAAAAAAAAAAAAAAAAAaQAAAP4AAAD/AAAAgwAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAhAAAAP8AAAD+AAAAaQAAAAAAAAAAAAAAAAAAAAkAAAC3AAAA/wAAAOMAAAApAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAApAAAA4wAAAP8AAAC3AAAACQAAAAAAAAAAAAAAKAAAAOYAAAD/AAAAqAAA
|
||||
AAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAACoAAAA/wAAAOUAAAAnAAAAAAAAAAAAAABMAAAA+QAA
|
||||
AP8AAABvAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG8AAAD/AAAA+QAAAEwAAAAAAAAAAAAA
|
||||
AGkAAAD/AAAA+QAAAEsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeAAAAVwAA
|
||||
AFgAAABXAAAAVwAAAFcAAABXAAAAWQAAADIAAAAAAAAAAAAAAAAAAAAAAAAASwAAAPkAAAD/AAAAaAAA
|
||||
AAAAAAAAAAAAeAAAAP8AAADzAAAAOQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AFcAAAD6AAAA/QAAAP0AAAD9AAAA/QAAAP0AAAD/AAAAkQAAAAAAAAAAAAAAAAAAAAAAAAA5AAAA8wAA
|
||||
AP8AAAB3AAAAAAAAAAAAAAB4AAAA/wAAAPMAAAA5AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAWAAAAP0AAAD/AAAA/gAAAP0AAAD9AAAA/QAAAP8AAACRAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
ADkAAADzAAAA/wAAAHcAAAAAAAAAAAAAAGkAAAD/AAAA+QAAAEsAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAABXAAAA/QAAAP4AAACRAAAAVQAAAFcAAABXAAAAWQAAADIAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAASwAAAPkAAAD/AAAAaAAAAAAAAAAAAAAATAAAAPkAAAD/AAAAbwAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFcAAAD9AAAA/QAAAFUAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAABvAAAA/wAAAPkAAABMAAAAAAAAAAAAAAAoAAAA5gAAAP8AAACoAAAABAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVwAAAP0AAAD9AAAAVwAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAKgAAAD/AAAA5QAAACcAAAAAAAAAAAAAAAkAAAC3AAAA/wAA
|
||||
AOMAAAApAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABXAAAA/QAAAP0AAABXAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAApAAAA4wAAAP8AAAC3AAAACQAAAAAAAAAAAAAAAAAA
|
||||
AGoAAAD+AAAA/wAAAIMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFcAAAD9AAAA/QAA
|
||||
AFcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIMAAAD/AAAA/gAAAGkAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAHAAAANMAAAD/AAAA5QAAADcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAA
|
||||
AP8AAAD/AAAAWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA3AAAA5QAAAP8AAADSAAAAHAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAaAAAAPsAAAD/AAAAvQAAABoAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAABIAAAA0AAAANAAAABIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGgAAAL0AAAD/AAAA+wAA
|
||||
AGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAqgAAAP8AAAD/AAAArAAAABoAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAYAAAASAAAAEgAAAAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoAAACsAAAA/wAA
|
||||
AP8AAACpAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAAxwAAAP8AAAD/AAAAvQAA
|
||||
ADcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA2AAAAvQAA
|
||||
AP8AAAD/AAAAxwAAACMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAuAAAAxwAA
|
||||
AP8AAAD/AAAA5QAAAIMAAAApAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAApAAAAgwAA
|
||||
AOUAAAD/AAAA/wAAAMcAAAAuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAkAAAAqgAAAPsAAAD/AAAA/wAAAOMAAACoAAAAbwAAAEsAAAA5AAAAOQAAAEsAAABvAAAAqAAA
|
||||
AOMAAAD/AAAA/wAAAPsAAACpAAAAIwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAMAAAAaAAAANMAAAD+AAAA/wAAAP8AAAD/AAAA+QAAAPMAAADzAAAA+QAA
|
||||
AP8AAAD/AAAA/wAAAP4AAADTAAAAaAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAGkAAAC3AAAA5gAAAPkAAAD/AAAA/wAA
|
||||
AP8AAAD/AAAA+QAAAOYAAAC4AAAAaQAAABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkAAAAoAAAATAAA
|
||||
AGkAAAB4AAAAeAAAAGkAAABMAAAAKAAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAA/4AB//4AAH/4AAAf8AAAD+AAAAfAAAADwAGAA4AP8AGAH/gBAD/8AAB/
|
||||
/gAA//8AAf//gAH4AAAB+AAAA/gAQAP4AEAB+AAAAfgAAAH4H4AA+B8AAHgeAAA4HACAGBgBgAgQAcAA
|
||||
AAPAAAAD4AAAB/AAAA/4AAAf/gAAf/+AAf8=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
+87
@@ -0,0 +1,87 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmToolsBox
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmToolsBox));
|
||||
this.BtnJson = new ryControls.ButtonEx();
|
||||
this.BtnCalc = new ryControls.ButtonEx();
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// BtnJson
|
||||
//
|
||||
this.BtnJson.ForeColor = System.Drawing.Color.White;
|
||||
this.BtnJson.Location = new System.Drawing.Point(12, 12);
|
||||
this.BtnJson.Name = "BtnJson";
|
||||
this.BtnJson.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnJson.TabIndex = 2;
|
||||
this.BtnJson.Text = "Json查看器";
|
||||
this.BtnJson.UseVisualStyleBackColor = true;
|
||||
this.BtnJson.Click += new System.EventHandler(this.BtnJson_Click);
|
||||
//
|
||||
// BtnCalc
|
||||
//
|
||||
this.BtnCalc.ForeColor = System.Drawing.Color.White;
|
||||
this.BtnCalc.Location = new System.Drawing.Point(117, 12);
|
||||
this.BtnCalc.Name = "BtnCalc";
|
||||
this.BtnCalc.Size = new System.Drawing.Size(99, 34);
|
||||
this.BtnCalc.TabIndex = 3;
|
||||
this.BtnCalc.Text = "计算器";
|
||||
this.BtnCalc.UseVisualStyleBackColor = true;
|
||||
this.BtnCalc.Click += new System.EventHandler(this.BtnCalc_Click);
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(185, 70);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// FrmToolsBox
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(800, 450);
|
||||
this.Controls.Add(this.BtnCalc);
|
||||
this.Controls.Add(this.BtnJson);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmToolsBox";
|
||||
this.TabPageContextMenuStrip = this.menuRight1;
|
||||
this.Text = "工具大全";
|
||||
this.ResumeLayout(false);
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private ryControls.ButtonEx BtnJson;
|
||||
private ryControls.ButtonEx BtnCalc;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmToolsBox : DockContent
|
||||
{
|
||||
public FrmToolsBox()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void BtnJson_Click(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.RyFiles.OpenFile(Application.StartupPath + "\\SysDb\\Tools\\Json\\HiJson 2.1.2_jdk64.exe");
|
||||
}
|
||||
|
||||
private void BtnCalc_Click(object sender, EventArgs e)
|
||||
{
|
||||
ryCommon.RyFiles.OpenFile("calc.exe");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,200 @@
|
||||
<?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>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAABMLAAATCwAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAUAAAAKAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAA
|
||||
AAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAADAAAAAwAAAAMAAAACwAAAAcAAAACAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAgEBAAAAAAcAAAAcAgICPQUFBFYGBQVdBgUFXQYFBV0GBQVdBgUFXQYF
|
||||
BV0GBQVdBgUFXQYFBV0GBQVdBgUFXQYFBV0GBQVdBgUFXQYFBV0GBQVdBgUFXQYFBV0GBQVaBAMDSQAA
|
||||
ACkAAAAOAAAAAgAAAAAAAAAAAAAAAAMCAgAAAAALAwICOA0MDIsTEhHLFhQT5RYUE+oWFBPqFhQT6hYU
|
||||
E+oWFBPqFhQT6hYUE+oWFBPqFhQT6hYUE+oWFBPqFhQT6hYUE+oWFBPqFhQT6hYUE+oWFBPqFhQT6hYU
|
||||
E+kVExLZEA8OqgcGBlgAAAAYAAAAAgAAAAAAAAAAAAAABgQEAzcSEBCvGRYV+BoXFv8aFxb/GhcW/xoX
|
||||
Fv8aFxb/GhcW/xoXFv8aFxb/GhcW/xoXFv8aFxb/GhcW/xoXFv8aFxb/GhcW/xoXFv8aFxb/GhcW/xoX
|
||||
Fv8aFxb/GhcW/xoXFv8aFxb/FhMT2AsJCWQAAAASAAAAAAAAAAAAAAAYERAPkRkXFvsaGBf/GhcW/xoX
|
||||
Fv8aFxb/GhcW/xoXFv8aFxb/GhcW/xoXFv8aFxb/GhcW/xoXFv8aFxb/GhcW/xoXFv8aFxb/GhcW/xoX
|
||||
Fv8aFxb/GhcW/xoXFv8aFxb/GhcW/xoYF/8aGBf/FhQTzgcGBj0AAAAFAAAAAgkICDsYFhXaGxgX/xsY
|
||||
F/8bGBf/GxgX/xsYF/8bGBf/GxgX/xsYF/8bGBf/GxgX/xsYF/8bGBf/GxgX/xsYF/8bGBf/GxgX/xsY
|
||||
F/8bGBf/GxgX/xsYF/8bGBf/GxgX/xsYF/8bGBf/GxgX/xsYF/8aGBf7EhAPfwAAAA0AAAAFEA8OYBsY
|
||||
F/QcGRj/HBkY/xwZGP8cGRj/HBkY/xwZGP8cGRj/HBkY/xwZGP8cGRj/HBkY/xwZGP8cGRj/HBkY/xwZ
|
||||
GP8cGRj/HBkY/xwZGP8cGRj/HBkY/xwZGP8cGRj/HBkY/xwZGP8cGRj/HBkY/xwZGP8XFBSpAAAAGQAA
|
||||
AAYTERFuHBkY+B0aGf8cGRn/HBkZ/xwZGf8cGRn/HBkZ/xwZGf8cGRn/HBkZ/xwZGf8cGRn/HBkZ/xwZ
|
||||
Gf8cGRn/HBkZ/xwZGf8cGRn/HBkZ/xwZGf8cGRn/HBkZ/xwZGf8cGRn/HBkZ/xwZGf8cGRn/HRoZ/xgW
|
||||
FboFBQUhAAAABhQSEW8dGhn4Hhsa/x4bGf8eGxn/HhsZ/x4bGf8eGxn/HhsZ/x4bGf8eGxn/HhsZ/x4b
|
||||
Gf8eGxn/HhsZ/x4bGf8eGxn/HhsZ/x4bGf8eGxn/HhsZ/x4bGf8eGxn/HhsZ/x4bGf8eGxn/HhsZ/x4b
|
||||
Gf8eGxr/GRcWvAYGBSIAAAAGFBISbx4bGvgfHBv/Hxwb/x8cG/8fHBv/Hxwb/x8cG/8fHBv/Hxwb/x8c
|
||||
G/8fHBv/Hxwb/x8cG/8fHBv/Hxwb/x8cG/8fHBv/Hxwb/x8cG/8fHBv/Hxwb/x8cG/8fHBv/Hxwb/x8c
|
||||
G/8fHBv/Hxwb/x8cG/8aGBe8BgYGIgAAAAYVExJvHxwb+CAdHP8fHBv/IB0c/yAdHP8gHRz/IB0c/yAc
|
||||
G/8gHRz/IB0c/yAdHP8gHRz/IB0c/yAdHP8gHRz/IB0c/yAdHP8gHRz/IB0c/yAdHP8gHRz/IB0c/yAd
|
||||
HP8gHRz/IB0c/yAdHP8fHBv/IB0c/xsYGLwHBgYiAAAABhYUE28gHRz4IR4d/yEeHf8hHh3/IB0c/x4c
|
||||
G/8gHRz/IR4d/yAdHP8fHBv/HRwa/x4cG/8gHRz/IB4d/yAdHP8eHBv/HRwa/x8dG/8gHRz/Hx0b/x8d
|
||||
G/8gHRz/Hhwb/x4cGv8fHRz/IB0c/yEeHf8hHh3/HBkYvAcGBiIAAAAGFhQUbyEeHfgiHx7/Ih8e/yEe
|
||||
Hf8jHR7/Lx4m/yEdHf8hHh3/Hhwb/yYbH/83Hyv/Lx4m/x4bGv8fHRv/Hhsb/zAeJv82Hyr/JBse/x0b
|
||||
Gv8nHSD/KR0i/yEcHP8yHyj/NR8p/yIbHf8fHRz/Ih8e/yIfHv8dGhm8BwYGIgAAAAYXFRRvIh8e+CMg
|
||||
H/8jIB//IB4d/0QlNP+5RID/MyEp/x4dG/86Iiz/mj1s/4U3Yf+TPGn/ZC1H/x8aGv9vME7/mT5t/4Q3
|
||||
YP+POmX/Lx4l/3AwUP+CNVz/Rig2/303XP+JN2P/fzVa/yUeH/8iHx7/IyAf/x4bGrwIBwYiAAAABhgW
|
||||
FW8jIB/4JCEg/yQhIP8hHx7/Sik0/85Tgf82JCn/Hh0b/4o+WP+lSGv/Ih8e/00rOP/CUHr/USk2/8dS
|
||||
fv9QLTr/Ih4e/59FZ/+DOlP/fThR/5JAXv8mHyD/JR4f/08qNf+9UHn/MyQo/yIgH/8kISD/HxwbvAgH
|
||||
ByIAAAAGGRYWbyQhIPglIiH/JSIh/yIgH/9LLDD/zV5w/zcmKP8iHx7/o09c/4xGUP8cHBr/MyQl/8ld
|
||||
bv97Pkf/zF9w/zYlJ/8bHBr/hUNM/6VPXP+DQUr/kUdS/yYeHf+CQ0n/rFhm/3JAS/8nIiL/JSEg/yUi
|
||||
If8gHRy8CAcHIgAAAAYaFxZvJSIh+CYjIv8mIyL/IyEg/0swLP/Na13/OCgm/yIgH/+HTkj/pFpO/yAc
|
||||
Gv9JLyn/yWxf/1k3Nf/DaV7/UTIs/x0bGf+fV0v/jVBJ/39HP/+PT0X/VjYw/7NhV/86KSj/LCQh/yYi
|
||||
If8mIiL/JiMi/yEeHbwICAciAAAABhoYF28mIyL4JyQj/yYjIv8hICD/STIn/812S/82KSP/ISAg/zsu
|
||||
Kf+UXkf/hFU6/5hgRP99UkD/KSQi/2pIOv+WX0T/g1Q5/6FlS/9BMCv/f042/5FYO/87LSf/mGBG/39S
|
||||
Of9nRDP/KSQj/yckI/8nJCP/Ih8evAgICCIAAAAGGxkYbyckI/goJST/KyYj/zotIf9hRCf/1olB/1A6
|
||||
JP84LSH/KCQi/y8pJv9CMyv/PTEq/ysnJf8oJST/KCUk/zovKf9CMyv/Mywo/yIhIf+DVy//lWEy/yMh
|
||||
If80LCj/QTMr/zApJv8oJST/KCUk/yklJP8jIB+8CQgIIgAAAAYcGhlvKSUk+CkmJf84Lib/dFIr/4Bb
|
||||
Mv+OZzv/flow/2tNKv8vKSX/KCUl/yglJf8oJSX/KSYl/yomJf8pJiX/KCUl/yglJf8pJiX/JSMk/3hX
|
||||
MP+JYjP/JiQk/yklJf8oJSX/KSYl/yomJf8qJiX/KiYl/yQhILwJCAgiAAAABhwaGm8pJiX4Kycm/yon
|
||||
Jv8oJSb/JyUl/yYkJf8nJSX/KCYm/yonJv8rJyb/Kicm/ysnJv8rJyb/Kycm/ysnJv8rJyb/Kycm/ysn
|
||||
Jv8qJyb/My0o/zYvKf8qJyb/Kicm/ysnJv8rJyb/Kycm/ysnJv8rJyb/JSIhvAkICCIAAAAGHRsabyon
|
||||
JvgsKCf/LCgn/ywoJ/8sKCf/LCgn/ywoJ/8sKCf/LCgn/ysoJ/8sKCf/LCgn/ywoJ/8sKCf/LCgn/ywo
|
||||
J/8sKCf/Kygn/ywoJ/8rKCf/Kycn/ywoJ/8sKCf/LCgn/ywoJ/8sKCf/LCgn/ywoJ/8lIiK8CQkIIgAA
|
||||
AAYeGxtvKygn+C0pKP8tKSj/LSko/y0pKP8tKSj/LSko/y0pKP8tKSj/LSko/y0pKP8tKSj/LSko/y0p
|
||||
KP8tKSj/LSko/y0pKP8tKSj/LSko/y0pKP8tKSj/LSko/y0pKP8tKSj/LSko/y0pKP8tKSj/LSko/yYj
|
||||
IrwKCQkiAAAABh4cG28sKSj4Liop/y4qKf8uKin/Liop/y4qKf8uKin/Liop/y4qKf8uKin/Liop/y4q
|
||||
Kf8uKin/Liop/y4qKf8uKin/Liop/y4qKf8uKin/Liop/y4qKf8uKin/Liop/y4qKf8uKin/Liop/y4q
|
||||
Kf8uKin/JyQjvAoJCSIAAAAGHx0cby0qKfgvKyr/Lysq/y8rKv8vKyr/Lysq/y8rKv8vKyr/Lysq/y8r
|
||||
Kv8vKyr/Lysq/y8rKv8vKyr/Lysq/y8rKv8vKyr/Lysq/y8rKv8vKyr/Lysq/y8rKv8vKyr/Lysq/y8r
|
||||
Kv8vKyr/Lisq/y8rKv8oJSS8CgkJIgAAAAUhHh5sLysq+DAsK/8wKyr/MCsq/zArKv8wKyr/MCsq/zAr
|
||||
Kv8wKyr/MCsq/zArKv8wKyr/MCsq/zArKv8wKyr/MCsq/zArKv8wKyr/MCsq/zArKv8wKyr/MCsq/zAr
|
||||
Kv8wKyr/MCsq/zArKv8vKyr/MCwr/ysnJrcLCgoeAAAAASUiIlcyLy7zMC0s/zAtLP8wLSz/MC0s/zAt
|
||||
LP8wLSz/MC0s/zAtLP8wLSz/MC0s/zAtLP8wLSz/MC0s/zAtLP8wLSz/MC0s/zAtLP8wLSz/MC0s/zAt
|
||||
LP8wLSz/MC0s/zAtLP8wLSz/MC0s/zAsK/8yLi3/LisqowAAARGnnpsAIB8eKTg1NNUzLy7/MS0s/zEt
|
||||
LP8xLSz/MS0s/zEtLP8xLSz/MS0s/zEtLP8xLSz/MS0s/zEtLP8xLSz/MS0s/zEtLP8xLSz/MS0s/zEt
|
||||
LP8xLSz/MS0s/zEtLP8xLSz/MS0s/zEtLP8xLSz/MS0s/zg0M/syLy5vAAAAAyMiIQAAAAAHPDk4fDw5
|
||||
OPoyLi3/Mi4t/zIuLf8yLi3/Mi4t/zIuLf8yLi3/Mi4t/zIuLf8yLi3/Mi4t/zIuLf8yLi3/Mi4t/zIu
|
||||
Lf8yLi3/Mi4t/zIuLf8yLi3/Mi4t/zIuLf8yLi3/Mi4t/zEtLP83MzL/QD08wygmJiTUycYAAAAAAM7G
|
||||
wwAtKyoXSEVElkE+PfY3MzL/My8u/zIuLf8yLi3/Mi4t/zIuLf8yLi3/Mi4t/zIuLf8yLi3/Mi4t/zIu
|
||||
Lf8yLi3/Mi4t/zIuLf8yLi3/Mi4t/zIuLf8yLi3/Mi4t/zIuLf80MTD/PDk4/0dEQ8w/PTxBAAAAAhQU
|
||||
EwAAAAAAAAAAANjS0AA1NDQRUE5NYk9MTLNLSEfaSkdG5EpGReRKRkXkSkZF5EpGReRKRkXkSkZF5EpG
|
||||
ReRKRkXkSkZF5EpGReRKRkXkSkZF5EpGReRKRkXkSkZF5EpGReRKRkXkS0dG4E1KScpRTk6JRkRELAAA
|
||||
AAI1MzMAAAAAAAAAAAANCwsAAAAAAGhmZgAAAAAASkhHEldVVCNZV1YoWFZVKFhWVShYVlUoWFZVKFhW
|
||||
VShYVlUoWFZVKFhWVShYVlUoWFZVKFhWVShYVlUoWFZVKFhWVShYVlUoWFZVKFlWVihYVlUmU1FQGyQj
|
||||
IwaalpUAHh4eAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
+910
@@ -0,0 +1,910 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmWebGet
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmWebGet));
|
||||
this.ChkUrlLower = new System.Windows.Forms.CheckBox();
|
||||
this.tabControl2 = new System.Windows.Forms.TabControl();
|
||||
this.tabPage3 = new System.Windows.Forms.TabPage();
|
||||
this.pictureBox1 = new System.Windows.Forms.PictureBox();
|
||||
this.RichHtml = new System.Windows.Forms.RichTextBox();
|
||||
this.contextMenuStripRichText1 = new ryProcessManager.hezuo.ContextMenuStripRichText();
|
||||
this.tabPage12 = new System.Windows.Forms.TabPage();
|
||||
this.Te_Format = new ICSharpCode.TextEditor.TextEditorControl();
|
||||
this.contextMenuStripHighlightText1 = new ryProcessManager.hezuo.ContextMenuStripHighlightText();
|
||||
this.tabPage4 = new System.Windows.Forms.TabPage();
|
||||
this.RichCookie = new System.Windows.Forms.RichTextBox();
|
||||
this.tabPage5 = new System.Windows.Forms.TabPage();
|
||||
this.RichStatus = new System.Windows.Forms.RichTextBox();
|
||||
this.tabPage6 = new System.Windows.Forms.TabPage();
|
||||
this.RichHeader = new System.Windows.Forms.RichTextBox();
|
||||
this.tabPreview = new System.Windows.Forms.TabPage();
|
||||
this.extendedWebBrowser1 = new ExtendedWebBrowser2.ExtendedWebBrowser();
|
||||
this.groupBox3 = new System.Windows.Forms.GroupBox();
|
||||
this.tabControl1 = new System.Windows.Forms.TabControl();
|
||||
this.tabPage1 = new System.Windows.Forms.TabPage();
|
||||
this.TxtPost = new ryControls.Controls.RichTextBox2();
|
||||
this.tabPage2 = new System.Windows.Forms.TabPage();
|
||||
this.TxtCookie = new ryControls.Controls.RichTextBox2();
|
||||
this.tabPage7 = new System.Windows.Forms.TabPage();
|
||||
this.TxtInputHeader = new ryControls.Controls.RichTextBox2();
|
||||
this.groupBox2 = new System.Windows.Forms.GroupBox();
|
||||
this.CbbReferer = new ryControls.RyComboBox();
|
||||
this.CbbIp = new ryControls.RyComboBox();
|
||||
this.label6 = new System.Windows.Forms.Label();
|
||||
this.CbbUserAgent = new ryControls.RyComboBox();
|
||||
this.label7 = new System.Windows.Forms.Label();
|
||||
this.CbbContentType = new ryControls.RyComboBox();
|
||||
this.label11 = new System.Windows.Forms.Label();
|
||||
this.label8 = new System.Windows.Forms.Label();
|
||||
this.groupBox1 = new System.Windows.Forms.GroupBox();
|
||||
this.ChkNoPreview = new System.Windows.Forms.CheckBox();
|
||||
this.ChkHtmlPreview = new System.Windows.Forms.CheckBox();
|
||||
this.ChkGetPic = new System.Windows.Forms.CheckBox();
|
||||
this.ChkJump = new System.Windows.Forms.CheckBox();
|
||||
this.CbbWriteTimeout = new ryControls.RyComboBox();
|
||||
this.label5 = new System.Windows.Forms.Label();
|
||||
this.CbbTimeout = new ryControls.RyComboBox();
|
||||
this.label4 = new System.Windows.Forms.Label();
|
||||
this.CbbEncoding = new ryControls.RyComboBox();
|
||||
this.label3 = new System.Windows.Forms.Label();
|
||||
this.BtnRunHtml = new ryControls.ButtonEx();
|
||||
this.RbPost = new System.Windows.Forms.RadioButton();
|
||||
this.RbGet = new System.Windows.Forms.RadioButton();
|
||||
this.TxtUrl = new ryControls.TextBoxEx2();
|
||||
this.label2 = new System.Windows.Forms.Label();
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.BtnCtreateCShape = new ryControls.ButtonEx();
|
||||
this.columnModel1 = new XPTable.Models.ColumnModel();
|
||||
this.ColUrl = new XPTable.Models.TextColumn();
|
||||
this.ColTitle = new XPTable.Models.TextColumn();
|
||||
this.tableModel1 = new XPTable.Models.TableModel();
|
||||
this.table1 = new XPTable.Models.Table();
|
||||
this.timer1 = new System.Windows.Forms.Timer(this.components);
|
||||
this.tabControl2.SuspendLayout();
|
||||
this.tabPage3.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
|
||||
this.tabPage12.SuspendLayout();
|
||||
this.tabPage4.SuspendLayout();
|
||||
this.tabPage5.SuspendLayout();
|
||||
this.tabPage6.SuspendLayout();
|
||||
this.tabPreview.SuspendLayout();
|
||||
this.groupBox3.SuspendLayout();
|
||||
this.tabControl1.SuspendLayout();
|
||||
this.tabPage1.SuspendLayout();
|
||||
this.tabPage2.SuspendLayout();
|
||||
this.tabPage7.SuspendLayout();
|
||||
this.groupBox2.SuspendLayout();
|
||||
this.groupBox1.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).BeginInit();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// ChkUrlLower
|
||||
//
|
||||
this.ChkUrlLower.AutoSize = true;
|
||||
this.ChkUrlLower.Location = new System.Drawing.Point(630, 10);
|
||||
this.ChkUrlLower.Name = "ChkUrlLower";
|
||||
this.ChkUrlLower.Size = new System.Drawing.Size(72, 16);
|
||||
this.ChkUrlLower.TabIndex = 109;
|
||||
this.ChkUrlLower.Text = "全转小写";
|
||||
this.ChkUrlLower.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// tabControl2
|
||||
//
|
||||
this.tabControl2.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.tabControl2.Controls.Add(this.tabPage3);
|
||||
this.tabControl2.Controls.Add(this.tabPage12);
|
||||
this.tabControl2.Controls.Add(this.tabPage4);
|
||||
this.tabControl2.Controls.Add(this.tabPage5);
|
||||
this.tabControl2.Controls.Add(this.tabPage6);
|
||||
this.tabControl2.Controls.Add(this.tabPreview);
|
||||
this.tabControl2.Location = new System.Drawing.Point(8, 314);
|
||||
this.tabControl2.Name = "tabControl2";
|
||||
this.tabControl2.SelectedIndex = 0;
|
||||
this.tabControl2.Size = new System.Drawing.Size(889, 306);
|
||||
this.tabControl2.TabIndex = 108;
|
||||
//
|
||||
// tabPage3
|
||||
//
|
||||
this.tabPage3.Controls.Add(this.pictureBox1);
|
||||
this.tabPage3.Controls.Add(this.RichHtml);
|
||||
this.tabPage3.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage3.Name = "tabPage3";
|
||||
this.tabPage3.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage3.Size = new System.Drawing.Size(881, 280);
|
||||
this.tabPage3.TabIndex = 0;
|
||||
this.tabPage3.Text = "HTML";
|
||||
this.tabPage3.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// pictureBox1
|
||||
//
|
||||
this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.pictureBox1.Location = new System.Drawing.Point(3, 3);
|
||||
this.pictureBox1.Name = "pictureBox1";
|
||||
this.pictureBox1.Size = new System.Drawing.Size(875, 274);
|
||||
this.pictureBox1.TabIndex = 1;
|
||||
this.pictureBox1.TabStop = false;
|
||||
this.pictureBox1.Visible = false;
|
||||
//
|
||||
// RichHtml
|
||||
//
|
||||
this.RichHtml.BackColor = System.Drawing.Color.White;
|
||||
this.RichHtml.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.RichHtml.ContextMenuStrip = this.contextMenuStripRichText1;
|
||||
this.RichHtml.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.RichHtml.Location = new System.Drawing.Point(3, 3);
|
||||
this.RichHtml.Name = "RichHtml";
|
||||
this.RichHtml.ReadOnly = true;
|
||||
this.RichHtml.Size = new System.Drawing.Size(875, 274);
|
||||
this.RichHtml.TabIndex = 0;
|
||||
this.RichHtml.Text = "";
|
||||
//
|
||||
// contextMenuStripRichText1
|
||||
//
|
||||
this.contextMenuStripRichText1.Name = "contextMenuStripRichText1";
|
||||
this.contextMenuStripRichText1.Size = new System.Drawing.Size(101, 164);
|
||||
//
|
||||
// tabPage12
|
||||
//
|
||||
this.tabPage12.Controls.Add(this.Te_Format);
|
||||
this.tabPage12.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage12.Name = "tabPage12";
|
||||
this.tabPage12.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage12.Size = new System.Drawing.Size(879, 280);
|
||||
this.tabPage12.TabIndex = 4;
|
||||
this.tabPage12.Text = "HTML格式化";
|
||||
this.tabPage12.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// Te_Format
|
||||
//
|
||||
this.Te_Format.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.Te_Format.ContextMenuStrip = this.contextMenuStripHighlightText1;
|
||||
this.Te_Format.IsReadOnly = false;
|
||||
this.Te_Format.Location = new System.Drawing.Point(3, 3);
|
||||
this.Te_Format.Name = "Te_Format";
|
||||
this.Te_Format.Size = new System.Drawing.Size(870, 279);
|
||||
this.Te_Format.TabIndex = 0;
|
||||
//
|
||||
// contextMenuStripHighlightText1
|
||||
//
|
||||
this.contextMenuStripHighlightText1.Name = "contextMenuStripHighlightText1";
|
||||
this.contextMenuStripHighlightText1.Size = new System.Drawing.Size(101, 186);
|
||||
//
|
||||
// tabPage4
|
||||
//
|
||||
this.tabPage4.Controls.Add(this.RichCookie);
|
||||
this.tabPage4.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage4.Name = "tabPage4";
|
||||
this.tabPage4.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage4.Size = new System.Drawing.Size(879, 280);
|
||||
this.tabPage4.TabIndex = 1;
|
||||
this.tabPage4.Text = "Cookie";
|
||||
this.tabPage4.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// RichCookie
|
||||
//
|
||||
this.RichCookie.BackColor = System.Drawing.Color.White;
|
||||
this.RichCookie.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.RichCookie.ContextMenuStrip = this.contextMenuStripRichText1;
|
||||
this.RichCookie.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.RichCookie.Location = new System.Drawing.Point(3, 3);
|
||||
this.RichCookie.Name = "RichCookie";
|
||||
this.RichCookie.ReadOnly = true;
|
||||
this.RichCookie.Size = new System.Drawing.Size(873, 274);
|
||||
this.RichCookie.TabIndex = 1;
|
||||
this.RichCookie.Text = "";
|
||||
//
|
||||
// tabPage5
|
||||
//
|
||||
this.tabPage5.Controls.Add(this.RichStatus);
|
||||
this.tabPage5.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage5.Name = "tabPage5";
|
||||
this.tabPage5.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage5.Size = new System.Drawing.Size(879, 280);
|
||||
this.tabPage5.TabIndex = 2;
|
||||
this.tabPage5.Text = "Status";
|
||||
this.tabPage5.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// RichStatus
|
||||
//
|
||||
this.RichStatus.BackColor = System.Drawing.Color.White;
|
||||
this.RichStatus.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.RichStatus.ContextMenuStrip = this.contextMenuStripRichText1;
|
||||
this.RichStatus.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.RichStatus.Location = new System.Drawing.Point(3, 3);
|
||||
this.RichStatus.Name = "RichStatus";
|
||||
this.RichStatus.ReadOnly = true;
|
||||
this.RichStatus.Size = new System.Drawing.Size(873, 274);
|
||||
this.RichStatus.TabIndex = 2;
|
||||
this.RichStatus.Text = "";
|
||||
//
|
||||
// tabPage6
|
||||
//
|
||||
this.tabPage6.Controls.Add(this.RichHeader);
|
||||
this.tabPage6.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage6.Name = "tabPage6";
|
||||
this.tabPage6.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage6.Size = new System.Drawing.Size(879, 280);
|
||||
this.tabPage6.TabIndex = 3;
|
||||
this.tabPage6.Text = "Header";
|
||||
this.tabPage6.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// RichHeader
|
||||
//
|
||||
this.RichHeader.BackColor = System.Drawing.Color.White;
|
||||
this.RichHeader.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.RichHeader.ContextMenuStrip = this.contextMenuStripRichText1;
|
||||
this.RichHeader.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.RichHeader.Location = new System.Drawing.Point(3, 3);
|
||||
this.RichHeader.Name = "RichHeader";
|
||||
this.RichHeader.ReadOnly = true;
|
||||
this.RichHeader.Size = new System.Drawing.Size(873, 274);
|
||||
this.RichHeader.TabIndex = 3;
|
||||
this.RichHeader.Text = "";
|
||||
//
|
||||
// tabPreview
|
||||
//
|
||||
this.tabPreview.Controls.Add(this.extendedWebBrowser1);
|
||||
this.tabPreview.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPreview.Name = "tabPreview";
|
||||
this.tabPreview.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPreview.Size = new System.Drawing.Size(879, 280);
|
||||
this.tabPreview.TabIndex = 5;
|
||||
this.tabPreview.Text = "预览";
|
||||
this.tabPreview.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// extendedWebBrowser1
|
||||
//
|
||||
this.extendedWebBrowser1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.extendedWebBrowser1.ForceOpenThisWindow = true;
|
||||
this.extendedWebBrowser1.Location = new System.Drawing.Point(3, 3);
|
||||
this.extendedWebBrowser1.MinimumSize = new System.Drawing.Size(20, 20);
|
||||
this.extendedWebBrowser1.Name = "extendedWebBrowser1";
|
||||
this.extendedWebBrowser1.ScriptErrorsSuppressed = true;
|
||||
this.extendedWebBrowser1.Size = new System.Drawing.Size(873, 274);
|
||||
this.extendedWebBrowser1.TabIndex = 2;
|
||||
//
|
||||
// groupBox3
|
||||
//
|
||||
this.groupBox3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.groupBox3.Controls.Add(this.tabControl1);
|
||||
this.groupBox3.Location = new System.Drawing.Point(10, 170);
|
||||
this.groupBox3.Name = "groupBox3";
|
||||
this.groupBox3.Size = new System.Drawing.Size(887, 138);
|
||||
this.groupBox3.TabIndex = 107;
|
||||
this.groupBox3.TabStop = false;
|
||||
this.groupBox3.Text = "高级输入参数";
|
||||
//
|
||||
// tabControl1
|
||||
//
|
||||
this.tabControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.tabControl1.Controls.Add(this.tabPage1);
|
||||
this.tabControl1.Controls.Add(this.tabPage2);
|
||||
this.tabControl1.Controls.Add(this.tabPage7);
|
||||
this.tabControl1.Location = new System.Drawing.Point(4, 17);
|
||||
this.tabControl1.Name = "tabControl1";
|
||||
this.tabControl1.SelectedIndex = 0;
|
||||
this.tabControl1.Size = new System.Drawing.Size(876, 115);
|
||||
this.tabControl1.TabIndex = 6;
|
||||
//
|
||||
// tabPage1
|
||||
//
|
||||
this.tabPage1.Controls.Add(this.TxtPost);
|
||||
this.tabPage1.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage1.Name = "tabPage1";
|
||||
this.tabPage1.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage1.Size = new System.Drawing.Size(868, 89);
|
||||
this.tabPage1.TabIndex = 0;
|
||||
this.tabPage1.Text = "Post数据";
|
||||
this.tabPage1.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// TxtPost
|
||||
//
|
||||
this.TxtPost.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.TxtPost.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.TxtPost.DetectUrls = false;
|
||||
this.TxtPost.EmptyText = "请填写Post数据";
|
||||
this.TxtPost.ForeColor = System.Drawing.Color.Black;
|
||||
this.TxtPost.Location = new System.Drawing.Point(2, 3);
|
||||
this.TxtPost.Name = "TxtPost";
|
||||
this.TxtPost.OnlyInputText = true;
|
||||
this.TxtPost.Size = new System.Drawing.Size(862, 83);
|
||||
this.TxtPost.TabIndex = 2;
|
||||
this.TxtPost.Text = "";
|
||||
this.TxtPost.TextChanged += new System.EventHandler(this.TxtPost_TextChanged);
|
||||
this.TxtPost.DoubleClick += new System.EventHandler(this.TxtPost_DoubleClick);
|
||||
//
|
||||
// tabPage2
|
||||
//
|
||||
this.tabPage2.Controls.Add(this.TxtCookie);
|
||||
this.tabPage2.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage2.Name = "tabPage2";
|
||||
this.tabPage2.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage2.Size = new System.Drawing.Size(868, 89);
|
||||
this.tabPage2.TabIndex = 1;
|
||||
this.tabPage2.Text = "Cookie";
|
||||
this.tabPage2.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// TxtCookie
|
||||
//
|
||||
this.TxtCookie.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.TxtCookie.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.TxtCookie.DetectUrls = false;
|
||||
this.TxtCookie.EmptyText = "请填写请求时要发送的Cookie";
|
||||
this.TxtCookie.ForeColor = System.Drawing.Color.Black;
|
||||
this.TxtCookie.Location = new System.Drawing.Point(2, 3);
|
||||
this.TxtCookie.Name = "TxtCookie";
|
||||
this.TxtCookie.OnlyInputText = true;
|
||||
this.TxtCookie.Size = new System.Drawing.Size(862, 83);
|
||||
this.TxtCookie.TabIndex = 6;
|
||||
this.TxtCookie.Text = "";
|
||||
this.TxtCookie.TextChanged += new System.EventHandler(this.TxtCookie_TextChanged);
|
||||
this.TxtCookie.DoubleClick += new System.EventHandler(this.TxtPost_DoubleClick);
|
||||
//
|
||||
// tabPage7
|
||||
//
|
||||
this.tabPage7.Controls.Add(this.TxtInputHeader);
|
||||
this.tabPage7.Location = new System.Drawing.Point(4, 22);
|
||||
this.tabPage7.Name = "tabPage7";
|
||||
this.tabPage7.Padding = new System.Windows.Forms.Padding(3);
|
||||
this.tabPage7.Size = new System.Drawing.Size(868, 89);
|
||||
this.tabPage7.TabIndex = 2;
|
||||
this.tabPage7.Text = "Header";
|
||||
this.tabPage7.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// TxtInputHeader
|
||||
//
|
||||
this.TxtInputHeader.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.TxtInputHeader.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.TxtInputHeader.DetectUrls = false;
|
||||
this.TxtInputHeader.EmptyText = "请填写请求时要发送的Header";
|
||||
this.TxtInputHeader.ForeColor = System.Drawing.Color.Black;
|
||||
this.TxtInputHeader.Location = new System.Drawing.Point(2, 3);
|
||||
this.TxtInputHeader.Name = "TxtInputHeader";
|
||||
this.TxtInputHeader.OnlyInputText = true;
|
||||
this.TxtInputHeader.Size = new System.Drawing.Size(862, 83);
|
||||
this.TxtInputHeader.TabIndex = 7;
|
||||
this.TxtInputHeader.Text = "";
|
||||
this.TxtInputHeader.TextChanged += new System.EventHandler(this.TxtInputHeader_TextChanged);
|
||||
this.TxtInputHeader.DoubleClick += new System.EventHandler(this.TxtPost_DoubleClick);
|
||||
//
|
||||
// groupBox2
|
||||
//
|
||||
this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.groupBox2.Controls.Add(this.CbbReferer);
|
||||
this.groupBox2.Controls.Add(this.CbbIp);
|
||||
this.groupBox2.Controls.Add(this.label6);
|
||||
this.groupBox2.Controls.Add(this.CbbUserAgent);
|
||||
this.groupBox2.Controls.Add(this.label7);
|
||||
this.groupBox2.Controls.Add(this.CbbContentType);
|
||||
this.groupBox2.Controls.Add(this.label11);
|
||||
this.groupBox2.Controls.Add(this.label8);
|
||||
this.groupBox2.Location = new System.Drawing.Point(10, 90);
|
||||
this.groupBox2.Name = "groupBox2";
|
||||
this.groupBox2.Size = new System.Drawing.Size(887, 75);
|
||||
this.groupBox2.TabIndex = 106;
|
||||
this.groupBox2.TabStop = false;
|
||||
this.groupBox2.Text = "高级配置";
|
||||
//
|
||||
// CbbReferer
|
||||
//
|
||||
this.CbbReferer.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.CbbReferer.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbReferer.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbReferer.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CbbReferer.FormattingEnabled = true;
|
||||
this.CbbReferer.Location = new System.Drawing.Point(360, 45);
|
||||
this.CbbReferer.Name = "CbbReferer";
|
||||
this.CbbReferer.Size = new System.Drawing.Size(520, 24);
|
||||
this.CbbReferer.TabIndex = 6;
|
||||
//
|
||||
// CbbIp
|
||||
//
|
||||
this.CbbIp.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbIp.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbIp.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CbbIp.FormattingEnabled = true;
|
||||
this.CbbIp.Location = new System.Drawing.Point(86, 46);
|
||||
this.CbbIp.Name = "CbbIp";
|
||||
this.CbbIp.Size = new System.Drawing.Size(205, 22);
|
||||
this.CbbIp.TabIndex = 5;
|
||||
//
|
||||
// label6
|
||||
//
|
||||
this.label6.AutoSize = true;
|
||||
this.label6.Location = new System.Drawing.Point(11, 50);
|
||||
this.label6.Name = "label6";
|
||||
this.label6.Size = new System.Drawing.Size(41, 12);
|
||||
this.label6.TabIndex = 4;
|
||||
this.label6.Text = "代理IP";
|
||||
//
|
||||
// CbbUserAgent
|
||||
//
|
||||
this.CbbUserAgent.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.CbbUserAgent.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbUserAgent.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbUserAgent.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CbbUserAgent.FormattingEnabled = true;
|
||||
this.CbbUserAgent.Items.AddRange(new object[] {
|
||||
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)",
|
||||
"Mozilla/5.0 (Windows NT 6.1; WOW64; rv:18.0) Gecko/20100101 Firefox/18.0",
|
||||
"Mozilla/4.0 (compatible; MSIE 8.0; Windows NT6.0)",
|
||||
"Opera/9.27 (Windows NT 5.2; U; zh-cn)"});
|
||||
this.CbbUserAgent.Location = new System.Drawing.Point(360, 18);
|
||||
this.CbbUserAgent.Name = "CbbUserAgent";
|
||||
this.CbbUserAgent.Size = new System.Drawing.Size(520, 22);
|
||||
this.CbbUserAgent.TabIndex = 300;
|
||||
//
|
||||
// label7
|
||||
//
|
||||
this.label7.AutoSize = true;
|
||||
this.label7.Location = new System.Drawing.Point(297, 24);
|
||||
this.label7.Name = "label7";
|
||||
this.label7.Size = new System.Drawing.Size(59, 12);
|
||||
this.label7.TabIndex = 2;
|
||||
this.label7.Text = "UserAgent";
|
||||
//
|
||||
// CbbContentType
|
||||
//
|
||||
this.CbbContentType.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbContentType.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbContentType.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CbbContentType.FormattingEnabled = true;
|
||||
this.CbbContentType.Items.AddRange(new object[] {
|
||||
"text/html",
|
||||
"application/x-www-form-urlencoded",
|
||||
"application/json",
|
||||
"text/json"});
|
||||
this.CbbContentType.Location = new System.Drawing.Point(86, 18);
|
||||
this.CbbContentType.Name = "CbbContentType";
|
||||
this.CbbContentType.Size = new System.Drawing.Size(205, 22);
|
||||
this.CbbContentType.TabIndex = 1;
|
||||
//
|
||||
// label11
|
||||
//
|
||||
this.label11.AutoSize = true;
|
||||
this.label11.Location = new System.Drawing.Point(299, 50);
|
||||
this.label11.Name = "label11";
|
||||
this.label11.Size = new System.Drawing.Size(47, 12);
|
||||
this.label11.TabIndex = 0;
|
||||
this.label11.Text = "Referer";
|
||||
//
|
||||
// label8
|
||||
//
|
||||
this.label8.AutoSize = true;
|
||||
this.label8.Location = new System.Drawing.Point(11, 24);
|
||||
this.label8.Name = "label8";
|
||||
this.label8.Size = new System.Drawing.Size(71, 12);
|
||||
this.label8.TabIndex = 0;
|
||||
this.label8.Text = "ContentType";
|
||||
//
|
||||
// groupBox1
|
||||
//
|
||||
this.groupBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.groupBox1.Controls.Add(this.ChkNoPreview);
|
||||
this.groupBox1.Controls.Add(this.ChkHtmlPreview);
|
||||
this.groupBox1.Controls.Add(this.ChkGetPic);
|
||||
this.groupBox1.Controls.Add(this.ChkJump);
|
||||
this.groupBox1.Controls.Add(this.CbbWriteTimeout);
|
||||
this.groupBox1.Controls.Add(this.label5);
|
||||
this.groupBox1.Controls.Add(this.CbbTimeout);
|
||||
this.groupBox1.Controls.Add(this.label4);
|
||||
this.groupBox1.Controls.Add(this.CbbEncoding);
|
||||
this.groupBox1.Controls.Add(this.label3);
|
||||
this.groupBox1.Location = new System.Drawing.Point(10, 34);
|
||||
this.groupBox1.Name = "groupBox1";
|
||||
this.groupBox1.Size = new System.Drawing.Size(887, 51);
|
||||
this.groupBox1.TabIndex = 105;
|
||||
this.groupBox1.TabStop = false;
|
||||
this.groupBox1.Text = "基本配置";
|
||||
//
|
||||
// ChkNoPreview
|
||||
//
|
||||
this.ChkNoPreview.AutoSize = true;
|
||||
this.ChkNoPreview.Checked = true;
|
||||
this.ChkNoPreview.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.ChkNoPreview.Location = new System.Drawing.Point(610, 21);
|
||||
this.ChkNoPreview.Name = "ChkNoPreview";
|
||||
this.ChkNoPreview.Size = new System.Drawing.Size(60, 16);
|
||||
this.ChkNoPreview.TabIndex = 9;
|
||||
this.ChkNoPreview.Text = "不预览";
|
||||
this.ChkNoPreview.UseVisualStyleBackColor = true;
|
||||
this.ChkNoPreview.CheckedChanged += new System.EventHandler(this.ChkNoPreview_CheckedChanged);
|
||||
//
|
||||
// ChkHtmlPreview
|
||||
//
|
||||
this.ChkHtmlPreview.AutoSize = true;
|
||||
this.ChkHtmlPreview.Checked = true;
|
||||
this.ChkHtmlPreview.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.ChkHtmlPreview.Enabled = false;
|
||||
this.ChkHtmlPreview.Location = new System.Drawing.Point(676, 21);
|
||||
this.ChkHtmlPreview.Name = "ChkHtmlPreview";
|
||||
this.ChkHtmlPreview.Size = new System.Drawing.Size(144, 16);
|
||||
this.ChkHtmlPreview.TabIndex = 8;
|
||||
this.ChkHtmlPreview.Text = "使用HTML结果进行预览";
|
||||
this.ChkHtmlPreview.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// ChkGetPic
|
||||
//
|
||||
this.ChkGetPic.AutoSize = true;
|
||||
this.ChkGetPic.Location = new System.Drawing.Point(532, 21);
|
||||
this.ChkGetPic.Name = "ChkGetPic";
|
||||
this.ChkGetPic.Size = new System.Drawing.Size(72, 16);
|
||||
this.ChkGetPic.TabIndex = 7;
|
||||
this.ChkGetPic.Text = "获取图片";
|
||||
this.ChkGetPic.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// ChkJump
|
||||
//
|
||||
this.ChkJump.AutoSize = true;
|
||||
this.ChkJump.Location = new System.Drawing.Point(478, 21);
|
||||
this.ChkJump.Name = "ChkJump";
|
||||
this.ChkJump.Size = new System.Drawing.Size(48, 16);
|
||||
this.ChkJump.TabIndex = 6;
|
||||
this.ChkJump.Text = "跳转";
|
||||
this.ChkJump.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// CbbWriteTimeout
|
||||
//
|
||||
this.CbbWriteTimeout.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbWriteTimeout.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbWriteTimeout.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CbbWriteTimeout.FormattingEnabled = true;
|
||||
this.CbbWriteTimeout.Items.AddRange(new object[] {
|
||||
"100秒",
|
||||
"50秒",
|
||||
"30秒",
|
||||
"20秒",
|
||||
"10秒",
|
||||
"5秒"});
|
||||
this.CbbWriteTimeout.Location = new System.Drawing.Point(393, 18);
|
||||
this.CbbWriteTimeout.Name = "CbbWriteTimeout";
|
||||
this.CbbWriteTimeout.Size = new System.Drawing.Size(74, 22);
|
||||
this.CbbWriteTimeout.TabIndex = 5;
|
||||
//
|
||||
// label5
|
||||
//
|
||||
this.label5.AutoSize = true;
|
||||
this.label5.Location = new System.Drawing.Point(337, 24);
|
||||
this.label5.Name = "label5";
|
||||
this.label5.Size = new System.Drawing.Size(53, 12);
|
||||
this.label5.TabIndex = 4;
|
||||
this.label5.Text = "写入超时";
|
||||
//
|
||||
// CbbTimeout
|
||||
//
|
||||
this.CbbTimeout.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbTimeout.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbTimeout.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CbbTimeout.FormattingEnabled = true;
|
||||
this.CbbTimeout.Items.AddRange(new object[] {
|
||||
"100秒",
|
||||
"50秒",
|
||||
"30秒",
|
||||
"20秒",
|
||||
"10秒",
|
||||
"5秒"});
|
||||
this.CbbTimeout.Location = new System.Drawing.Point(256, 18);
|
||||
this.CbbTimeout.Name = "CbbTimeout";
|
||||
this.CbbTimeout.Size = new System.Drawing.Size(74, 22);
|
||||
this.CbbTimeout.TabIndex = 3;
|
||||
//
|
||||
// label4
|
||||
//
|
||||
this.label4.AutoSize = true;
|
||||
this.label4.Location = new System.Drawing.Point(197, 24);
|
||||
this.label4.Name = "label4";
|
||||
this.label4.Size = new System.Drawing.Size(53, 12);
|
||||
this.label4.TabIndex = 2;
|
||||
this.label4.Text = "连接超时";
|
||||
//
|
||||
// CbbEncoding
|
||||
//
|
||||
this.CbbEncoding.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbEncoding.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbEncoding.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CbbEncoding.FormattingEnabled = true;
|
||||
this.CbbEncoding.Items.AddRange(new object[] {
|
||||
"自动识别",
|
||||
"utf-8",
|
||||
"gb2312",
|
||||
"gbk",
|
||||
"ASCII",
|
||||
"Unicode",
|
||||
"iso-8859-1"});
|
||||
this.CbbEncoding.Location = new System.Drawing.Point(70, 18);
|
||||
this.CbbEncoding.Name = "CbbEncoding";
|
||||
this.CbbEncoding.Size = new System.Drawing.Size(121, 22);
|
||||
this.CbbEncoding.TabIndex = 1;
|
||||
//
|
||||
// label3
|
||||
//
|
||||
this.label3.AutoSize = true;
|
||||
this.label3.Location = new System.Drawing.Point(11, 24);
|
||||
this.label3.Name = "label3";
|
||||
this.label3.Size = new System.Drawing.Size(53, 12);
|
||||
this.label3.TabIndex = 0;
|
||||
this.label3.Text = "选择编码";
|
||||
//
|
||||
// BtnRunHtml
|
||||
//
|
||||
this.BtnRunHtml.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnRunHtml.Location = new System.Drawing.Point(723, 6);
|
||||
this.BtnRunHtml.Name = "BtnRunHtml";
|
||||
this.BtnRunHtml.Size = new System.Drawing.Size(82, 26);
|
||||
this.BtnRunHtml.TabIndex = 104;
|
||||
this.BtnRunHtml.Text = "执行";
|
||||
this.BtnRunHtml.UseVisualStyleBackColor = true;
|
||||
this.BtnRunHtml.Click += new System.EventHandler(this.BtnRunHtml_Click);
|
||||
//
|
||||
// RbPost
|
||||
//
|
||||
this.RbPost.AutoSize = true;
|
||||
this.RbPost.Location = new System.Drawing.Point(577, 10);
|
||||
this.RbPost.Name = "RbPost";
|
||||
this.RbPost.Size = new System.Drawing.Size(47, 16);
|
||||
this.RbPost.TabIndex = 103;
|
||||
this.RbPost.Text = "Post";
|
||||
this.RbPost.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// RbGet
|
||||
//
|
||||
this.RbGet.AutoSize = true;
|
||||
this.RbGet.Checked = true;
|
||||
this.RbGet.Location = new System.Drawing.Point(530, 10);
|
||||
this.RbGet.Name = "RbGet";
|
||||
this.RbGet.Size = new System.Drawing.Size(41, 16);
|
||||
this.RbGet.TabIndex = 102;
|
||||
this.RbGet.TabStop = true;
|
||||
this.RbGet.Text = "Get";
|
||||
this.RbGet.UseVisualStyleBackColor = true;
|
||||
//
|
||||
// TxtUrl
|
||||
//
|
||||
this.TxtUrl.BackColor = System.Drawing.Color.White;
|
||||
this.TxtUrl.EmptyText = "请填写请求url";
|
||||
this.TxtUrl.ImeMode = System.Windows.Forms.ImeMode.Close;
|
||||
this.TxtUrl.Location = new System.Drawing.Point(45, 6);
|
||||
this.TxtUrl.MaxLength = 999999999;
|
||||
this.TxtUrl.Multiline = false;
|
||||
this.TxtUrl.Name = "TxtUrl";
|
||||
this.TxtUrl.OnlyNumeric = false;
|
||||
this.TxtUrl.PasswordChar = '\0';
|
||||
this.TxtUrl.ReadOnly = false;
|
||||
this.TxtUrl.SelectedText = "";
|
||||
this.TxtUrl.SelectionLength = 0;
|
||||
this.TxtUrl.SelectionStart = 0;
|
||||
this.TxtUrl.Size = new System.Drawing.Size(479, 23);
|
||||
this.TxtUrl.TabIndex = 110;
|
||||
this.TxtUrl.TextAlign = System.Windows.Forms.HorizontalAlignment.Left;
|
||||
this.TxtUrl.ToolTip = "";
|
||||
this.TxtUrl.WordWrap = true;
|
||||
this.TxtUrl.TextChanged2 += new System.EventHandler(this.TxtUrl_TextChanged2);
|
||||
this.TxtUrl.KeyDown += new System.Windows.Forms.KeyEventHandler(this.TxtUrl_KeyDown);
|
||||
this.TxtUrl.Leave += new System.EventHandler(this.TxtUrl_Leave);
|
||||
//
|
||||
// label2
|
||||
//
|
||||
this.label2.AutoSize = true;
|
||||
this.label2.Location = new System.Drawing.Point(14, 10);
|
||||
this.label2.Name = "label2";
|
||||
this.label2.Size = new System.Drawing.Size(23, 12);
|
||||
this.label2.TabIndex = 101;
|
||||
this.label2.Text = "Url";
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(185, 92);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// BtnCtreateCShape
|
||||
//
|
||||
this.BtnCtreateCShape.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.BtnCtreateCShape.Location = new System.Drawing.Point(812, 6);
|
||||
this.BtnCtreateCShape.Name = "BtnCtreateCShape";
|
||||
this.BtnCtreateCShape.Size = new System.Drawing.Size(82, 26);
|
||||
this.BtnCtreateCShape.TabIndex = 111;
|
||||
this.BtnCtreateCShape.Text = "生成代码";
|
||||
this.BtnCtreateCShape.UseVisualStyleBackColor = true;
|
||||
this.BtnCtreateCShape.Click += new System.EventHandler(this.BtnCtreateCShape_Click);
|
||||
//
|
||||
// columnModel1
|
||||
//
|
||||
this.columnModel1.Columns.AddRange(new XPTable.Models.Column[] {
|
||||
this.ColUrl,
|
||||
this.ColTitle});
|
||||
//
|
||||
// ColUrl
|
||||
//
|
||||
this.ColUrl.Editable = false;
|
||||
this.ColUrl.Tag = null;
|
||||
this.ColUrl.Text = "网址";
|
||||
this.ColUrl.Width = 430;
|
||||
//
|
||||
// ColTitle
|
||||
//
|
||||
this.ColTitle.Editable = false;
|
||||
this.ColTitle.Tag = null;
|
||||
this.ColTitle.Text = "名称";
|
||||
this.ColTitle.Width = 200;
|
||||
//
|
||||
// table1
|
||||
//
|
||||
this.table1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.table1.ColumnModel = this.columnModel1;
|
||||
this.table1.EnableToolTips = true;
|
||||
this.table1.FullRowSelect = true;
|
||||
this.table1.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.Nonclickable;
|
||||
this.table1.Location = new System.Drawing.Point(45, 30);
|
||||
this.table1.Name = "table1";
|
||||
this.table1.NoItemsText = "当前列表没有任何项";
|
||||
this.table1.Size = new System.Drawing.Size(657, 347);
|
||||
this.table1.TabIndex = 112;
|
||||
this.table1.TableModel = this.tableModel1;
|
||||
this.table1.Text = "table1";
|
||||
this.table1.Visible = false;
|
||||
this.table1.CellLostFocus += new XPTable.Events.CellFocusEventHandler(this.Table1_CellLostFocus);
|
||||
this.table1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Table1_KeyDown);
|
||||
this.table1.Leave += new System.EventHandler(this.Table1_Leave);
|
||||
this.table1.MouseClick += new System.Windows.Forms.MouseEventHandler(this.table1_MouseClick);
|
||||
//
|
||||
// timer1
|
||||
//
|
||||
this.timer1.Interval = 1000;
|
||||
this.timer1.Tick += new System.EventHandler(this.timer1_Tick);
|
||||
//
|
||||
// FrmWebGet
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(909, 620);
|
||||
this.Controls.Add(this.TxtUrl);
|
||||
this.Controls.Add(this.BtnCtreateCShape);
|
||||
this.Controls.Add(this.ChkUrlLower);
|
||||
this.Controls.Add(this.tabControl2);
|
||||
this.Controls.Add(this.groupBox3);
|
||||
this.Controls.Add(this.groupBox2);
|
||||
this.Controls.Add(this.groupBox1);
|
||||
this.Controls.Add(this.BtnRunHtml);
|
||||
this.Controls.Add(this.RbPost);
|
||||
this.Controls.Add(this.RbGet);
|
||||
this.Controls.Add(this.label2);
|
||||
this.Controls.Add(this.table1);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmWebGet";
|
||||
this.TabPageContextMenuStrip = this.menuRight1;
|
||||
this.Text = "网页抓取工具";
|
||||
this.Load += new System.EventHandler(this.FrmWebGet_Load);
|
||||
this.Click += new System.EventHandler(this.FrmWebGet_Click);
|
||||
this.tabControl2.ResumeLayout(false);
|
||||
this.tabPage3.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
|
||||
this.tabPage12.ResumeLayout(false);
|
||||
this.tabPage4.ResumeLayout(false);
|
||||
this.tabPage5.ResumeLayout(false);
|
||||
this.tabPage6.ResumeLayout(false);
|
||||
this.tabPreview.ResumeLayout(false);
|
||||
this.groupBox3.ResumeLayout(false);
|
||||
this.tabControl1.ResumeLayout(false);
|
||||
this.tabPage1.ResumeLayout(false);
|
||||
this.tabPage2.ResumeLayout(false);
|
||||
this.tabPage7.ResumeLayout(false);
|
||||
this.groupBox2.ResumeLayout(false);
|
||||
this.groupBox2.PerformLayout();
|
||||
this.groupBox1.ResumeLayout(false);
|
||||
this.groupBox1.PerformLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.table1)).EndInit();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.CheckBox ChkUrlLower;
|
||||
private System.Windows.Forms.TabControl tabControl2;
|
||||
private System.Windows.Forms.TabPage tabPage3;
|
||||
private System.Windows.Forms.PictureBox pictureBox1;
|
||||
private System.Windows.Forms.RichTextBox RichHtml;
|
||||
private System.Windows.Forms.TabPage tabPage12;
|
||||
private ICSharpCode.TextEditor.TextEditorControl Te_Format;
|
||||
private System.Windows.Forms.TabPage tabPage4;
|
||||
private System.Windows.Forms.RichTextBox RichCookie;
|
||||
private System.Windows.Forms.TabPage tabPage5;
|
||||
private System.Windows.Forms.RichTextBox RichStatus;
|
||||
private System.Windows.Forms.TabPage tabPage6;
|
||||
private System.Windows.Forms.RichTextBox RichHeader;
|
||||
private System.Windows.Forms.GroupBox groupBox3;
|
||||
private System.Windows.Forms.GroupBox groupBox2;
|
||||
private ryControls.RyComboBox CbbReferer;
|
||||
private ryControls.RyComboBox CbbIp;
|
||||
private System.Windows.Forms.Label label6;
|
||||
private ryControls.RyComboBox CbbUserAgent;
|
||||
private System.Windows.Forms.Label label7;
|
||||
private ryControls.RyComboBox CbbContentType;
|
||||
private System.Windows.Forms.Label label11;
|
||||
private System.Windows.Forms.Label label8;
|
||||
private System.Windows.Forms.GroupBox groupBox1;
|
||||
private System.Windows.Forms.CheckBox ChkGetPic;
|
||||
private System.Windows.Forms.CheckBox ChkJump;
|
||||
private ryControls.RyComboBox CbbWriteTimeout;
|
||||
private System.Windows.Forms.Label label5;
|
||||
private ryControls.RyComboBox CbbTimeout;
|
||||
private System.Windows.Forms.Label label4;
|
||||
private ryControls.RyComboBox CbbEncoding;
|
||||
private System.Windows.Forms.Label label3;
|
||||
private ryControls.ButtonEx BtnRunHtml;
|
||||
private System.Windows.Forms.RadioButton RbPost;
|
||||
private System.Windows.Forms.RadioButton RbGet;
|
||||
private ryControls.TextBoxEx2 TxtUrl;
|
||||
private System.Windows.Forms.Label label2;
|
||||
private ryProcessManager.hezuo.ContextMenuStripRichText contextMenuStripRichText1;
|
||||
private ryProcessManager.hezuo.ContextMenuStripHighlightText contextMenuStripHighlightText1;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
private ryControls.ButtonEx BtnCtreateCShape;
|
||||
private XPTable.Models.ColumnModel columnModel1;
|
||||
private XPTable.Models.TableModel tableModel1;
|
||||
private XPTable.Models.Table table1;
|
||||
private XPTable.Models.TextColumn ColUrl;
|
||||
private XPTable.Models.TextColumn ColTitle;
|
||||
private System.Windows.Forms.Timer timer1;
|
||||
private System.Windows.Forms.TabControl tabControl1;
|
||||
private System.Windows.Forms.TabPage tabPage1;
|
||||
private System.Windows.Forms.TabPage tabPage2;
|
||||
private System.Windows.Forms.TabPage tabPage7;
|
||||
private ryControls.Controls.RichTextBox2 TxtPost;
|
||||
private ryControls.Controls.RichTextBox2 TxtCookie;
|
||||
private ryControls.Controls.RichTextBox2 TxtInputHeader;
|
||||
private System.Windows.Forms.TabPage tabPreview;
|
||||
private ExtendedWebBrowser2.ExtendedWebBrowser extendedWebBrowser1;
|
||||
private System.Windows.Forms.CheckBox ChkHtmlPreview;
|
||||
private System.Windows.Forms.CheckBox ChkNoPreview;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,771 @@
|
||||
using DotNet4.Utilities;
|
||||
using ICSharpCode.TextEditor.Document;
|
||||
using ryCommon;
|
||||
using ryCommonDb;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
using 开发辅助工具.Manager;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmWebGet : DockContent
|
||||
{
|
||||
public FrmWebGet()
|
||||
{
|
||||
InitializeComponent();
|
||||
LoadPram();
|
||||
tabControl2.SelectedTab = tabPage12;
|
||||
}
|
||||
private void LoadPram()
|
||||
{
|
||||
Te_Format.IsReadOnly = true;
|
||||
CbbContentType.SelectedIndex = 0;
|
||||
CbbUserAgent.SelectedIndex = 0;
|
||||
CbbEncoding.SelectedIndex = 0;
|
||||
CbbTimeout.SelectedIndex = CbbTimeout.Items.Count-2;
|
||||
CbbWriteTimeout.SelectedIndex = CbbWriteTimeout.Items.Count - 2;
|
||||
CbbUserAgent.Items.AddRange(new UserAgentInfo[]{
|
||||
new UserAgentInfo() { name = "QQ浏览器极速模式", useragent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.26 Safari/537.36 Core/1.63.6776.400 QQBrowser/10.3.2601.400" },
|
||||
new UserAgentInfo() { name = "360浏览器极速模式", useragent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36" },
|
||||
new UserAgentInfo() { name = "QQ浏览器手机版", useragent = "Mozilla/5.0 (Linux; U; Android 8.1.0; zh-cn; BLA-AL00 Build/HUAWEIBLA-AL00) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.132 MQQBrowser/8.9 Mobile Safari/537.36" },
|
||||
new UserAgentInfo() { name = "微信", useragent = "Mozilla/5.0 (Linux; U; Android 4.1.2; zh-cn; GT-I9300 Build/JZO54K) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 MicroMessenger/5.2.380" },
|
||||
new UserAgentInfo() { name = "iPhone", useragent = "Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1C28 Safari/419.3" },
|
||||
new UserAgentInfo() { name = "安卓", useragent = "Mozilla/5.0 (Linux; Android 4.1.1; Nexus 7 Build/JRO03S) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Safari/535.19" },
|
||||
});
|
||||
TxtPost.AddSeparatorMenu();
|
||||
TxtPost.AddMenu("将选定项进行Url编码(UTF8)", "").Click += new EventHandler((object sender2, EventArgs e2) =>
|
||||
{
|
||||
RyWeb.QuickWeb web = new RyWeb.QuickWeb();
|
||||
TxtPost.SelectedText = web.UrlEncode(TxtPost.SelectedText, Encoding.UTF8);
|
||||
});
|
||||
TxtPost.AddMenu("将选定项进行Url编码(GB2312)", "").Click += new EventHandler((object sender2, EventArgs e2) =>
|
||||
{
|
||||
RyWeb.QuickWeb web = new RyWeb.QuickWeb();
|
||||
TxtPost.SelectedText = web.UrlEncode(TxtPost.SelectedText, Encoding.GetEncoding("GB2312"));
|
||||
});
|
||||
TxtPost.AddSeparatorMenu();
|
||||
TxtPost.AddMenu("将选定项进行Url解码(UTF8)", "").Click += new EventHandler((object sender2, EventArgs e2) =>
|
||||
{
|
||||
TxtPost.SelectedText = RyWeb.WebDecode.UrlDecode(TxtPost.SelectedText, Encoding.UTF8);
|
||||
});
|
||||
TxtPost.AddMenu("将选定项进行Url解码(GB2312)", "").Click += new EventHandler((object sender2, EventArgs e2) =>
|
||||
{
|
||||
TxtPost.SelectedText = RyWeb.WebDecode.UrlDecode(TxtPost.SelectedText, Encoding.GetEncoding("GB2312"));
|
||||
});
|
||||
TxtPost.AddSeparatorMenu();
|
||||
TxtPost.AddMenu("查询选定项对应的时间", "unixtime").Click += new EventHandler((object sender2, EventArgs e2) =>
|
||||
{
|
||||
MessageBox.Show("当前选中的时间是:" + RyDate.UnixTimeToDateTime(TxtPost.SelectedText).ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
});
|
||||
TxtPost.AddMenu("插入时间戳", "").Click += new EventHandler((object sender2, EventArgs e2) =>
|
||||
{
|
||||
SuperDesign.Controls.FrmInsertUnixTime frm = new SuperDesign.Controls.FrmInsertUnixTime();
|
||||
frm.Icon = Icon;
|
||||
var text = TxtPost.SelectedText;
|
||||
if(text.Length>4 && text.IsInt())
|
||||
{
|
||||
frm.dateTimePickerEX1.Value = RyDate.UnixTimeToDateTime(text);
|
||||
}
|
||||
if (frm.ShowDialog()==DialogResult.OK)
|
||||
{
|
||||
TxtPost.SelectedText = RyDate.DateTimeToUnixTime(frm.dateTimePickerEX1.Value).ToString();
|
||||
}
|
||||
// MessageBox.Show("当前选中的时间是:" + RyDate.UnixTimeToDateTime(TxtPost.SelectedText).ToString(), "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
});
|
||||
TxtPost.OnMenuOpening += TxtPost_OnMenuOpening;
|
||||
}
|
||||
|
||||
private void TxtPost_OnMenuOpening(object sender, CancelEventArgs e)
|
||||
{
|
||||
var item= TxtPost.GetMenuItem("unixtime");
|
||||
if(item!=null)
|
||||
{
|
||||
var text = TxtPost.SelectedText;
|
||||
item.Visible = text.IsInt() && text.Length>4;
|
||||
}
|
||||
}
|
||||
|
||||
private bool IsExit = false;
|
||||
private bool IsRunning = false;
|
||||
Thread th;
|
||||
private void BtnRunHtml_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (IsRunning) {
|
||||
IsExit = true;
|
||||
BtnRunHtml.Text = "停止中"; ;
|
||||
if (th!=null && th.IsAlive)
|
||||
{
|
||||
th.Abort();
|
||||
}
|
||||
return;
|
||||
}
|
||||
IsExit = false;
|
||||
IsRunning = true;
|
||||
BtnRunHtml.Text = "停止执行"; ;
|
||||
#region 将当前设置赋值到查询
|
||||
this.RichHtml.Text = "正在获取数据...";
|
||||
Te_Format.Text = "正在获取数据...";
|
||||
this.RichCookie.Text = "";
|
||||
RichHeader.Text = "";
|
||||
RichStatus.Text = "";
|
||||
extendedWebBrowser1.LoadStrings("");
|
||||
if (TxtUrl.Text.IndexOfEx("//") == 0)
|
||||
{
|
||||
TxtUrl.Text = "http:" + TxtUrl.Text;
|
||||
}
|
||||
else if (TxtUrl.Text.IndexOfEx("://") == 0)
|
||||
{
|
||||
TxtUrl.Text = "http" + TxtUrl.Text;
|
||||
}
|
||||
else if (TxtUrl.Text.IndexOfEx("http") != 0)
|
||||
{
|
||||
TxtUrl.Text = "http://" + TxtUrl.Text.TrimStart('/');
|
||||
}
|
||||
|
||||
string str = "get";
|
||||
if (RbGet.Checked)
|
||||
{
|
||||
str = "get";
|
||||
}
|
||||
if (RbPost.Checked)
|
||||
{
|
||||
str = "post";
|
||||
}
|
||||
HttpItem item = new HttpItem
|
||||
{
|
||||
URL = TxtUrl.Text.Trim(),
|
||||
Method = str,
|
||||
IsToLower = this.ChkUrlLower.Checked,
|
||||
Cookie = this.TxtCookie.Text.Trim(),
|
||||
Referer = this.CbbReferer.Text.Trim(),
|
||||
Postdata = this.TxtPost.Text.Trim(),
|
||||
Timeout = Convert.ToInt32(this.CbbTimeout.Text.Replace("秒", string.Empty).Trim()) * 0x3e8,
|
||||
ReadWriteTimeout = Convert.ToInt32(this.CbbWriteTimeout.Text.Replace("秒", string.Empty).Trim()) * 0x3e8,
|
||||
UserAgent = this.CbbUserAgent.Text,
|
||||
ContentType = this.CbbContentType.Text,
|
||||
Allowautoredirect = this.ChkJump.Checked,
|
||||
ProtocolVersion = System.Net.HttpVersion.Version11,
|
||||
ResultType = ChkGetPic.Checked ? ResultType.Byte : ResultType.String,
|
||||
};
|
||||
if (TxtInputHeader.Text.Length > 0)
|
||||
{
|
||||
try
|
||||
{
|
||||
string[] item_header = TxtInputHeader.Text.Replace("\r", "").Split('\n');
|
||||
for (int i = 0; i < item_header.Length; i++)
|
||||
{
|
||||
item.Header.Add(item_header[i]);
|
||||
//int iPos = item_header[i].LastIndexOf(":");
|
||||
//if (iPos > 0)
|
||||
//{
|
||||
// var header_name = item_header[i].Substring(0, iPos);
|
||||
// var header_value = item_header[i].Substring(iPos + 1);
|
||||
// item.Header.Add(header_name, header_value);
|
||||
//}
|
||||
}
|
||||
}
|
||||
catch (Exception exception)
|
||||
{
|
||||
this.RichHtml.Text = exception.Message;
|
||||
Te_Format.Text = "";
|
||||
tabControl2.SelectedIndex = 0;
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (CbbUserAgent.SelectedIndex != -1)
|
||||
{
|
||||
if (CbbUserAgent.SelectedItem is UserAgentInfo)
|
||||
{
|
||||
item.UserAgent = ((UserAgentInfo)CbbUserAgent.SelectedItem).useragent;
|
||||
}
|
||||
}
|
||||
if (!string.IsNullOrEmpty(this.CbbIp.Text.Trim()))
|
||||
{
|
||||
item.ProxyIp = this.CbbIp.Text.Trim();
|
||||
}
|
||||
if (!this.CbbEncoding.Text.Contains("自动"))
|
||||
{
|
||||
item.Encoding = Encoding.GetEncoding(this.CbbEncoding.Text.Trim());
|
||||
}
|
||||
#endregion
|
||||
if (th != null && th.IsAlive)
|
||||
{
|
||||
th.Abort();
|
||||
}
|
||||
th = new Thread(Start);
|
||||
th.Start();
|
||||
void Start()
|
||||
{
|
||||
try
|
||||
{
|
||||
var http = new HttpHelper();
|
||||
DateTime dt = DateTime.Now;
|
||||
var result = http.GetHtml(item);
|
||||
DateTime dt_end = DateTime.Now;
|
||||
_ = this.Invoke(new Action(() =>
|
||||
{
|
||||
#region 将获得的结果显示出来
|
||||
if (result.Html.Length > 1024 * 1024 * 4)
|
||||
{
|
||||
this.RichHtml.Text = "获取失败,您要获取的网页超过4MB,暂时无法获取。";
|
||||
Te_Format.Text = "获取失败,您要获取的网页超过4MB,暂时无法获取。";
|
||||
}
|
||||
else
|
||||
{
|
||||
if (result.StatusCode == System.Net.HttpStatusCode.Redirect)
|
||||
{
|
||||
if (!ChkJump.Checked)
|
||||
{
|
||||
switch (MessageBox.Show("当前Url需要跳转,是否勾选跳转重试获取?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question))
|
||||
{
|
||||
case DialogResult.Yes:
|
||||
ChkJump.Checked = true;
|
||||
IsRunning = false;
|
||||
BtnRunHtml_Click(sender, e);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
RichHtml.Text = string.Empty;
|
||||
if (this.ChkGetPic.Checked)
|
||||
{
|
||||
pictureBox1.Image = this.ByteArrayToImage(result.ResultByte);
|
||||
RichHtml.Visible = false;
|
||||
pictureBox1.Visible = true;
|
||||
tabControl2.SelectedIndex = 0;
|
||||
AddUrl("", TxtUrl.Text);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.RichHtml.Text = result.Html;
|
||||
if (Manager.Json.IsJson(result.Html))
|
||||
{
|
||||
Te_Format.Document.HighlightingStrategy = HighlightingStrategyFactory.CreateHighlightingStrategy("JSON");
|
||||
Te_Format.Text = Manager.Json.ConvertJsonString(result.Html);
|
||||
AddUrl("", TxtUrl.Text);
|
||||
}
|
||||
else
|
||||
{
|
||||
string[] _format_html = result.Html.Replace("\r", "").Split('\n');
|
||||
string _html = "";
|
||||
for (int i = 0; i < _format_html.Length; i++)
|
||||
{
|
||||
if (_format_html[i].Trim().Length == 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (_html.Length > 0) { _html += "\r\n"; }
|
||||
_html += _format_html[i];
|
||||
}
|
||||
Te_Format.Document.HighlightingStrategy = HighlightingStrategyFactory.CreateHighlightingStrategy("HTML");
|
||||
Te_Format.Text = _html;
|
||||
if (result.StatusCode == System.Net.HttpStatusCode.Redirect || result.StatusCode == System.Net.HttpStatusCode.OK)
|
||||
{
|
||||
string title = "";
|
||||
try
|
||||
{
|
||||
HtmlAgilityPack.HtmlDocument htmlDoc = new HtmlAgilityPack.HtmlDocument();
|
||||
htmlDoc.LoadHtml(result.Html);
|
||||
var anchors = htmlDoc.DocumentNode.SelectNodes("//title");
|
||||
if (anchors != null && anchors.Count > 0)
|
||||
{
|
||||
title = RyWeb.WebDecode.ConvertHtmlInner(anchors[0].InnerText);
|
||||
}
|
||||
}
|
||||
catch { }
|
||||
AddUrl(title, TxtUrl.Text);
|
||||
}
|
||||
}
|
||||
this.RichHtml.Visible = true;
|
||||
this.pictureBox1.Visible = false;
|
||||
}
|
||||
}
|
||||
this.RichCookie.Text = result.Cookie;
|
||||
var timespan = (dt_end - dt).TotalMilliseconds.ToInt();
|
||||
string timespan_str = "";
|
||||
if (timespan < 1000) { timespan_str = timespan + "毫秒"; }
|
||||
else { timespan_str = timespan / 1000 + "秒" + timespan % 1000 + "毫秒"; }
|
||||
this.RichStatus.Text = "StatusCode:" + result.StatusCode.ToString() + "\r\nStatusDescription:" + result.StatusDescription + "\r\n耗时:" + timespan_str;
|
||||
this.RichHeader.Text = "";
|
||||
foreach (string str1 in result.Header.AllKeys)
|
||||
{
|
||||
string text = this.RichHeader.Text;
|
||||
this.RichHeader.Text = text + str1 + ":" + result.Header[str1].ToString() + "\r\n";
|
||||
}
|
||||
if (!ChkNoPreview.Checked)
|
||||
{
|
||||
if (ChkHtmlPreview.Checked)
|
||||
{
|
||||
if (!this.CbbEncoding.Text.Contains("自动"))
|
||||
{
|
||||
extendedWebBrowser1.LoadStrings(RichHtml.Text.Trim(), Encoding.GetEncoding(this.CbbEncoding.Text.Trim()));
|
||||
}
|
||||
else { extendedWebBrowser1.LoadStrings(RichHtml.Text.Trim(), Encoding.UTF8); }
|
||||
//MessageBox.Show(extendedWebBrowser1.Document.Encoding);
|
||||
//extendedWebBrowser1.Document.Encoding = Encoding.UTF8.BodyName;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (RbGet.Checked)
|
||||
{
|
||||
extendedWebBrowser1.Navigate(TxtUrl.Text, null, null, TxtInputHeader.Text);
|
||||
}
|
||||
else
|
||||
{
|
||||
string strData = TxtPost.Text;
|
||||
string strHeaders = "Content-Type: " + CbbContentType.Text + "\r\n" + TxtInputHeader.Text;
|
||||
ASCIIEncoding AE = new ASCIIEncoding();
|
||||
byte[] bytePost = AE.GetBytes(strData);
|
||||
//byte[] byteHeaders = AE.GetBytes(strHeaders);
|
||||
extendedWebBrowser1.Navigate(TxtUrl.Text, null, bytePost, strHeaders);
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
}));
|
||||
}
|
||||
catch (Exception exception)
|
||||
{
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
if (IsExit)
|
||||
{
|
||||
this.RichHtml.Text = "用户中断执行";
|
||||
BtnRunHtml.Text = "执行";
|
||||
IsRunning = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.RichHtml.Text = exception.Message;
|
||||
}
|
||||
Te_Format.Text = "";
|
||||
}));
|
||||
}
|
||||
this.Invoke(new Action(() =>
|
||||
{
|
||||
BtnRunHtml.Text = "执行";
|
||||
IsRunning = false;
|
||||
}));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private Image ByteArrayToImage(byte[] Bytes)
|
||||
{
|
||||
MemoryStream stream = new MemoryStream(Bytes);
|
||||
return Image.FromStream(stream, true);
|
||||
}
|
||||
|
||||
private void TxtUrl_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (e.KeyCode == Keys.Enter)
|
||||
{
|
||||
BtnRunHtml.PerformClick();
|
||||
}
|
||||
else if (e.KeyCode == Keys.Down)
|
||||
{
|
||||
if (table1.Visible)
|
||||
{
|
||||
table1.TableModel.Selections.Clear();
|
||||
table1.TableModel.Selections.AddCells(0, 0, 0, columnModel1.Columns.Count - 1);
|
||||
table1.Focus();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void FrmWebGet_Load(object sender, EventArgs e)
|
||||
{
|
||||
contextMenuStripHighlightText1.AddSeparatorMenu();
|
||||
contextMenuStripHighlightText1.AddMenu("将选中的内容作为Json分析", "").Click += AnalyJson_Click;
|
||||
for (int i = 0; i < this.Controls.Count; i++)
|
||||
{
|
||||
switch (this.Controls[i])
|
||||
{
|
||||
case GroupBox gb:
|
||||
gb.Click += Gb_Click;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void Gb_Click(object sender, EventArgs e)
|
||||
{
|
||||
table1.Visible = false;
|
||||
//RbGet.Focus();
|
||||
switch ((this.DockPanel.FindForm()))
|
||||
{
|
||||
case Form1 frm:
|
||||
frm.HideDownList();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void AnalyJson_Click(object sender, EventArgs e)
|
||||
{
|
||||
ContextMenuStrip menu =(ContextMenuStrip) (((ToolStripMenuItem)sender).Owner);
|
||||
switch(menu.SourceControl)
|
||||
{
|
||||
case ICSharpCode.TextEditor.TextEditorControl rich_txt:
|
||||
var SelectedText= rich_txt.ActiveTextAreaControl.SelectionManager.SelectedText;
|
||||
if (SelectedText == "") { SelectedText = rich_txt.Text; }
|
||||
//if (Manager.Json.IsJson(SelectedText))
|
||||
{
|
||||
FrmJson frm = new FrmJson();
|
||||
frm.Show(this.DockPanel);
|
||||
frm.LoadJson(SelectedText);
|
||||
}
|
||||
break;
|
||||
case RichTextBox rich_txt2:
|
||||
var SelectedText2 = rich_txt2.SelectedText;
|
||||
if (SelectedText2 == "") { SelectedText2 = rich_txt2.Text; }
|
||||
//if (Manager.Json.IsJson(SelectedText2))
|
||||
{
|
||||
FrmJson frm = new FrmJson();
|
||||
frm.Show(this.DockPanel);
|
||||
frm.LoadJson(SelectedText2);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void BtnCtreateCShape_Click(object sender, EventArgs e)
|
||||
{
|
||||
string str = "get";
|
||||
if (RbGet.Checked)
|
||||
{
|
||||
str = "get";
|
||||
}
|
||||
if (RbPost.Checked)
|
||||
{
|
||||
str = "post";
|
||||
}
|
||||
HttpItem item = new HttpItem
|
||||
{
|
||||
URL = TxtUrl.Text.Trim(),
|
||||
Method = str,
|
||||
IsToLower = this.ChkUrlLower.Checked,
|
||||
Cookie = this.TxtCookie.Text.Trim(),
|
||||
Referer = this.CbbReferer.Text.Trim(),
|
||||
Postdata = this.TxtPost.Text.Trim(),
|
||||
Timeout = Convert.ToInt32(this.CbbTimeout.Text.Replace("秒", string.Empty).Trim()) * 0x3e8,
|
||||
ReadWriteTimeout = Convert.ToInt32(this.CbbWriteTimeout.Text.Replace("秒", string.Empty).Trim()) * 0x3e8,
|
||||
UserAgent = this.CbbUserAgent.Text,
|
||||
ContentType = this.CbbContentType.Text,
|
||||
Allowautoredirect = this.ChkJump.Checked,
|
||||
ResultType = ChkGetPic.Checked ? ResultType.Byte : ResultType.String
|
||||
};
|
||||
if (CbbUserAgent.SelectedIndex != -1)
|
||||
{
|
||||
if (CbbUserAgent.SelectedItem is UserAgentInfo)
|
||||
{
|
||||
item.UserAgent = ((UserAgentInfo)CbbUserAgent.SelectedItem).useragent;
|
||||
}
|
||||
}
|
||||
if (!string.IsNullOrEmpty(this.CbbIp.Text.Trim()))
|
||||
{
|
||||
item.ProxyIp = this.CbbIp.Text.Trim();
|
||||
}
|
||||
if (!this.CbbEncoding.Text.Contains("自动"))
|
||||
{
|
||||
item.Encoding = Encoding.GetEncoding(this.CbbEncoding.Text.Trim());
|
||||
}
|
||||
this.RichHtml.Visible = true;
|
||||
this.pictureBox1.Visible = false;
|
||||
//this.SetHttpItem();
|
||||
StringBuilder builder = new StringBuilder();
|
||||
builder.Append(" HttpHelper http = new HttpHelper();\r\n");
|
||||
builder.Append(" HttpItem item = new HttpItem()\r\n");
|
||||
builder.Append(" {\r\n");
|
||||
builder.Append(" URL = \"" + item.URL + "\",//URL 必需项 \r\n");
|
||||
if (!this.CbbEncoding.Text.Trim().Contains("自动"))
|
||||
{
|
||||
builder.Append(" Encoding = System.Text.Encoding.GetEncoding( \"" + this.CbbEncoding.Text.Trim() + "\"),//URL 可选项 默认为Get \r\n");
|
||||
}
|
||||
builder.Append(" Method = \"" + item.Method + "\",//URL 可选项 默认为Get \r\n");
|
||||
builder.Append(" IsToLower = " + item.IsToLower.ToString().ToLower() + ",//得到的HTML代码是否转成小写 可选项默认转小写 \r\n");
|
||||
builder.Append(" Cookie = \"" + item.Cookie + "\",//字符串Cookie 可选项 \r\n");
|
||||
builder.Append(" Referer =\"" + item.Referer + "\",//来源URL 可选项 \r\n");
|
||||
builder.Append(" Postdata = \"" + item.Postdata + "\",//Post数据 可选项GET时不需要写 \r\n");
|
||||
builder.Append(" Timeout = " + item.Timeout + ",//连接超时时间 可选项默认为100000 \r\n");
|
||||
builder.Append(" ReadWriteTimeout = " + item.ReadWriteTimeout + ",//写入Post数据超时时间 可选项默认为30000 \r\n");
|
||||
builder.Append(" UserAgent = \"" + item.UserAgent + "\",//用户的浏览器类型,版本,操作系统 可选项有默认值 \r\n");
|
||||
builder.Append(" ContentType = \"" + item.ContentType + "\",//返回类型 可选项有默认值 \r\n");
|
||||
builder.Append(" Allowautoredirect = " + item.Allowautoredirect.ToString().ToLower() + ",//是否根据301跳转 可选项 \r\n");
|
||||
builder.Append(" //CerPath = \"d:\\123.cer\",//证书绝对路径 可选项不需要证书时可以不写这个参数 \r\n");
|
||||
builder.Append(" //Connectionlimit = 1024,//最大连接数 可选项 默认为1024 \r\n");
|
||||
builder.Append(" ProxyIp = \"" + item.ProxyIp + "\",//代理服务器ID 可选项 不需要代理 时可以不设置这三个参数 \r\n");
|
||||
builder.Append(" //ProxyPwd = \"123456\",//代理服务器密码 可选项 \r\n");
|
||||
builder.Append(" //ProxyUserName = \"administrator\",//代理服务器账户名 可选项 \r\n");
|
||||
builder.Append(" ResultType = " + (ChkGetPic.Checked ? "ResultType.Byte" : "ResultType.String") + "\r\n");
|
||||
builder.Append(" };\r\n");
|
||||
builder.Append("");
|
||||
builder.Append(" HttpResult result = http.GetHtml(item);\r\n");
|
||||
builder.Append(" string html = result.Html;\r\n");
|
||||
builder.Append(" string cookie = result.Cookie;\r\n");
|
||||
builder.Append(" \r\n\r\n");
|
||||
builder.Append(" /// <summary>\r\n");
|
||||
builder.Append(" /// 字节数组生成图片\r\n");
|
||||
builder.Append(" /// </summary>\r\n");
|
||||
builder.Append(" /// <param name=\"Bytes\">字节数组</param>\r\n");
|
||||
builder.Append(" /// <returns>图片</returns>\r\n");
|
||||
builder.Append(" private Image byteArrayToImage(byte[] Bytes)\r\n");
|
||||
builder.Append(" {\r\n");
|
||||
builder.Append(" MemoryStream ms = new MemoryStream(Bytes);\r\n");
|
||||
builder.Append(" return Bitmap.FromStream(ms,true);\r\n");
|
||||
builder.Append(" }\r\n");
|
||||
RichHtml.Text = builder.ToString();
|
||||
Te_Format.Document.HighlightingStrategy = HighlightingStrategyFactory.CreateHighlightingStrategy("C#");
|
||||
Te_Format.Text= builder.ToString();
|
||||
|
||||
}
|
||||
public void AddUrl(string title,string url)
|
||||
{
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
|
||||
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
|
||||
{
|
||||
var _title = title;
|
||||
if(_title == "")
|
||||
{
|
||||
var mode = url.Replace("?","&").GetStr("&a=","");
|
||||
if (mode.IndexOf("&") > 0) { mode = mode.GetStr("", "&"); }
|
||||
if(mode.Length==0)
|
||||
{
|
||||
mode = url.Replace("?", "&").GetStr("&Action=", "");
|
||||
if (mode.IndexOf("&") > 0) { mode = mode.GetStr("", "&"); }
|
||||
}
|
||||
_title = mode;
|
||||
}
|
||||
RyQuickSQL mySQL = new RyQuickSQL("Urls");
|
||||
mySQL.AddField("Name", _title);
|
||||
mySQL.AddField("Url", url);
|
||||
mySQL.AddField("Cookie", TxtCookie.Text);
|
||||
mySQL.AddField("Postdata", TxtPost.Text);
|
||||
mySQL.AddField("Header", TxtInputHeader.Text);
|
||||
mySQL.AddField("Method", RbGet.Checked?"get":"post");
|
||||
mySQL.AddField("Referer", CbbReferer.Text);
|
||||
mySQL.AddField("ContentType", CbbContentType.Text);
|
||||
mySQL.AddField("Encoding", CbbEncoding.Text);
|
||||
DataSet ds = db.ReadData("select * from Urls where Url=@Url", mySQL);
|
||||
if (mydb.HaveData(ds))
|
||||
{
|
||||
DataRow reader = ds.Tables[0].Rows[0];
|
||||
#region 读取信息
|
||||
mySQL.AddFieldCalc("ClickCount", "ClickCount+1");//点击次数
|
||||
mySQL.AddField("editTime", DateTime.Now);
|
||||
db.ExecuteNonQuery(mySQL.GetUpdateSQL() + " where id=" + reader["id"].ToString(), mySQL);
|
||||
#endregion
|
||||
}
|
||||
else
|
||||
{
|
||||
mySQL.AddField("ClickCount",1);
|
||||
mySQL.AddField("editTime", DateTime.Now);
|
||||
mySQL.AddField("addTime", DateTime.Now);
|
||||
db.ExecuteNonQuery(mySQL.GetInsertSQL(),mySQL);
|
||||
}
|
||||
}
|
||||
db.Free();
|
||||
}
|
||||
bool proc_use = false;
|
||||
private void ClickItem(bool run = false)
|
||||
{
|
||||
if (table1.SelectedItems.Length > 0)
|
||||
{
|
||||
table1.Visible = false;
|
||||
Application.DoEvents();
|
||||
proc_use = true;
|
||||
string url = table1.SelectedItems[0].Cells[ColUrl.Index].Text;
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
|
||||
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
|
||||
{
|
||||
db.AddParameter("url", url);
|
||||
DataSet ds = db.ReadData("select * from Urls where Url=@url", db.GetParameter());
|
||||
if(mydb.HaveData(ds))
|
||||
{
|
||||
DataRow row = ds.Tables[0].Rows[0];
|
||||
SetValueByRich(TxtCookie,"Cookie");
|
||||
SetValueByRich(TxtPost, "Postdata");
|
||||
SetValueByRich(TxtInputHeader, "Header");
|
||||
SetValue2(CbbReferer, "Referer");
|
||||
SetValue2(CbbContentType, "ContentType");
|
||||
SetValue2(CbbEncoding, "Encoding");
|
||||
if (row["Method"].ToString().Length>0)
|
||||
{
|
||||
if(row["Method"].ToString()=="post")
|
||||
{
|
||||
RbPost.Checked = true;
|
||||
}
|
||||
else { RbGet.Checked = true; }
|
||||
}
|
||||
void SetValueByRich(ryControls.Controls.RichTextBox2 txt, string Field)
|
||||
{
|
||||
if (row[Field].ToString().Length > 0) { txt.Text = row[Field].ToString(); }
|
||||
}
|
||||
void SetValue2(ryControls.RyComboBox cbb, string Field)
|
||||
{
|
||||
if (row[Field].ToString().Length>0) { cbb.Text = row[Field].ToString(); }
|
||||
}
|
||||
}
|
||||
db.Free();
|
||||
}
|
||||
TxtUrl.Text = url;
|
||||
if (run)
|
||||
{ BtnRunHtml.PerformClick(); }
|
||||
proc_use = false;
|
||||
}
|
||||
else { table1.Visible = false; }
|
||||
}
|
||||
private void Table1_KeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (e.KeyCode == Keys.Up)
|
||||
{
|
||||
if (table1.SelectedItems.Length > 0 && table1.SelectedItems[0].Index == 0)
|
||||
{
|
||||
table1.TableModel.Selections.Clear();
|
||||
TxtUrl.Select();
|
||||
//rySearch1.Select();
|
||||
}
|
||||
}
|
||||
else if (e.KeyCode == Keys.Enter)
|
||||
{
|
||||
ClickItem();
|
||||
}
|
||||
}
|
||||
|
||||
private void TxtUrl_TextChanged2(object sender, EventArgs e)
|
||||
{
|
||||
if (proc_use) { return; }
|
||||
string sql_where = "";
|
||||
if (TxtUrl.Text != "") { sql_where = " where (Name like @SearchText or Url like @SearchText)"; }
|
||||
#region 重新载入数据
|
||||
tableModel1.Rows.Clear();
|
||||
tableModel1.Selections.Clear();
|
||||
DataProvider mydb = new DataProvider();
|
||||
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
|
||||
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
|
||||
{
|
||||
db.AddParameter("SearchText", "%" + TxtUrl.Text + "%");
|
||||
DataSet ds = db.ReadData("select * from Urls" + sql_where+ " order by ClickCount desc,editTime desc", db.GetParameter());
|
||||
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
|
||||
{
|
||||
DataRow row = ds.Tables[0].Rows[i];
|
||||
DateTime editTime = row["editTime"].ToDateTime();
|
||||
XPTable.Models.Row itemList = new XPTable.Models.Row()
|
||||
{
|
||||
Tag = row["id"].ToString()
|
||||
};
|
||||
//需要修改此处
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(row["Url"].ToString()));//示例
|
||||
itemList.Cells.Add(new XPTable.Models.Cell(row["Name"].ToString()));
|
||||
if (editTime >= DateTime.Now.AddMinutes(-10))
|
||||
{
|
||||
tableModel1.Rows.Insert(0,itemList);
|
||||
}
|
||||
else
|
||||
{
|
||||
tableModel1.Rows.Add(itemList);
|
||||
}
|
||||
}
|
||||
db.Free();
|
||||
table1.Visible = tableModel1.Rows.Count != 0;
|
||||
table1.BringToFront();
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
|
||||
private void FrmWebGet_Click(object sender, EventArgs e)
|
||||
{
|
||||
table1.Visible = false;
|
||||
}
|
||||
|
||||
private void Table1_CellLostFocus(object sender, XPTable.Events.CellFocusEventArgs e)
|
||||
{
|
||||
if (e.Row == -1) { table1.Visible = false; }
|
||||
}
|
||||
|
||||
private void Table1_Leave(object sender, EventArgs e)
|
||||
{
|
||||
if(!TxtUrl.Focused)
|
||||
{
|
||||
table1.Visible = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void TxtUrl_Leave(object sender, EventArgs e)
|
||||
{
|
||||
if (!table1.Focused)
|
||||
{
|
||||
table1.Visible = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void timer1_Tick(object sender, EventArgs e)
|
||||
{
|
||||
}
|
||||
|
||||
private void table1_MouseClick(object sender, MouseEventArgs e)
|
||||
{
|
||||
if (e.Button == MouseButtons.Left)
|
||||
{
|
||||
ClickItem();
|
||||
}
|
||||
}
|
||||
|
||||
private void TxtPost_DoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
ryControls.Controls.RichTextBox2 txt = (ryControls.Controls.RichTextBox2)sender;
|
||||
开发辅助工具.Controls.FrmText frm = new Controls.FrmText
|
||||
{
|
||||
Icon = Icon
|
||||
};
|
||||
frm.richTextBox1.Text = txt.Text;
|
||||
if (frm.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
txt.Text = frm.richTextBox1.Text;
|
||||
}
|
||||
}
|
||||
|
||||
private void TxtPost_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (TxtPost.Text != "") { tabPage1.Text = "Post数据(有数据)"; }
|
||||
else { tabPage1.Text = "Post数据"; }
|
||||
}
|
||||
|
||||
private void TxtCookie_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (TxtCookie.Text != "") { tabPage2.Text = "Cookie(有数据)"; }
|
||||
else { tabPage2.Text = "Cookie"; }
|
||||
}
|
||||
|
||||
private void TxtInputHeader_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (TxtInputHeader.Text != "") { tabPage7.Text = "Header(有数据)"; }
|
||||
else { tabPage7.Text = "Header"; }
|
||||
}
|
||||
|
||||
private void ChkNoPreview_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
ChkHtmlPreview.Enabled = !ChkNoPreview.Checked;
|
||||
}
|
||||
}
|
||||
public class UserAgentInfo
|
||||
{
|
||||
public string name = "";
|
||||
public string useragent = "";
|
||||
public override string ToString()
|
||||
{
|
||||
return name;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,215 @@
|
||||
<?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>
|
||||
<metadata name="contextMenuStripRichText1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>627, 25</value>
|
||||
</metadata>
|
||||
<metadata name="contextMenuStripHighlightText1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>33, 18</value>
|
||||
</metadata>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>842, 25</value>
|
||||
</metadata>
|
||||
<metadata name="columnModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>269, 25</value>
|
||||
</metadata>
|
||||
<metadata name="tableModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>410, 25</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAAAAAAAAAAAAAAAAAAAA
|
||||
AACBemwQgXpsiIF6bO+Bemz/gXps+4F6bPqBemz6gXps+oF6bPqBemz6gXps+oF6bPqBemz6gXps+oF6
|
||||
bPqBemz6gXps+oF6bPqBemz6gXps+oF6bPqBemz6gXps/4F6bPmBemyqgXpsIYF6bACBemwAAAAAAAAA
|
||||
AAAAAAAAAAAAAIF6bImBemz8gXps14F6bHmBemxTgXpsUIF6bFCBemxQgXpsUIF6bFCBemxQgXpsUIF6
|
||||
bFCBemxQgXpsUIF6bFCBemxQgXpsUIF6bFCBemxQgXpsUIF6bFCBemxpgXpswIF6bP+BemyogXpsCoF6
|
||||
bAAAAAAAAAAAAAAAAAAAAAAAgXps74F6bNeBemwvgXpsAIF6bACBemwAgXpsAIF6bACBemwAgXpsAIF6
|
||||
bACBemwAgXpsAIF6bACBemwAgXpsAIF6bACBemwAgXpsAIF6bACBemwAgXpsAIF6bACBemwSgXpssIF6
|
||||
bPKBemwygXpsAIF6bACBemwAgXpsAIF6bACBemz/gXpseIF6bACBemwAgXpsAIF6bACBemwXgXpsNIF6
|
||||
bDeBemw2gXpsNoF6bDaBemw2gXpsNoF6bDaBemw2gXpsNoF6bDaBemw2gXpsNoF6bDaBemw2gXpsN4F6
|
||||
bDKBemxzgXps9YF6bG6BemwzgXpsN4F6bCiBemwFgXpsAIF6bPuBemxTgXpsAIF6bACBemwAgXpsVIF6
|
||||
bM+BemzwgXps8oF6bPGBemzxgXps8oF6bPKBemzxgXps8YF6bPKBemzxgXps8YF6bPKBemzygXps8oF6
|
||||
bPKBemzxgXps8oF6bPOBemz+gXps9oF6bPKBemzygXps54F6bJiBemwagXps+oF6bFCBemwAgXpsAIF6
|
||||
bDKBemzlgXps/4F6bP6Bemz1gXps/YF6bP+Bemz2gXps+oF6bP+Bemz+gXps9YF6bP6Bemz/gXps+oF6
|
||||
bPiBemz8gXps9oF6bP2Bemz1gXps/oF6bPWBemzxgXps8YF6bPKBemz+gXps/4F6bKGBemz6gXpsUYF6
|
||||
bACBemwAgXpsdIF6bP+Bemz/gXps5IF6bFyBemzagXps/oF6bHOBemysgXps/4F6bOCBemxcgXps3oF6
|
||||
bP+BemyngXpsiIF6bKiBemxcgXpsxYF6bGiBemzqgXpsbYF6bEGBemxMgXpsWoF6bN+Bemz/gXps84F6
|
||||
bPqBemxRgXpsAIF6bACBemyFgXps/4F6bP+BemzcgXpsLoF6bNOBemz/gXpsTIF6bJSBemz/gXps2IF6
|
||||
bC2BemzUgXps/4F6bI6BemxhgXpsYoF6bBGBemyWgXpsP4F6bOOBemxEgXpsgoF6bNWBemzVgXps94F6
|
||||
bP+Bemz/gXps+oF6bFGBemwAgXpsAIF6bISBemz/gXps/4F6bN6BemwngXpsboF6bIeBemwpgXpsmIF6
|
||||
bP+BemzYgXpsMIF6bNWBemz/gXpskIF6bFCBemxJgXpsP4F6bGWBemxCgXps5IF6bEaBemyjgXps/4F6
|
||||
bP+Bemz/gXps/4F6bP+Bemz6gXpsUYF6bACBemwAgXpshIF6bP+Bemz/gXps3oF6bCeBemxqgXpsgoF6
|
||||
bCeBemyYgXps/4F6bNyBemwxgXps2IF6bP+BemySgXpsK4F6bFKBemyXgXpsMYF6bD2BemzkgXpsRoF6
|
||||
bKGBemz/gXps/4F6bP+Bemz/gXps/4F6bPqBemxRgXpsAIF6bACBemyFgXps/4F6bP+BemzcgXpsLYF6
|
||||
bNKBemz/gXpsS4F6bJOBemzMgXpsi4F6bByBemyJgXpsyoF6bJCBemwAgXpsd4F6bNeBemwZgXpsLYF6
|
||||
bOSBemxDgXpsn4F6bP+Bemz/gXps/4F6bP+Bemz/gXps+oF6bFGBemwAgXpsAIF6bIKBemz/gXps/4F6
|
||||
bOqBemx8gXps4YF6bP6BemyPgXpsvIF6bJyBemxegXpsX4F6bF6BemyYgXpsuYF6bF2BemzEgXps+IF6
|
||||
bH2Bemx6gXps74F6bJKBemzIgXps/4F6bP+Bemz/gXps/4F6bP6Bemz6gXpsUYF6bACBemwAgXpsXIF6
|
||||
bP2Bemz/gXps/4F6bP+Bemz/gXps/4F6bP+Bemz/gXps/4F6bP6Bemz+gXps/oF6bP6Bemz/gXps/4F6
|
||||
bP+Bemz/gXps/4F6bP+Bemz/gXps/4F6bP+Bemz/gXps/4F6bP+Bemz/gXps3IF6bPqBemxRgXpsAIF6
|
||||
bACBemwUgXpss4F6bP+Bemz/gXps/4F6bP+Bemz/gXps/4F6bP+Bemz/gXps/4F6bP+Bemz/gXps/4F6
|
||||
bP+Bemz/gXps/4F6bP+Bemz/gXps/4F6bP+Bemz/gXps/4F6bP+Bemz/gXps/4F6bOuBemxhgXps+oF6
|
||||
bFGBemwAgXpsAIF6bACBemwZgXpsdoF6bKmBemywgXpssYF6bLGBemyxgXpssYF6bLGBemyxgXpssYF6
|
||||
bLGBemyxgXpssYF6bLGBemyxgXpssYF6bLGBemywgXpsvIF6bPWBemzHgXpssIF6bLCBemyYgXpsRIF6
|
||||
bAKBemz6gXpsUYF6bACBemwAgXpsAIF6bACBemwAgXpsDYF6bAuBemwEgXpsBIF6bASBemwEgXpsBIF6
|
||||
bASBemwEgXpsBIF6bASBemwEgXpsBIF6bASBemwEgXpsBIF6bAKBemwogXps34F6bEuBemwAgXpsBIF6
|
||||
bACBemwAgXpsAIF6bPqBemxRgXpsAAAAAACBemwAgXpsAIF6bACBemxmgXpsW4F6bACBemwAgXpsAIF6
|
||||
bACBemwAgXpsAIF6bACBemwAgXpsAIF6bACBemwAgXpsAIF6bACBemwAgXpsAIF6bCSBemzegXpsSIF6
|
||||
bACBemwAgXpsAIF6bACBemwAgXps+oF6bFGBemwAgXpsAIF6bACBemwAgXpsGIF6bG2BemyHgXpsAIF6
|
||||
bBqBemwKgXpsAIF6bACBemwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACBemwAgXpsJYF6
|
||||
bN6BemxIgXpsAAAAAAAAAAAAAAAAAAAAAACBemz6gXpsUYF6bACBemwAgXpsA4F6bGCBemykgXpsWYF6
|
||||
bJuBemwAgXpsb4F6bJmBemwWgXpsAIF6bACBemwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIF6
|
||||
bACBemwlgXps3oF6bEiBemwAAAAAAAAAAAAAAAAAAAAAAIF6bPqBemxRgXpsAIF6bA2BemyCgXps+YF6
|
||||
bLqBemw9gXpsq4F6bAaBemxrgXps/4F6bLuBemwtgXpsAIF6bACBemwAgXpsAIF6bACBemwAgXpsAIF6
|
||||
bACBemwAgXpsAIF6bCSBemzegXpsSIF6bAAAAAAAAAAAAAAAAAAAAAAAgXps+oF6bE+BemwagXpsqIF6
|
||||
bP6BemzAgXpsNoF6bB+BemyygXpsF4F6bBOBemyKgXps9oF6bNmBemxKgXpsAYF6bACBemwAgXpsCIF6
|
||||
bBCBemwQgXpsEIF6bBCBemwOgXpsMoF6bOCBemxIgXpsAAAAAAAAAAAAAAAAAAAAAACBemz6gXpsTYF6
|
||||
bHeBemz8gXpsjoF6bBWBemwAgXpsD4F6bLCBemwqgXpsAIF6bAOBemxTgXps4YF6bMqBemwOgXpsBoF6
|
||||
bGCBemy7gXps0YF6bM+BemzOgXpszoF6bMyBemzUgXps9YF6bEiBemwAAAAAAAAAAAAAAAAAAAAAAIF6
|
||||
bPqBemxNgXpsfIF6bPqBemx2gXpsCoF6bACBemwFgXpspIF6bEGBemwAgXpsAIF6bECBemzZgXpsz4F6
|
||||
bA+BemxpgXps+oF6bOmBemyVgXpsboF6bGyBemxpgXpskoF6bPqBemzWgXpsJoF6bAAAAAAAAAAAAAAA
|
||||
AAAAAAAAgXps+oF6bE+BemwmgXpsvIF6bPyBemyrgXpsKoF6bACBemyRgXpsWoF6bAqBemx2gXps7YF6
|
||||
bOWBemxZgXpsEoF6bM2BemzjgXpsQIF6bACBemwAgXpsAIF6bBuBemy8gXps4IF6bECBemwAgXpsAAAA
|
||||
AAAAAAAAAAAAAAAAAACBemz6gXpsUYF6bACBemwXgXpsmIF6bP+Bemy2gXpsBYF6bHiBemxygXpsYoF6
|
||||
bP+BemzKgXpsO4F6bACBemwegXps4oF6bIKBemwAgXpsAIF6bACBemwagXpst4F6bOqBemxMgXpsAIF6
|
||||
bACBemwAAAAAAAAAAAAAAAAAAAAAAIF6bPqBemxRgXpsAIF6bACBemwIgXpsdYF6bLOBemwJgXpsXYF6
|
||||
bIyBemxxgXpsqYF6bCCBemwAgXpsAIF6bB+BemzdgXpsVYF6bACBemwAgXpsFYF6bK6BemzvgXpsWYF6
|
||||
bACBemwAgXpsAAAAAAAAAAAAAAAAAAAAAAAAAAAAgXps+oF6bFCBemwAgXpsAIF6bACBemwCgXpsKYF6
|
||||
bAOBemxEgXpso4F6bCWBemwPgXpsAIF6bACBemwAgXpsH4F6bNyBemxRgXpsAIF6bBCBemykgXps9IF6
|
||||
bGaBemwAgXpsAIF6bAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACBemz7gXpsU4F6bACBemwAgXpsAIF6
|
||||
bACBemwAgXpsAIF6bCuBemymgXpsDIF6bACBemwAgXpsAIF6bACBemwfgXps3IF6bFCBemwIgXpsmoF6
|
||||
bPeBemx0gXpsAoF6bACBemwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIF6bP+Bemx4gXpsAIF6
|
||||
bACBemwAAAAAAAAAAACBemwAgXpsB4F6bCaBemwFgXpsAAAAAAAAAAAAgXpsAIF6bB+BemzbgXpsW4F6
|
||||
bIuBemz5gXpsgYF6bAWBemwAgXpsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgXps74F6
|
||||
bNeBemwvgXpsAIF6bACBemwAgXpsAIF6bACBemwAgXpsAIF6bACBemwAgXpsAIF6bACBemwAgXpsG4F6
|
||||
bNyBemzKgXps9oF6bI+BemwIgXpsAIF6bAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AACBemyJgXps/IF6bNeBemx6gXpsU4F6bFCBemxQgXpsUIF6bFCBemxQgXpsUIF6bFCBemxQgXpsUIF6
|
||||
bE6BemxlgXps6oF6bP+BemybgXpsDYF6bACBemwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAIF6bBCBemyIgXps74F6bP+Bemz7gXps+oF6bPqBemz6gXps+oF6bPqBemz6gXps+oF6
|
||||
bPqBemz6gXps+oF6bPuBemz/gXpsuIF6bBaBemwAgXpsAIF6bAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAADwAAAA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAf4PAAD+DwAAAA8AAAAPAAAADwAAAA8AAAAPAAAADwAA
|
||||
AB8AAAA/AAAAfwYMAP8AAAH/AAAD/wAAA/8=
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>537, 25</value>
|
||||
</metadata>
|
||||
</root>
|
||||
Generated
+198
@@ -0,0 +1,198 @@
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
partial class FrmXpath
|
||||
{
|
||||
/// <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.components = new System.ComponentModel.Container();
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FrmXpath));
|
||||
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
|
||||
this.panelEx1 = new ryControls.PanelEx();
|
||||
this.textEditorControl1 = new ICSharpCode.TextEditor.TextEditorControl();
|
||||
this.contextMenuStripHighlightText1 = new ryProcessManager.hezuo.ContextMenuStripHighlightText();
|
||||
this.RySearchXpath = new ryControls.rySearch();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.CbbXMLType = new ryControls.RyComboBox();
|
||||
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
|
||||
this.TxtXML = new ryControls.Controls.RichTextBox2();
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
|
||||
this.splitContainer1.Panel1.SuspendLayout();
|
||||
this.splitContainer1.Panel2.SuspendLayout();
|
||||
this.splitContainer1.SuspendLayout();
|
||||
this.panelEx1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// splitContainer1
|
||||
//
|
||||
this.splitContainer1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.splitContainer1.Location = new System.Drawing.Point(10, 33);
|
||||
this.splitContainer1.Name = "splitContainer1";
|
||||
this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
|
||||
//
|
||||
// splitContainer1.Panel1
|
||||
//
|
||||
this.splitContainer1.Panel1.Controls.Add(this.TxtXML);
|
||||
//
|
||||
// splitContainer1.Panel2
|
||||
//
|
||||
this.splitContainer1.Panel2.Controls.Add(this.panelEx1);
|
||||
this.splitContainer1.Size = new System.Drawing.Size(875, 475);
|
||||
this.splitContainer1.SplitterDistance = 145;
|
||||
this.splitContainer1.SplitterWidth = 2;
|
||||
this.splitContainer1.TabIndex = 13;
|
||||
//
|
||||
// panelEx1
|
||||
//
|
||||
this.panelEx1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.panelEx1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(213)))), ((int)(((byte)(216)))), ((int)(((byte)(223)))));
|
||||
this.panelEx1.Controls.Add(this.textEditorControl1);
|
||||
this.panelEx1.Location = new System.Drawing.Point(2, 3);
|
||||
this.panelEx1.Name = "panelEx1";
|
||||
this.panelEx1.Padding = new System.Windows.Forms.Padding(2);
|
||||
this.panelEx1.RoundeStyle = ryControls.RoundStyle.None;
|
||||
this.panelEx1.Size = new System.Drawing.Size(869, 326);
|
||||
this.panelEx1.TabIndex = 8;
|
||||
this.panelEx1.TileBackColor = System.Drawing.Color.White;
|
||||
//
|
||||
// textEditorControl1
|
||||
//
|
||||
this.textEditorControl1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.textEditorControl1.ContextMenuStrip = this.contextMenuStripHighlightText1;
|
||||
this.textEditorControl1.IsReadOnly = false;
|
||||
this.textEditorControl1.Location = new System.Drawing.Point(5, 5);
|
||||
this.textEditorControl1.Name = "textEditorControl1";
|
||||
this.textEditorControl1.Size = new System.Drawing.Size(859, 316);
|
||||
this.textEditorControl1.TabIndex = 5;
|
||||
//
|
||||
// contextMenuStripHighlightText1
|
||||
//
|
||||
this.contextMenuStripHighlightText1.Name = "contextMenuStripHighlightText1";
|
||||
this.contextMenuStripHighlightText1.Size = new System.Drawing.Size(101, 186);
|
||||
//
|
||||
// RySearchXpath
|
||||
//
|
||||
this.RySearchXpath.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.RySearchXpath.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
|
||||
this.RySearchXpath.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
|
||||
this.RySearchXpath.EmptyText = "";
|
||||
this.RySearchXpath.Location = new System.Drawing.Point(179, 3);
|
||||
this.RySearchXpath.Name = "RySearchXpath";
|
||||
this.RySearchXpath.Size = new System.Drawing.Size(707, 25);
|
||||
this.RySearchXpath.TabIndex = 12;
|
||||
this.RySearchXpath.OnSearch += new System.EventHandler(this.RySearchXpath_OnSearch);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(102, 8);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(71, 12);
|
||||
this.label1.TabIndex = 11;
|
||||
this.label1.Text = "Xpath表达式";
|
||||
//
|
||||
// CbbXMLType
|
||||
//
|
||||
this.CbbXMLType.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
|
||||
this.CbbXMLType.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.CbbXMLType.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.CbbXMLType.Font = new System.Drawing.Font("宋体", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.CbbXMLType.FormattingEnabled = true;
|
||||
this.CbbXMLType.Items.AddRange(new object[] {
|
||||
"XML内容",
|
||||
"Html内容"});
|
||||
this.CbbXMLType.Location = new System.Drawing.Point(11, 3);
|
||||
this.CbbXMLType.Name = "CbbXMLType";
|
||||
this.CbbXMLType.Size = new System.Drawing.Size(85, 24);
|
||||
this.CbbXMLType.TabIndex = 10;
|
||||
//
|
||||
// menuRight1
|
||||
//
|
||||
this.menuRight1.Name = "menuRight1";
|
||||
this.menuRight1.Size = new System.Drawing.Size(173, 48);
|
||||
this.menuRight1.SourceContent = this;
|
||||
//
|
||||
// TxtXML
|
||||
//
|
||||
this.TxtXML.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
| System.Windows.Forms.AnchorStyles.Left)
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.TxtXML.BorderStyle = System.Windows.Forms.BorderStyle.None;
|
||||
this.TxtXML.DetectUrls = false;
|
||||
this.TxtXML.EmptyText = "待匹配的XML或HTML内容";
|
||||
this.TxtXML.ForeColor = System.Drawing.Color.Black;
|
||||
this.TxtXML.Location = new System.Drawing.Point(3, 3);
|
||||
this.TxtXML.Name = "TxtXML";
|
||||
this.TxtXML.OnlyInputText = true;
|
||||
this.TxtXML.Size = new System.Drawing.Size(868, 139);
|
||||
this.TxtXML.TabIndex = 32;
|
||||
this.TxtXML.Text = "";
|
||||
this.TxtXML.DoubleClick += new System.EventHandler(this.TxtXML_DoubleClick);
|
||||
//
|
||||
// FrmXpath
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(894, 509);
|
||||
this.Controls.Add(this.splitContainer1);
|
||||
this.Controls.Add(this.RySearchXpath);
|
||||
this.Controls.Add(this.label1);
|
||||
this.Controls.Add(this.CbbXMLType);
|
||||
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
|
||||
this.Name = "FrmXpath";
|
||||
this.TabPageContextMenuStrip = this.menuRight1;
|
||||
this.Text = "Xpath测试工具";
|
||||
this.Load += new System.EventHandler(this.FrmXpath_Load);
|
||||
this.splitContainer1.Panel1.ResumeLayout(false);
|
||||
this.splitContainer1.Panel2.ResumeLayout(false);
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();
|
||||
this.splitContainer1.ResumeLayout(false);
|
||||
this.panelEx1.ResumeLayout(false);
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.SplitContainer splitContainer1;
|
||||
private ryControls.PanelEx panelEx1;
|
||||
private ICSharpCode.TextEditor.TextEditorControl textEditorControl1;
|
||||
private ryControls.rySearch RySearchXpath;
|
||||
private System.Windows.Forms.Label label1;
|
||||
private ryControls.RyComboBox CbbXMLType;
|
||||
private ryProcessManager.hezuo.ContextMenuStripHighlightText contextMenuStripHighlightText1;
|
||||
private ryPaiban.Model.MenuRight menuRight1;
|
||||
private ryControls.Controls.RichTextBox2 TxtXML;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
using HtmlAgilityPack;
|
||||
using ICSharpCode.TextEditor.Document;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using WeifenLuo.WinFormsUI.Docking;
|
||||
|
||||
namespace 开发辅助工具.Tools
|
||||
{
|
||||
public partial class FrmXpath : DockContent
|
||||
{
|
||||
public FrmXpath()
|
||||
{
|
||||
InitializeComponent();
|
||||
CbbXMLType.SelectedIndex = 0;
|
||||
textEditorControl1.IsReadOnly = true;
|
||||
}
|
||||
|
||||
private void RySearchXpath_OnSearch(object sender, EventArgs e)
|
||||
{
|
||||
string text = "";
|
||||
string format = "XML";
|
||||
try
|
||||
{
|
||||
if (CbbXMLType.SelectedIndex == 0)
|
||||
{
|
||||
format = "XML";
|
||||
System.Xml.XmlDocument xml = new System.Xml.XmlDocument();
|
||||
xml.LoadXml(TxtXML.Text);
|
||||
var node = xml.SelectNodes(RySearchXpath.Text);
|
||||
if (node != null)
|
||||
{
|
||||
for (int i = 0; i < node.Count; i++)
|
||||
{
|
||||
if (text != "") { text += "\r\n\r\n"; }
|
||||
text += node[i].OuterXml;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (CbbXMLType.SelectedIndex == 1)
|
||||
{
|
||||
format = "HTML";
|
||||
HtmlAgilityPack.HtmlDocument htmlDoc = new HtmlAgilityPack.HtmlDocument();
|
||||
htmlDoc.LoadHtml(TxtXML.Text);
|
||||
HtmlNodeCollection anchors = htmlDoc.DocumentNode.SelectNodes(RySearchXpath.Text);
|
||||
if (anchors != null)
|
||||
{
|
||||
for (int i = 0; i < anchors.Count; i++)
|
||||
{
|
||||
if (text != "") { text += "\r\n\r\n"; }
|
||||
text += anchors[i].OuterHtml;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.Message, "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
}
|
||||
textEditorControl1.Document.HighlightingStrategy = HighlightingStrategyFactory.CreateHighlightingStrategy(format);
|
||||
textEditorControl1.Text = text;
|
||||
}
|
||||
|
||||
private void FrmXpath_Load(object sender, EventArgs e)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void TxtXML_DoubleClick(object sender, EventArgs e)
|
||||
{
|
||||
ryControls.Controls.RichTextBox2 txt = (ryControls.Controls.RichTextBox2)sender;
|
||||
开发辅助工具.Controls.FrmText frm = new Controls.FrmText
|
||||
{
|
||||
Icon = Icon
|
||||
};
|
||||
frm.richTextBox1.Text = txt.Text;
|
||||
if (frm.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
txt.Text = frm.richTextBox1.Text;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,203 @@
|
||||
<?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>
|
||||
<metadata name="contextMenuStripHighlightText1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>262, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAAK8bAACvGwAAAAAAAAAA
|
||||
AAAAAAAAARYZAAgdIAABFRgAARUYAAEVGAABFRgAABQXAAEWGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAARYZAAAVGAABFRgAARUYAAEVGAABFRgAARUYAAEVGAABFRgAARUYAAUZ
|
||||
HAABFhkAAAAAAAAAAAASIiUABRkcAAAVGA4AFRgbABUYGwAVGA0DFxoABRgbAAUZHAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFGBsAAxcaAAAVGA4AFRgeABUYHgAVGB0AFRgdABUYHQAV
|
||||
GB0AFRgPBhkcAB8rLgAAAAAAAAAAAAMXGgADFxoUAhcasQIWGd4CFhneAhcasAMXGhoEGBsABxodAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABxseAAQYGwADFxoWAhcargIWGeICFhngAhYZ3wIW
|
||||
Gd8CFhneAhYZ4AIXGrIDFxoUAxcaAAAAAAAAAAAABBgbAAQYGxIFGRzEBRkc/wUZHP8FGRz/BRkclAYa
|
||||
HQUHGx4ACx0gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAseIAAGGh0AAA8KAAUZHH8FGRz/BRkc/wUZ
|
||||
HP8FGRz/BRkc/wUZHP8FGRz/BRkcxwQYGxMEGBsAAAAAAAAAAAAAERQABxseAAcbHkIIGx7qCBwe/wgb
|
||||
Hv8IHB72CRwfXwodIAAJHB8ADiAjAAAAAAAAAAAAAAAAAAAAAAAAAAAADiAjAAodIAAJHB88CBwe6Qgb
|
||||
Hv8IHB7/CBwe/wgcHv8IHB7/CBwe/wgbHvMIGx5PCBseAAAAAwAAAAAAAAAAAAYZHAAJHR8ACh0gAAse
|
||||
IHQMHiH8DB4h/wweIf8MHiHeDB8iMQ4gIgARIiUAEiMmAAAAAAAAAAAAAAAAABEiJQANHyIADR8iDwwe
|
||||
IbcMHiH/DB4h/wweIf8MHiH/DB4h/wweIf8MHiH/Cx4hlgodIAQKHR8ABhodAAAAAAAAAAAAAAAAAAkc
|
||||
HwANHyIADiAiDA4gI6gPISP/DyEj/w8hI/8PISS2ECEkEREiJQAUJScAAAAAAAAAAAAVJSgADyEkABAh
|
||||
JAAPISRxDyEj/Q8hI/8PISP/DyEj/w8hI/8PISP/DyEj/w8gI9QOICMiDR8iAAodHwAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAA0fIgAQHyAAER8fJhIhI9ESIyX/EiMm/xIjJv4TJCaDFCQnAhQiIgAaqf4AGqf6ABqn
|
||||
+gAXcKEAEx4dMBIjJuESIyb/EiMm/xIjJv8SIyb/EiMm/xIjJv8SIyb4ESMlXREiJQAlMjUADB4hAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAADyEkABqm+QAbwP8PF1d5gBYvOPsVJSf/FSYp/xUmKfAWJilPFywyAByj
|
||||
+QEap/onGqf7NRqj8zcWQVWuFScq/xUmKP8VJin/FSYp/xUmKf8VJin/FSYp/xUmKKQUJScIFCQnABAh
|
||||
JAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGaj6ABmo+0kZqfvpGXyy/hkvNf8ZKCr/GSgr/xko
|
||||
K9IaHRkiGa7/NRmo+tsZqPryGar98hl7sP0ZKzD/GSgr/xkoK/8ZKCv/GSgr/xkoK/8ZKCveGCgqLBcn
|
||||
KgATJCcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYqvoAGKn6Cxis/KEYqvn/GmaM/xwr
|
||||
Lf8cKy3/HCot/xw1Pa4YqPS4GKz7/xis/P8Yo+7/G09n/xwqK/8cKy7/HCsu/xwrLv8cKy7/HCsu+xsq
|
||||
LWsbKi0AHCsuABYmKQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABiq+gAXrfsAF677IRaw
|
||||
/c4Xpev/HVBm/x8sLf8fLC7/G2SF/xat+P8Wr/v/FrD8/xt0n/8fLjL/Hy0w/x8uMP8fLjD/Hy4w/x8u
|
||||
MP8fLTCxHi0vDR0sLwAaKSwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF6z7ABmo
|
||||
+wAWsPsAFbH7SRW0/u0Xl9H/IT5I/yBGVP8WoeH/FbP9/xW0/v8YmNP/IT5I/yMvMf8iMDP/IzAz/yIw
|
||||
M/8jMDP/IjAz5iIwMjchLzEAHSwuAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAFrD7ABSz/AATtP0BFLX8fBO2/f0ahbL/GYq5/xO3/v8Ttv3/FLDz/yBddf8mMTP/JjM1/yYz
|
||||
Nf8mMzX/JjM1/yYzNf4lMjV5JTI2ACUyNAAgLjEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAFLP8ABO2/AASt/wOErn8sBK4+/8SuPv/Ern8/xK6/f8bhK3/KTg7/yk1
|
||||
N/8pNTj/KTU4/yk1OP8pNTj/KTU4vig0NxMnNDYAJDEzAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOwv0AD7/9AA7C/wEQvP2VELz9/xC8/f8Qvf7/FKzl/yhM
|
||||
WP8tNjj/LDg6/yw4Ov8sODr/LDg6/yw4OuwsNzpDKzc5ACYzNgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAzG/QAOwf0AD8D9Rw/A/e8Pv/3/D7/9/xC8
|
||||
+f8RuPL/JWN4/zA5Ov8wOj3/MDo9/zA6Pf8wOj3/Lzo9lCEwMgAtODsAKjY4AAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALyP4ADcX9AA3E/RUNw/3CDsP9/w3E
|
||||
//8TseX/JHaR/xG37P8Trd3/LVBb/zM7Pf8zPT//Mz0//zM9P/8zPUC5ND5AFDU/QQA4QUMAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACcz+AAvI/gAQxPoADMf+fwzG
|
||||
/v8Mxv7/DcX8/yR6lP83PkD/JHqU/wzF/f8amL3/NEVK/zY/Qf82QEL/NkBC/zZAQv83QEKIN0FDAzhB
|
||||
RAA8REYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ0f8ADMv+AArK
|
||||
/jsLyv7pC8n+/wrL//8Yo8n/N0pP/zpBQ/84R0z/HJm9/wvJ/f8jgpzxOUFDlDlCROs6QkT/OUJE/zpC
|
||||
RPI6QkVUO0NGADI7PgA/R0kAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABDQ
|
||||
/wAQ0P8RDM7+uAvO//8Kz///DsHu/zFkcf89Q0T/PUVH/z1DRf82WGH/E7Td/wrK+/ENw/FIPUJDfT1E
|
||||
R/49REf/PURH/z1FR9Y+RUgpP0ZIAEJJSwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAFtP/ABPS/0Qr1//dMs3x9zHI7P8vip//P0dK/0BHSf9AR0n/QEdJ/0FGR/8uc4TqCc794AfS
|
||||
/5gyZXIVQEdJskBHSf9AR0n/QEdJ/0BHSqtBSEoNQklLAEVLTgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAH2f8AAPr/CDCOo0U/YGjjP11k/0JOUv9DSUv/Q0pM/0NKTP9DSkz/Q0pM+UJM
|
||||
T2UE2f8cB9L/GVoOAABCSUsuQ0pM3ENKTP9DSkz/Q0pM/ERKTHdETk4ARUtOAElOUQAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAATFFTAE1FRQBSODMESEtMlUdLTf9HS03/R0xO/0dMT/9HTE7/R0xO/0dM
|
||||
T/9GTE6oR0hJCRqoyAAH0v8AKoieAEVLTQBGTE5cR0xO9UdMT/9HTE7/R0xP60dNT0RITlAATlJVAE1R
|
||||
UwAAAAAAAAAAAAAAAAAAAAAAAAAAAFBUVgBTVlgAS1BSAEtPUlFKT1HzSk9R/0pPUf9KT1H/Sk9R/0pP
|
||||
Uf9KT1H/Sk9R4ElOUC9ITlAARUtNAAAAAABESk0ASE1PAEhOUARJTlGQSk9R/0pPUf9KT1H/Sk9RyktQ
|
||||
Uh5MUVMAT1NVAAAAAAAAAAAAAAAAAAAAAAAAAAAAUlVYAE9TVQBOUlQbTVJUy01RVP9NUVT/TVFU/01R
|
||||
VP9NUVT/TVFU/01RVPxNUVNvTFFTAE1RUwBHTU8AAAAAAAAAAABITVAAS1BSAExRUxhNUVPBTVFU/01R
|
||||
VP9NUVT/TlJUm05SVQdPU1UAU1ZYAAAAAAAAAAAAAAAAAFZZWwBSVVgAU1VYAVFUV4lQVFb/UFRW/1FU
|
||||
Vv9RVFb/UVRW/1BUVv9RVFb/UFRWtU9TVQ9PU1UAS1BSAAAAAAAAAAAAAAAAAEpPUQBKT1IAT1JVAFBT
|
||||
VTxQVFbmUFRW/1BUVv9QVFb4UVRXZlJVVwBSVVcAVllbAAAAAAAAAAAAXF1fAFRWWABUVllEU1ZY7lNW
|
||||
WP9TVlj/U1ZY/1NWWP9TVlj/VFZY/1RWWehTVlg6UlVXAE5SVAAAAAAAAAAAAAAAAAAAAAAAAAAAAE5S
|
||||
VABSVVcAUlZXAFNWWGxUVln6VFdZ/1RWWf9UV1niVVdZN1VXWQBaXF4AAAAAAAAAAABYWlwAUlRXDF1f
|
||||
YbtiZGb/X2Fj/19hY/9fYWP/XmFi/15gYv9aXF7/VllbfllbYABWWFoAUVRXAAAAAAAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAFFVVwBVV1kAVlhaCVdZW6FXWVv/V1lb/1dZW/9XWVu3WFpcDFhaXAAAAAAAAAAAAFlb
|
||||
XQBVV1kNX2Fjo3N0dtx3eHnadnd523Z3edt2eHncdXZ43mVmaKtVV1kVWFpcAFVXWQAAAAAAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAFVYWgBYWlwAWVtdIVpbXbhaXF7iWlxe4VpbXapZW10OWVtdAAAA
|
||||
AAAAAAAAVllbAFNVWABYWVsLVldZGVhZWxpYWVsaWFlbGlhaXBtYWlwbWFlbDFdZWwBYWlwAAAAAAAAA
|
||||
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWFpcAFZZWwBYWlwAXF1fD1xdXx5cXV8dXF1fDllb
|
||||
XQBTV1kAAAAAAAAAAABbXF4AXF1fAFtdXwBbXV8AW11fAFtdXwBbXV8AW11fAFtdXwBbXV8AXF1fAFtc
|
||||
XgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAW1xeAF9hYwBbXV8AW11fAFtd
|
||||
XwBbXV8AXF5gAFtcXgAAAAAAgH/gAYA/4AGAP8ABgB+AAYAPgAGABwABwAYAA+AAAAPgAAAH8AAAD/AA
|
||||
AA/wAAAf8AAAP/gAAD/8AAB//AAA//wAAP/4AAD/8AAAf/AAAD/wAAA/8AAAH/AAAA/gAAAHwABAB8AA
|
||||
YAOAAOABgAHwAYAB+AGAA/wBgAf8AYAH/gE=
|
||||
</value>
|
||||
</data>
|
||||
</root>
|
||||
Reference in new issue
Block a user