### 2021-09-03更新

------
#### SuperDesign    V2.0.2109.0301
- *.[改进]全新网页抓取工具,对历史记录支持编辑和收藏。
- *.[改进]修复网页抓取工具报《未能为 SSL/TLS 安全通道建立信任关系》错的BUG。
This commit is contained in:
鑫Intel 2021-09-03 17:36:09 +08:00
parent 36224cc16e
commit dca2bd3d1c
20 changed files with 704 additions and 481 deletions

Binary file not shown.

Binary file not shown.

View File

@ -1,4 +1,10 @@
### 2021-09-02更新
### 2021-09-03更新
------
#### SuperDesign V2.0.2109.0301
- *.[改进]全新网页抓取工具,对历史记录支持编辑和收藏。
- *.[改进]修复网页抓取工具报《未能为 SSL/TLS 安全通道建立信任关系》错的BUG。
### 2021-09-02更新
------
#### SuperDesign V2.0.2109.0202
- *.[改进]网页获取工具的地址下拉提示使用新版objectlistview控件。

View File

@ -28,160 +28,161 @@
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.vS2015LightTheme1 = new WeifenLuo.WinFormsUI.Docking.VS2015LightTheme();
this.dockPanel1 = new WeifenLuo.WinFormsUI.Docking.DockPanel();
this.panel1 = new System.Windows.Forms.Panel();
this.BtnCreateProject = new ryControls.ButtonEx();
this.BtnSetting = new ryControls.ButtonEx();
this.BtnTools = new ryControls.ButtonEx();
this.rySearch1 = new ryControls.rySearch();
this.table1 = new XPTable.Models.Table();
this.columnModel1 = new XPTable.Models.ColumnModel();
this.textColumn4 = new XPTable.Models.TextColumn();
this.textColumn5 = new XPTable.Models.TextColumn();
this.tableModel1 = new XPTable.Models.TableModel();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.table1)).BeginInit();
this.SuspendLayout();
//
// dockPanel1
//
this.dockPanel1.BackColor = System.Drawing.Color.White;
this.dockPanel1.DefaultFloatWindowSize = new System.Drawing.Size(970, 700);
this.dockPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.dockPanel1.DockBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(238)))), ((int)(((byte)(238)))), ((int)(((byte)(242)))));
this.dockPanel1.Location = new System.Drawing.Point(0, 30);
this.dockPanel1.Name = "dockPanel1";
this.dockPanel1.Padding = new System.Windows.Forms.Padding(6);
this.dockPanel1.ShowAutoHideContentOnHover = false;
this.dockPanel1.ShowDocumentIcon = true;
this.dockPanel1.Size = new System.Drawing.Size(964, 675);
this.dockPanel1.TabIndex = 12;
this.dockPanel1.Theme = this.vS2015LightTheme1;
this.dockPanel1.Enter += new System.EventHandler(this.DockPanel1_Enter);
//
// panel1
//
this.panel1.Controls.Add(this.BtnCreateProject);
this.panel1.Controls.Add(this.BtnSetting);
this.panel1.Controls.Add(this.BtnTools);
this.panel1.Controls.Add(this.rySearch1);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(964, 30);
this.panel1.TabIndex = 15;
this.panel1.Click += new System.EventHandler(this.Panel1_Click);
//
// BtnCreateProject
//
this.BtnCreateProject.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnCreateProject.Location = new System.Drawing.Point(533, 3);
this.BtnCreateProject.Name = "BtnCreateProject";
this.BtnCreateProject.Size = new System.Drawing.Size(59, 25);
this.BtnCreateProject.TabIndex = 3;
this.BtnCreateProject.Text = "创建项目";
this.BtnCreateProject.UseVisualStyleBackColor = true;
this.BtnCreateProject.Click += new System.EventHandler(this.BtnCreateProject_Click);
//
// BtnSetting
//
this.BtnSetting.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnSetting.Location = new System.Drawing.Point(468, 3);
this.BtnSetting.Name = "BtnSetting";
this.BtnSetting.Size = new System.Drawing.Size(59, 25);
this.BtnSetting.TabIndex = 2;
this.BtnSetting.Text = "设置";
this.BtnSetting.UseVisualStyleBackColor = true;
this.BtnSetting.Click += new System.EventHandler(this.BtnSetting_Click);
//
// BtnTools
//
this.BtnTools.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnTools.Location = new System.Drawing.Point(403, 3);
this.BtnTools.Name = "BtnTools";
this.BtnTools.Size = new System.Drawing.Size(59, 25);
this.BtnTools.TabIndex = 1;
this.BtnTools.Text = "工具管理";
this.BtnTools.UseVisualStyleBackColor = true;
this.BtnTools.Click += new System.EventHandler(this.BtnTools_Click);
//
// rySearch1
//
this.rySearch1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.rySearch1.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.rySearch1.EmptyText = "请输入工具名称、名称拼音首字母、工具描述进行搜索";
this.rySearch1.ImeMode = System.Windows.Forms.ImeMode.Close;
this.rySearch1.Location = new System.Drawing.Point(9, 3);
this.rySearch1.Name = "rySearch1";
this.rySearch1.Size = new System.Drawing.Size(388, 25);
this.rySearch1.TabIndex = 0;
this.rySearch1.OnTextChanged += new System.EventHandler(this.RySearch1_OnTextChanged);
this.rySearch1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.RySearch1_KeyDown);
this.rySearch1.Leave += new System.EventHandler(this.RySearch1_Leave);
//
// 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.Location = new System.Drawing.Point(9, 30);
this.table1.Name = "table1";
this.table1.NoItemsText = "当前列表没有任何项";
this.table1.Size = new System.Drawing.Size(442, 347);
this.table1.TabIndex = 19;
this.table1.TableModel = this.tableModel1;
this.table1.Text = "table1";
this.table1.Visible = false;
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.textColumn4,
this.textColumn5});
//
// textColumn4
//
this.textColumn4.Editable = false;
this.textColumn4.Tag = null;
this.textColumn4.Text = "工具名称";
this.textColumn4.Width = 180;
//
// textColumn5
//
this.textColumn5.Editable = false;
this.textColumn5.Tag = null;
this.textColumn5.Text = "备注";
this.textColumn5.Width = 230;
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(964, 705);
this.Controls.Add(this.table1);
this.Controls.Add(this.dockPanel1);
this.Controls.Add(this.panel1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.IsMdiContainer = true;
this.Name = "Form1";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "睿元开发辅助工具";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);
this.Load += new System.EventHandler(this.Form1_Load);
this.panel1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.table1)).EndInit();
this.ResumeLayout(false);
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
this.vS2015LightTheme1 = new WeifenLuo.WinFormsUI.Docking.VS2015LightTheme();
this.dockPanel1 = new WeifenLuo.WinFormsUI.Docking.DockPanel();
this.panel1 = new System.Windows.Forms.Panel();
this.BtnCreateProject = new ryControls.ButtonEx();
this.BtnSetting = new ryControls.ButtonEx();
this.BtnTools = new ryControls.ButtonEx();
this.rySearch1 = new ryControls.rySearch();
this.table1 = new XPTable.Models.Table();
this.columnModel1 = new XPTable.Models.ColumnModel();
this.textColumn4 = new XPTable.Models.TextColumn();
this.textColumn5 = new XPTable.Models.TextColumn();
this.tableModel1 = new XPTable.Models.TableModel();
this.panel1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.table1)).BeginInit();
this.SuspendLayout();
//
// dockPanel1
//
this.dockPanel1.BackColor = System.Drawing.Color.White;
this.dockPanel1.DefaultFloatWindowSize = new System.Drawing.Size(970, 700);
this.dockPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.dockPanel1.DockBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(238)))), ((int)(((byte)(238)))), ((int)(((byte)(242)))));
this.dockPanel1.Location = new System.Drawing.Point(0, 30);
this.dockPanel1.Name = "dockPanel1";
this.dockPanel1.Padding = new System.Windows.Forms.Padding(6);
this.dockPanel1.ShowAutoHideContentOnHover = false;
this.dockPanel1.ShowDocumentIcon = true;
this.dockPanel1.Size = new System.Drawing.Size(964, 675);
this.dockPanel1.TabIndex = 12;
this.dockPanel1.Theme = this.vS2015LightTheme1;
this.dockPanel1.Enter += new System.EventHandler(this.DockPanel1_Enter);
//
// panel1
//
this.panel1.Controls.Add(this.BtnCreateProject);
this.panel1.Controls.Add(this.BtnSetting);
this.panel1.Controls.Add(this.BtnTools);
this.panel1.Controls.Add(this.rySearch1);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 0);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(964, 30);
this.panel1.TabIndex = 15;
this.panel1.Click += new System.EventHandler(this.Panel1_Click);
//
// BtnCreateProject
//
this.BtnCreateProject.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnCreateProject.Location = new System.Drawing.Point(533, 3);
this.BtnCreateProject.Name = "BtnCreateProject";
this.BtnCreateProject.Size = new System.Drawing.Size(59, 25);
this.BtnCreateProject.TabIndex = 3;
this.BtnCreateProject.Text = "创建项目";
this.BtnCreateProject.UseVisualStyleBackColor = true;
this.BtnCreateProject.Click += new System.EventHandler(this.BtnCreateProject_Click);
//
// BtnSetting
//
this.BtnSetting.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnSetting.Location = new System.Drawing.Point(468, 3);
this.BtnSetting.Name = "BtnSetting";
this.BtnSetting.Size = new System.Drawing.Size(59, 25);
this.BtnSetting.TabIndex = 2;
this.BtnSetting.Text = "设置";
this.BtnSetting.UseVisualStyleBackColor = true;
this.BtnSetting.Click += new System.EventHandler(this.BtnSetting_Click);
//
// BtnTools
//
this.BtnTools.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.BtnTools.Location = new System.Drawing.Point(403, 3);
this.BtnTools.Name = "BtnTools";
this.BtnTools.Size = new System.Drawing.Size(59, 25);
this.BtnTools.TabIndex = 1;
this.BtnTools.Text = "工具管理";
this.BtnTools.UseVisualStyleBackColor = true;
this.BtnTools.Click += new System.EventHandler(this.BtnTools_Click);
//
// rySearch1
//
this.rySearch1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.rySearch1.BaseColor = System.Drawing.Color.FromArgb(((int)(((byte)(51)))), ((int)(((byte)(76)))), ((int)(((byte)(95)))));
this.rySearch1.ButtonRoundBackColor = System.Drawing.Color.FromArgb(((int)(((byte)(236)))), ((int)(((byte)(239)))), ((int)(((byte)(244)))));
this.rySearch1.EmptyText = "请输入工具名称、名称拼音首字母、工具描述进行搜索";
this.rySearch1.ImeMode = System.Windows.Forms.ImeMode.Close;
this.rySearch1.Location = new System.Drawing.Point(9, 3);
this.rySearch1.Name = "rySearch1";
this.rySearch1.Size = new System.Drawing.Size(388, 25);
this.rySearch1.TabIndex = 0;
this.rySearch1.OnTextChanged += new System.EventHandler(this.RySearch1_OnTextChanged);
this.rySearch1.KeyDown += new System.Windows.Forms.KeyEventHandler(this.RySearch1_KeyDown);
this.rySearch1.Leave += new System.EventHandler(this.RySearch1_Leave);
//
// 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.Location = new System.Drawing.Point(9, 30);
this.table1.Name = "table1";
this.table1.NoItemsText = "当前列表没有任何项";
this.table1.Size = new System.Drawing.Size(442, 347);
this.table1.TabIndex = 19;
this.table1.TableModel = this.tableModel1;
this.table1.Text = "table1";
this.table1.Visible = false;
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.textColumn4,
this.textColumn5});
//
// textColumn4
//
this.textColumn4.Editable = false;
this.textColumn4.Tag = null;
this.textColumn4.Text = "工具名称";
this.textColumn4.Width = 180;
//
// textColumn5
//
this.textColumn5.Editable = false;
this.textColumn5.Tag = null;
this.textColumn5.Text = "备注";
this.textColumn5.Width = 230;
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(964, 705);
this.Controls.Add(this.table1);
this.Controls.Add(this.dockPanel1);
this.Controls.Add(this.panel1);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.IsMdiContainer = true;
this.Name = "Form1";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "睿元开发辅助工具";
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);
this.Load += new System.EventHandler(this.Form1_Load);
this.panel1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.table1)).EndInit();
this.ResumeLayout(false);
}
#endregion

View File

@ -3,6 +3,7 @@ using HtmlAgilityPack;
using Microsoft.Win32;
using ryCommon;
using ryCommonDb;
using Sheng.Winform.Controls.PopupControl;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@ -106,7 +107,7 @@ namespace 开发辅助工具
{
RyQuickSQL mySQL = new RyQuickSQL("Urls");
mySQL.AddField("editTime",DateTime.Now.AddDays(-10));
db.ExecuteNonQuery("DELETE FROM Urls WHERE id IN (SELECT id FROM Urls ORDER BY ClickCount desc,editTime desc LIMIT 1000,50) and editTime<=@editTime", mySQL);
db.ExecuteNonQuery("DELETE FROM Urls WHERE id IN (SELECT id FROM Urls ORDER BY ClickCount desc,editTime desc LIMIT 1000,50) and editTime<=@editTime and IsFav<>1", mySQL);
}
db.Free();
}
@ -146,7 +147,7 @@ namespace 开发辅助工具
}
db.Free();
textColumn4.Text = "工具名称("+ tableModel1.Rows.Count+ ")";
table1.Visible = tableModel1.Rows.Count!=0;
table1.Visible = tableModel1.Rows.Count!=0;
}
#endregion
}
@ -273,7 +274,7 @@ namespace 开发辅助工具
frm.Icon = Icon;
frm.StartPosition = FormStartPosition.CenterParent;
frm.ShowDialog();
}
}
}
}

View File

@ -1,209 +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="vS2015LightTheme1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>130, 32</value>
</metadata>
<metadata name="columnModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>428, 32</value>
</metadata>
<metadata name="tableModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>301, 32</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>
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAABILAAASCwAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAKAAAAGgAAABAAAAADBBIdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAESLMAAAMJAAczXgADGjIAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAABQo8WmEdY4GrGFFpkgckNWAAAAAsAAAACg5OgQAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNQAAAAAAAAAAALAAINOwAABDIAAAAJAAMOAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ3XgAAGTUkKJvI0FPf+v9L1/H9QbnV7y+FoMUTQVd+AAAJMwAA
AAkDFigAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACBgAAAAAAAAAABBA5U1xAmrTXN42nzBAz
SXEAAAAiAAAAAwAAAAACFy8AAAAAAAAAAAABAAAAAAAAAAtVhmkwxO/6Rej//0nr//9O7f//V+n9/1PO
5fg4jqrLEDtRdgAAACIAAAABAAAAAAABAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQFHjRKSaXA1mHv
//9V7f7/QcDa8htnibMBGTBMAAAABQAAAAAAAAAAAAAAAAATJwAAAAQSFHm8uDHM/v882///QeD//0Xl
//9I6f//Te3//1rq/f9Wxt70KXKOqwANGjIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAIAxsxTkiY
tM9h6vv/UfD//0/u//9K6f//Rc33/x93wcUAF1AYAythAAAAAAAAAAAAA0iTAAc8fDQdkeTpLsP//zXI
//88z///O9X//z3c//9D4v//R+j//1Lt//9a3fP+MYaiuAERHzEAAAAAAAAAAAAAAAAV//8AAAAAFggu
RmlOobzYaOn7/07t//9L6v//ROT//0vd//9r1P//M43nzgAohhQFPo4AAAAAAAAAAAAKWrYAClOqMxqJ
7OYuqPz/S73//2PN//9n1P//U9X//z3W//8+3f//Q+P//0jq//9M3PT+KIGfsAADDyMMPGIAAAAABwAA
CjQbV3OWV7jS7Gnq/v9K6f//ReX//0Hg//841f//Vc///1y09/sWaMxtx///AAQ7ewAAAAAAAAAAAAdL
mQAERpEGDF/GQhpw2YM9jujIc7j2+KDa//+f4f//ddv//0LV//872v//P9///0Ll//880e77GGqLlgAA
ADcLM0pvNYqoyWLU7Ptc6f//Q+T//0Dg//892v//NdH//yzD//88s/z/J4LcpgAwgw0CSp8ABDyAAAAA
AAAAAAAABkuaAARGkgAPZ9YAav3/AAA6nhMsbcpaa6Hmxq7X+v6p4///atf//zjT//862f//PNz//0ji
//9GweLzK4Wp0lG83PFc4v3/R+P//z3e//872v//N9T//zHM//8owP//Iaz+/xaD5cgEUKkjCWDCAAhe
xQAAAAAAAAAAAAAAAAAAAAAAAR81AAJLngAANWIABUyoAFGR9AAAN6EZUYrZlZTJ+PuA1///Ps7//zXU
//842P//Q9r//2zi//9z4v//ZuP//0Db//831///NdL//zDM//8rxP//ML7//yeu//8WhuvZCVq6OBJ1
6ACO//8AAS1NAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQ4kA////AA5TtQAAF38MPIHbome9
/P8+x///Mc///zbV//821f//P9b//0nY//881P//MtD//y7K//8tw///QcP//2bK//9qwP7/J4nr3Qda
vkYblf8AACBAAAE/dQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHP2wADljFAA5W
vgADRaomKofo1C23//8uyv//M9L//zPT//8y0v//MdD//y/N//8pxf//M73//2bI//+h2v//ns38/0qN
58wIU70+LbT/AAAuYwACQX0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAADK1QAAAgNACCc/wALW8RuH5/4/SvF//8wzv//MdD//zHQ//8vzv//KMX//ym4//9Wvf//i8r//4O1
9/U/fN6gAEO2IxZRrwAADR0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAEP4MACVG9AARGqz8slPLzQcf//y3J//8uzf//L87//yzL//8kvv//K6z+/0Sc
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
AD//wAA//8AAP//AAD//4AA//+AAf//wAH8=
</value>
</data>
<?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="vS2015LightTheme1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>130, 32</value>
</metadata>
<metadata name="columnModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>428, 32</value>
</metadata>
<metadata name="tableModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>301, 32</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>
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAABILAAASCwAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAKAAAAGgAAABAAAAADBBIdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAESLMAAAMJAAczXgADGjIAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAABQo8WmEdY4GrGFFpkgckNWAAAAAsAAAACg5OgQAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNQAAAAAAAAAAALAAINOwAABDIAAAAJAAMOAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ3XgAAGTUkKJvI0FPf+v9L1/H9QbnV7y+FoMUTQVd+AAAJMwAA
AAkDFigAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACBgAAAAAAAAAABBA5U1xAmrTXN42nzBAz
SXEAAAAiAAAAAwAAAAACFy8AAAAAAAAAAAABAAAAAAAAAAtVhmkwxO/6Rej//0nr//9O7f//V+n9/1PO
5fg4jqrLEDtRdgAAACIAAAABAAAAAAABAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQFHjRKSaXA1mHv
//9V7f7/QcDa8htnibMBGTBMAAAABQAAAAAAAAAAAAAAAAATJwAAAAQSFHm8uDHM/v882///QeD//0Xl
//9I6f//Te3//1rq/f9Wxt70KXKOqwANGjIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAIAxsxTkiY
tM9h6vv/UfD//0/u//9K6f//Rc33/x93wcUAF1AYAythAAAAAAAAAAAAA0iTAAc8fDQdkeTpLsP//zXI
//88z///O9X//z3c//9D4v//R+j//1Lt//9a3fP+MYaiuAERHzEAAAAAAAAAAAAAAAAV//8AAAAAFggu
RmlOobzYaOn7/07t//9L6v//ROT//0vd//9r1P//M43nzgAohhQFPo4AAAAAAAAAAAAKWrYAClOqMxqJ
7OYuqPz/S73//2PN//9n1P//U9X//z3W//8+3f//Q+P//0jq//9M3PT+KIGfsAADDyMMPGIAAAAABwAA
CjQbV3OWV7jS7Gnq/v9K6f//ReX//0Hg//841f//Vc///1y09/sWaMxtx///AAQ7ewAAAAAAAAAAAAdL
mQAERpEGDF/GQhpw2YM9jujIc7j2+KDa//+f4f//ddv//0LV//872v//P9///0Ll//880e77GGqLlgAA
ADcLM0pvNYqoyWLU7Ptc6f//Q+T//0Dg//892v//NdH//yzD//88s/z/J4LcpgAwgw0CSp8ABDyAAAAA
AAAAAAAABkuaAARGkgAPZ9YAav3/AAA6nhMsbcpaa6Hmxq7X+v6p4///atf//zjT//862f//PNz//0ji
//9GweLzK4Wp0lG83PFc4v3/R+P//z3e//872v//N9T//zHM//8owP//Iaz+/xaD5cgEUKkjCWDCAAhe
xQAAAAAAAAAAAAAAAAAAAAAAAR81AAJLngAANWIABUyoAFGR9AAAN6EZUYrZlZTJ+PuA1///Ps7//zXU
//842P//Q9r//2zi//9z4v//ZuP//0Db//831///NdL//zDM//8rxP//ML7//yeu//8WhuvZCVq6OBJ1
6ACO//8AAS1NAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQ4kA////AA5TtQAAF38MPIHbome9
/P8+x///Mc///zbV//821f//P9b//0nY//881P//MtD//y7K//8tw///QcP//2bK//9qwP7/J4nr3Qda
vkYblf8AACBAAAE/dQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHP2wADljFAA5W
vgADRaomKofo1C23//8uyv//M9L//zPT//8y0v//MdD//y/N//8pxf//M73//2bI//+h2v//ns38/0qN
58wIU70+LbT/AAAuYwACQX0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAADK1QAAAgNACCc/wALW8RuH5/4/SvF//8wzv//MdD//zHQ//8vzv//KMX//ym4//9Wvf//i8r//4O1
9/U/fN6gAEO2IxZRrwAADR0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAEP4MACVG9AARGqz8slPLzQcf//y3J//8uzf//L87//yzL//8kvv//K6z+/0Sc
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
AD//wAA//8AAP//AAD//4AA//+AAf//wAH8=
</value>
</data>
</root>

View File

@ -0,0 +1,38 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace
{
public class Init
{
public static void Show(string[] args)
{
if (args.Length >= 2)
{
if (args[0] == "ver")
{
string ProjectDir = args[1];
Manager.RyProject.UpdateVer(ProjectDir.Trim('"') + "\\Properties\\AssemblyInfo.cs");
}
else if (args[0] == "get")
{
string ProjectPath = args[1];
Application.Run(new Form1(ProjectPath, "get"));
}
else if (args[0] == "open")
{
string ProjectPath = args[1];
Application.Run(new Form1(ProjectPath, "open"));
}
}
else
{
Application.Run(new Form1("", ""));
}
}
}
}

View File

@ -80,6 +80,8 @@ namespace 开发辅助工具.Manager
mySQL.AddField("Referer", "");
mySQL.AddField("ContentType", "");
mySQL.AddField("Encoding", "");
mySQL.AddField("IsFav", 0);
mySQL.AddField("Des", "");
mySQL.AddField("ClickCount", 0);//点击次数
mySQL.AddField("editTime", DateTime.Now);
mySQL.AddField("addTime", DateTime.Now);

View File

@ -1,44 +1,44 @@
using ryCommon;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
if (args.Length >= 2)
{
if (args[0] == "ver")
{
string ProjectDir = args[1];
Manager.RyProject.UpdateVer(ProjectDir.Trim('"') + "\\Properties\\AssemblyInfo.cs");
}
else if (args[0] == "get")
{
string ProjectPath = args[1];
Application.Run(new Form1(ProjectPath,"get"));
}
else if (args[0] == "open")
{
string ProjectPath = args[1];
Application.Run(new Form1(ProjectPath,"open"));
}
}
else
{
Application.Run(new Form1("",""));
}
}
}
}
using ryCommon;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Windows.Forms;
namespace
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
{
AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(CurrentDomain_AssemblyResolve);
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Init.Show(args);
}
static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
{
try
{
AssemblyName assemblyName = new AssemblyName(args.Name);
if (System.IO.File.Exists(Application.StartupPath + @"\Bin\dlls\" + assemblyName.Name + ".dll"))
{
return Assembly.LoadFrom(Application.StartupPath + @"\Bin\dlls\" + assemblyName.Name + ".dll");
}
else
{
return args.RequestingAssembly;
}
}
catch (Exception ex)
{
return args.RequestingAssembly;
}
}
}
}

View File

@ -31,5 +31,5 @@ using System.Runtime.InteropServices;
// 可以指定所有值,也可以使用以下所示的 "*" 预置版本号和修订号
// 方法是按如下所示使用“*”: :
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("2.0.2109.0202")]
[assembly: AssemblyFileVersion("2.0.2109.0202")]
[assembly: AssemblyVersion("2.0.2109.0301")]
[assembly: AssemblyFileVersion("2.0.2109.0301")]

View File

@ -143,6 +143,7 @@
<DependentUpon>FrmSetting.cs</DependentUpon>
</Compile>
<Compile Include="Manager\HtmlFormater.cs" />
<Compile Include="Manager\Init.cs" />
<Compile Include="Manager\JsonSplit.cs" />
<Compile Include="Manager\ClsPY.cs" />
<Compile Include="Manager\FrmAddTools.cs">

View File

@ -34,17 +34,16 @@
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.RichHtml = new ryControls.Controls.RichTextBox2();
this.tabPage12 = new System.Windows.Forms.TabPage();
this.Te_Format = new FastColoredTextBoxNS.FastColoredTextBox();
this.contextMenuStripHighlightText1 = new ryProcessManager.hezuo.ContextMenuStripHighlightText();
this.tabPage4 = new System.Windows.Forms.TabPage();
this.RichCookie = new System.Windows.Forms.RichTextBox();
this.RichCookie = new ryControls.Controls.RichTextBox2();
this.tabPage5 = new System.Windows.Forms.TabPage();
this.RichStatus = new System.Windows.Forms.RichTextBox();
this.RichStatus = new ryControls.Controls.RichTextBox2();
this.tabPage6 = new System.Windows.Forms.TabPage();
this.RichHeader = new System.Windows.Forms.RichTextBox();
this.RichHeader = new ryControls.Controls.RichTextBox2();
this.tabPreview = new System.Windows.Forms.TabPage();
this.extendedWebBrowser1 = new ExtendedWebBrowser2.ExtendedWebBrowser();
this.groupBox3 = new System.Windows.Forms.GroupBox();
@ -82,12 +81,15 @@
this.label2 = new System.Windows.Forms.Label();
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
this.BtnCtreateCShape = new ryControls.ButtonEx();
this.ColUrl = new XPTable.Models.TextColumn();
this.ColTitle = new XPTable.Models.TextColumn();
this.timer1 = new System.Windows.Forms.Timer(this.components);
this.objectListView2 = new BrightIdeasSoftware.ObjectListView();
this.OlvUrl = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvName = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
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.tabControl2.SuspendLayout();
this.tabPage3.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
@ -104,6 +106,7 @@
this.groupBox2.SuspendLayout();
this.groupBox1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.objectListView2)).BeginInit();
this.contextMenuStrip1.SuspendLayout();
this.SuspendLayout();
//
// ChkUrlLower
@ -157,21 +160,19 @@
//
// RichHtml
//
this.RichHtml.BackColor = System.Drawing.Color.White;
this.RichHtml.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.RichHtml.ContextMenuStrip = this.contextMenuStripRichText1;
this.RichHtml.DetectUrls = false;
this.RichHtml.Dock = System.Windows.Forms.DockStyle.Fill;
this.RichHtml.EmptyText = "";
this.RichHtml.Font = new System.Drawing.Font("Courier New", 10F);
this.RichHtml.ForeColor = System.Drawing.Color.Black;
this.RichHtml.Location = new System.Drawing.Point(3, 3);
this.RichHtml.Name = "RichHtml";
this.RichHtml.ReadOnly = true;
this.RichHtml.OnlyInputText = true;
this.RichHtml.Size = new System.Drawing.Size(875, 274);
this.RichHtml.TabIndex = 0;
this.RichHtml.TabIndex = 3;
this.RichHtml.Text = "";
//
// contextMenuStripRichText1
//
this.contextMenuStripRichText1.Name = "contextMenuStripRichText1";
this.contextMenuStripRichText1.Size = new System.Drawing.Size(101, 164);
this.RichHtml.WordWrap = false;
//
// tabPage12
//
@ -186,7 +187,7 @@
//
// Te_Format
//
this.Te_Format.AutoScrollMinSize = new System.Drawing.Size(27, 14);
this.Te_Format.AutoScrollMinSize = new System.Drawing.Size(0, 17);
this.Te_Format.ContextMenuStrip = this.contextMenuStripHighlightText1;
this.Te_Format.Cursor = System.Windows.Forms.Cursors.IBeam;
this.Te_Format.Dock = System.Windows.Forms.DockStyle.Fill;
@ -214,16 +215,19 @@
//
// RichCookie
//
this.RichCookie.BackColor = System.Drawing.Color.White;
this.RichCookie.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.RichCookie.ContextMenuStrip = this.contextMenuStripRichText1;
this.RichCookie.DetectUrls = false;
this.RichCookie.Dock = System.Windows.Forms.DockStyle.Fill;
this.RichCookie.EmptyText = "";
this.RichCookie.Font = new System.Drawing.Font("Courier New", 10F);
this.RichCookie.ForeColor = System.Drawing.Color.Black;
this.RichCookie.Location = new System.Drawing.Point(3, 3);
this.RichCookie.Name = "RichCookie";
this.RichCookie.ReadOnly = true;
this.RichCookie.OnlyInputText = true;
this.RichCookie.Size = new System.Drawing.Size(875, 274);
this.RichCookie.TabIndex = 1;
this.RichCookie.TabIndex = 4;
this.RichCookie.Text = "";
this.RichCookie.WordWrap = false;
//
// tabPage5
//
@ -238,16 +242,19 @@
//
// RichStatus
//
this.RichStatus.BackColor = System.Drawing.Color.White;
this.RichStatus.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.RichStatus.ContextMenuStrip = this.contextMenuStripRichText1;
this.RichStatus.DetectUrls = false;
this.RichStatus.Dock = System.Windows.Forms.DockStyle.Fill;
this.RichStatus.EmptyText = "";
this.RichStatus.Font = new System.Drawing.Font("Courier New", 10F);
this.RichStatus.ForeColor = System.Drawing.Color.Black;
this.RichStatus.Location = new System.Drawing.Point(3, 3);
this.RichStatus.Name = "RichStatus";
this.RichStatus.ReadOnly = true;
this.RichStatus.OnlyInputText = true;
this.RichStatus.Size = new System.Drawing.Size(875, 274);
this.RichStatus.TabIndex = 2;
this.RichStatus.TabIndex = 5;
this.RichStatus.Text = "";
this.RichStatus.WordWrap = false;
//
// tabPage6
//
@ -262,16 +269,19 @@
//
// RichHeader
//
this.RichHeader.BackColor = System.Drawing.Color.White;
this.RichHeader.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.RichHeader.ContextMenuStrip = this.contextMenuStripRichText1;
this.RichHeader.DetectUrls = false;
this.RichHeader.Dock = System.Windows.Forms.DockStyle.Fill;
this.RichHeader.EmptyText = "";
this.RichHeader.Font = new System.Drawing.Font("Courier New", 10F);
this.RichHeader.ForeColor = System.Drawing.Color.Black;
this.RichHeader.Location = new System.Drawing.Point(3, 3);
this.RichHeader.Name = "RichHeader";
this.RichHeader.ReadOnly = true;
this.RichHeader.OnlyInputText = true;
this.RichHeader.Size = new System.Drawing.Size(875, 274);
this.RichHeader.TabIndex = 3;
this.RichHeader.TabIndex = 6;
this.RichHeader.Text = "";
this.RichHeader.WordWrap = false;
//
// tabPreview
//
@ -340,6 +350,7 @@
this.TxtPost.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtPost.DetectUrls = false;
this.TxtPost.EmptyText = "请填写Post数据";
this.TxtPost.Font = new System.Drawing.Font("Courier New", 10F);
this.TxtPost.ForeColor = System.Drawing.Color.Black;
this.TxtPost.Location = new System.Drawing.Point(2, 3);
this.TxtPost.Name = "TxtPost";
@ -370,6 +381,7 @@
this.TxtCookie.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtCookie.DetectUrls = false;
this.TxtCookie.EmptyText = "请填写请求时要发送的Cookie";
this.TxtCookie.Font = new System.Drawing.Font("Courier New", 10F);
this.TxtCookie.ForeColor = System.Drawing.Color.Black;
this.TxtCookie.Location = new System.Drawing.Point(2, 3);
this.TxtCookie.Name = "TxtCookie";
@ -400,6 +412,7 @@
this.TxtInputHeader.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtInputHeader.DetectUrls = false;
this.TxtInputHeader.EmptyText = "请填写请求时要发送的Header";
this.TxtInputHeader.Font = new System.Drawing.Font("Courier New", 10F);
this.TxtInputHeader.ForeColor = System.Drawing.Color.Black;
this.TxtInputHeader.Location = new System.Drawing.Point(2, 3);
this.TxtInputHeader.Name = "TxtInputHeader";
@ -756,20 +769,6 @@
this.BtnCtreateCShape.UseVisualStyleBackColor = true;
this.BtnCtreateCShape.Click += new System.EventHandler(this.BtnCtreateCShape_Click);
//
// 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;
//
// timer1
//
this.timer1.Interval = 1000;
@ -783,20 +782,25 @@
this.objectListView2.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.OlvUrl,
this.OlvName});
this.objectListView2.ContextMenuStrip = this.contextMenuStrip1;
this.objectListView2.Cursor = System.Windows.Forms.Cursors.Default;
this.objectListView2.FullRowSelect = true;
this.objectListView2.HideSelection = false;
this.objectListView2.Location = new System.Drawing.Point(43, 30);
this.objectListView2.Location = new System.Drawing.Point(45, 30);
this.objectListView2.MultiSelect = false;
this.objectListView2.Name = "objectListView2";
this.objectListView2.RowHeight = 25;
this.objectListView2.ShowGroups = false;
this.objectListView2.ShowItemToolTips = true;
this.objectListView2.Size = new System.Drawing.Size(653, 323);
this.objectListView2.TabIndex = 113;
this.objectListView2.UseCompatibleStateImageBehavior = false;
this.objectListView2.UseHotItem = true;
this.objectListView2.View = System.Windows.Forms.View.Details;
this.objectListView2.Visible = false;
this.objectListView2.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Table1_KeyDown);
this.objectListView2.Leave += new System.EventHandler(this.Table1_Leave);
this.objectListView2.MouseClick += new System.Windows.Forms.MouseEventHandler(this.table1_MouseClick);
//
// OlvUrl
//
@ -808,12 +812,48 @@
this.OlvName.Text = "名称";
this.OlvName.Width = 200;
//
// contextMenuStrip1
//
this.contextMenuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.ToolStripMenuItem,
this.ToolStripMenuItem,
this.toolStripMenuItem1,
this.ToolStripMenuItem});
this.contextMenuStrip1.Name = "contextMenuStrip1";
this.contextMenuStrip1.Size = new System.Drawing.Size(149, 76);
this.contextMenuStrip1.Opening += new System.ComponentModel.CancelEventHandler(this.contextMenuStrip1_Opening);
//
// 置顶收藏该项ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "置顶收藏该项ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(148, 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(148, 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(145, 6);
//
// 设置备注ToolStripMenuItem
//
this.ToolStripMenuItem.Name = "设置备注ToolStripMenuItem";
this.ToolStripMenuItem.Size = new System.Drawing.Size(148, 22);
this.ToolStripMenuItem.Text = "设置备注";
this.ToolStripMenuItem.Click += new System.EventHandler(this.ToolStripMenuItem_Click);
//
// 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.objectListView2);
this.Controls.Add(this.TxtUrl);
this.Controls.Add(this.BtnCtreateCShape);
this.Controls.Add(this.ChkUrlLower);
@ -825,6 +865,7 @@
this.Controls.Add(this.RbPost);
this.Controls.Add(this.RbGet);
this.Controls.Add(this.label2);
this.Controls.Add(this.objectListView2);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmWebGet";
this.TabPageContextMenuStrip = this.menuRight1;
@ -849,6 +890,7 @@
this.groupBox1.ResumeLayout(false);
this.groupBox1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.objectListView2)).EndInit();
this.contextMenuStrip1.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
@ -860,14 +902,10 @@
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 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;
@ -892,12 +930,9 @@
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.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;
@ -914,5 +949,14 @@
private BrightIdeasSoftware.ObjectListView objectListView2;
private BrightIdeasSoftware.OLVColumn OlvUrl;
private BrightIdeasSoftware.OLVColumn OlvName;
private System.Windows.Forms.ContextMenuStrip contextMenuStrip1;
private ryControls.Controls.RichTextBox2 RichHtml;
private ryControls.Controls.RichTextBox2 RichCookie;
private ryControls.Controls.RichTextBox2 RichStatus;
private ryControls.Controls.RichTextBox2 RichHeader;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
private System.Windows.Forms.ToolStripSeparator toolStripMenuItem1;
private System.Windows.Forms.ToolStripMenuItem ToolStripMenuItem;
}
}

View File

@ -1,9 +1,11 @@
using DotNet4.Utilities;
using BrightIdeasSoftware;
using DotNet4.Utilities;
using FastColoredTextBoxNS;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using ryCommon;
using ryCommonDb;
using Sheng.Winform.Controls.PopupControl;
using System;
using System.Collections.Generic;
using System.ComponentModel;
@ -12,6 +14,8 @@ using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading;
@ -34,9 +38,54 @@ namespace 开发辅助工具.Tools
Te_Format.AutoIndentNeeded -= fctb_AutoIndentNeeded;
Te_Format.Language = Language.JSON;
Te_Format.OnSyntaxHighlight(new TextChangedEventArgs(Te_Format.Range));
OlvName.AspectGetter = delegate (object x) { return ((UrlInfo)x).Name; };
OlvUrl.AspectGetter = delegate (object x) { return ((UrlInfo)x).Url; };
OlvName.AspectGetter = delegate (object x) {
var item = (UrlInfo)x;
if (item.Des.Length == 0)
{ return item.Name; }
else
{
return "【"+item.Des+"】"+ item.Name;
}
};
//OlvUrl.Renderer = CreateDescribedTaskRenderer();
objectListView2.FormatRow += ObjectListView2_FormatRow;
}
private DescribedTaskRenderer CreateDescribedTaskRenderer()
{
// Let's create an appropriately configured renderer.
DescribedTaskRenderer renderer = new DescribedTaskRenderer();
// Give the renderer its own collection of images.
// If this isn't set, the renderer will use the SmallImageList from the ObjectListView.
// (this is standard Renderer behaviour, not specific to DescribedTaskRenderer).
// Tell the renderer which property holds the text to be used as a description
renderer.DescriptionAspectName = "Name";
renderer.UseCustomCheckboxImages = false;
// Change the formatting slightly
renderer.TitleFont = new Font("宋体", 9, FontStyle.Regular);
renderer.DescriptionFont = new Font("宋体", 9);
renderer.DescriptionColor = Color.Gray;
renderer.TopSpace = 2;
//renderer.ImageTextSpace = 8;
renderer.TitleDescriptionSpace = 2;
// Use older Gdi renderering, since most people think the text looks clearer
renderer.UseGdiTextRendering = true;
// If you like colours other than black and grey, you could uncomment these
// renderer.TitleColor = Color.DarkBlue;
// renderer.DescriptionColor = Color.CornflowerBlue;
return renderer;
}
private void ObjectListView2_FormatRow(object sender, BrightIdeasSoftware.FormatRowEventArgs e)
{
var item = (UrlInfo)e.Model;
if (item.Fav) { e.Item.ForeColor = Color.Blue; } else { e.Item.ForeColor = Color.Black; }
}
private void fctb_AutoIndentNeeded(object sender, AutoIndentEventArgs args)
{
//block {}
@ -456,7 +505,6 @@ namespace 开发辅助工具.Tools
}
}
}
private void FrmWebGet_Load(object sender, EventArgs e)
{
//TxtPost.AutoWordSelection = false;
@ -472,8 +520,12 @@ namespace 开发辅助工具.Tools
break;
}
}
ServicePointManager.ServerCertificateValidationCallback = ValidateServerCertificate;
}
private bool ValidateServerCertificate(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors)
{
return true;
}
private void Gb_Click(object sender, EventArgs e)
{
objectListView2.Visible = false;
@ -611,7 +663,7 @@ namespace 开发辅助工具.Tools
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
var _title = title;
if(_title == "")
if(_title.Length==0)
{
var mode = url.Replace("?","&").GetStr("&a=","");
if (mode.IndexOf("&") > 0) { mode = mode.GetStr("", "&"); }
@ -687,7 +739,7 @@ namespace 开发辅助工具.Tools
}
void SetValueByRich(ryControls.Controls.RichTextBox2 txt, string Field)
{
if (row[Field].ToString().Length > 0) { txt.Text = row[Field].ToString(); }
if (row[Field].ToString().Length > 0) { txt.Text = row[Field].ToString(); txt.Refresh(); }
}
void SetValue2(ryControls.RyComboBox cbb, string Field)
{
@ -725,7 +777,7 @@ namespace 开发辅助工具.Tools
{
if (proc_use) { return; }
string sql_where = "";
if (TxtUrl.Text != "") { sql_where = " where (Name like @SearchText or Url like @SearchText)"; }
if (TxtUrl.Text != "") { sql_where = " where (Name like @SearchText or Url like @SearchText or Des like @SearchText)"; }
#region
objectListView2.ClearObjects();
List<UrlInfo> list = new List<UrlInfo>();
@ -734,12 +786,16 @@ namespace 开发辅助工具.Tools
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());
DataSet ds = db.ReadData("select * from Urls" + sql_where+ " order by IsFav desc,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();
var item = new UrlInfo() { Id = row["id"].ToInt(), Name = row["Name"].ToString(), Url = row["Url"].ToString() };
var item = new UrlInfo() { Id = row["id"].ToInt(), Name = row["Name"].ToString(),
Des = row["Des"].ToString(),
Url = row["Url"].ToString(),
ClickCount = row["ClickCount"].ToInt(),
Fav = row["IsFav"].ToInt()==1 };
if (editTime >= DateTime.Now.AddMinutes(-10))
{
list.Insert(0,item);
@ -832,12 +888,84 @@ namespace 开发辅助工具.Tools
{
ChkHtmlPreview.Enabled = !ChkNoPreview.Checked;
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
var item = (UrlInfo)objectListView2.SelectedObject;
if (item == null) { return; }
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
RyQuickSQL mySQL = new RyQuickSQL("Urls");
mySQL.AddField("IsFav", item.Fav ? 0 : 1);
db.ExecuteNonQuery(mySQL.GetUpdateSQL()+" where id="+item.Id,mySQL);
item.Fav = !item.Fav;
objectListView2.RefreshObject(item);
}
db.Free();
}
private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
{
var item = (UrlInfo)objectListView2.SelectedObject;
if (item == null) { return; }
ToolStripMenuItem.Text = item.Fav ? "取消收藏该项" : "置顶收藏该项";
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
var item = (UrlInfo)objectListView2.SelectedObject;
if (item == null) { return; }
if(item.ClickCount>5)
{
switch (MessageBox.Show("确认要删除该项记录吗?", "警告", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2))
{
case DialogResult.No:
return;
}
}
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
db.ExecuteNonQuery("delete from Urls where id=" + item.Id);
objectListView2.RemoveObject(item);
}
db.Free();
}
private void ToolStripMenuItem_Click(object sender, EventArgs e)
{
var item = (UrlInfo)objectListView2.SelectedObject;
if (item == null) { return; }
IDbInterface db = Itrycn_Db.CreateDataProvider(Itrycn_Db.dataType);
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{
SuperDesign.Controls.FrmTitle frm = new SuperDesign.Controls.FrmTitle();
frm.TxtTitle.Text = item.Des;
if (frm.ShowDialog() == DialogResult.OK)
{
RyQuickSQL mySQL = new RyQuickSQL("Urls");
mySQL.AddField("Des", frm.TxtTitle.Text);
db.ExecuteNonQuery(mySQL.GetUpdateSQL() + " where id=" + item.Id, mySQL);
item.Des = frm.TxtTitle.Text;
objectListView2.RefreshObject(item);
}
}
db.Free();
}
}
public class UrlInfo
{
public int Id { get; set; }=0;
public string Url { get; set; } = "";
public string Name { get; set; } = "";
public string Des { get; set; } = "";
public int ClickCount { get; set; } = 0;
/// <summary>
/// 是否收藏
/// </summary>
public bool Fav { get; set; } = false;
}
public class UserAgentInfo
{

View File

@ -117,14 +117,14 @@
<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>
<value>603, 26</value>
</metadata>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>388, 26</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">
@ -204,6 +204,6 @@
</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>
<value>280, 15</value>
</metadata>
</root>

View File

@ -74,7 +74,8 @@
| System.Windows.Forms.AnchorStyles.Right)));
this.TxtXML.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtXML.DetectUrls = false;
this.TxtXML.EmptyText = "待匹配的XML或HTML内容";
this.TxtXML.EmptyText = "待匹配的XML、HTML或Json内容";
this.TxtXML.Font = new System.Drawing.Font("Courier New", 10F);
this.TxtXML.ForeColor = System.Drawing.Color.Black;
this.TxtXML.Location = new System.Drawing.Point(3, 3);
this.TxtXML.Name = "TxtXML";
@ -82,6 +83,7 @@
this.TxtXML.Size = new System.Drawing.Size(868, 137);
this.TxtXML.TabIndex = 32;
this.TxtXML.Text = "";
this.TxtXML.WordWrap = false;
this.TxtXML.DoubleClick += new System.EventHandler(this.TxtXML_DoubleClick);
//
// panelEx1
@ -95,7 +97,7 @@
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, 324);
this.panelEx1.Size = new System.Drawing.Size(869, 326);
this.panelEx1.TabIndex = 8;
this.panelEx1.TileBackColor = System.Drawing.Color.White;
//
@ -109,7 +111,7 @@
this.fastColoredTextBox1.ImeMode = System.Windows.Forms.ImeMode.On;
this.fastColoredTextBox1.Location = new System.Drawing.Point(2, 2);
this.fastColoredTextBox1.Name = "fastColoredTextBox1";
this.fastColoredTextBox1.Size = new System.Drawing.Size(865, 320);
this.fastColoredTextBox1.Size = new System.Drawing.Size(865, 322);
this.fastColoredTextBox1.TabIndex = 0;
//
// contextMenuStripHighlightText1