### 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 #### SuperDesign V2.0.2109.0202
- *.[改进]网页获取工具的地址下拉提示使用新版objectlistview控件。 - *.[改进]网页获取工具的地址下拉提示使用新版objectlistview控件。

View File

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

View File

@ -3,6 +3,7 @@ using HtmlAgilityPack;
using Microsoft.Win32; using Microsoft.Win32;
using ryCommon; using ryCommon;
using ryCommonDb; using ryCommonDb;
using Sheng.Winform.Controls.PopupControl;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel; using System.ComponentModel;
@ -106,7 +107,7 @@ namespace 开发辅助工具
{ {
RyQuickSQL mySQL = new RyQuickSQL("Urls"); RyQuickSQL mySQL = new RyQuickSQL("Urls");
mySQL.AddField("editTime",DateTime.Now.AddDays(-10)); 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(); db.Free();
} }
@ -146,7 +147,7 @@ namespace 开发辅助工具
} }
db.Free(); db.Free();
textColumn4.Text = "工具名称("+ tableModel1.Rows.Count+ ")"; textColumn4.Text = "工具名称("+ tableModel1.Rows.Count+ ")";
table1.Visible = tableModel1.Rows.Count!=0; table1.Visible = tableModel1.Rows.Count!=0;
} }
#endregion #endregion
} }
@ -273,7 +274,7 @@ namespace 开发辅助工具
frm.Icon = Icon; frm.Icon = Icon;
frm.StartPosition = FormStartPosition.CenterParent; frm.StartPosition = FormStartPosition.CenterParent;
frm.ShowDialog(); frm.ShowDialog();
} }
} }
} }

View File

@ -1,209 +1,209 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<root> <root>
<!-- <!--
Microsoft ResX Schema Microsoft ResX Schema
Version 2.0 Version 2.0
The primary goals of this format is to allow a simple XML format The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes various data types are done through the TypeConverter classes
associated with the data types. associated with the data types.
Example: Example:
... ado.net/XML headers & schema ... ... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader> <resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader> <resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, 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="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="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value> <value>[base64 mime encoded serialized .NET Framework object]</value>
</data> </data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> <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> <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment> <comment>This is a comment</comment>
</data> </data>
There are any number of "resheader" rows that contain simple There are any number of "resheader" rows that contain simple
name/value pairs. name/value pairs.
Each data row contains a name, and value. The row also contains a Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture. text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the Classes that don't support this are serialized and stored with the
mimetype set. mimetype set.
The mimetype is used for serialized objects, and tells the The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly: extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below. read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64 mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding. : and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64 mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding. : and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64 mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter : using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding. : 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: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:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true"> <xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType> <xsd:complexType>
<xsd:choice maxOccurs="unbounded"> <xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata"> <xsd:element name="metadata">
<xsd:complexType> <xsd:complexType>
<xsd:sequence> <xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" /> <xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence> </xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" /> <xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" /> <xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" /> <xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" /> <xsd:attribute ref="xml:space" />
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="assembly"> <xsd:element name="assembly">
<xsd:complexType> <xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" /> <xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" /> <xsd:attribute name="name" type="xsd:string" />
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="data"> <xsd:element name="data">
<xsd:complexType> <xsd:complexType>
<xsd:sequence> <xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> <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:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence> </xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" /> <xsd:attribute ref="xml:space" />
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
<xsd:element name="resheader"> <xsd:element name="resheader">
<xsd:complexType> <xsd:complexType>
<xsd:sequence> <xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence> </xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" /> <xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
</xsd:choice> </xsd:choice>
</xsd:complexType> </xsd:complexType>
</xsd:element> </xsd:element>
</xsd:schema> </xsd:schema>
<resheader name="resmimetype"> <resheader name="resmimetype">
<value>text/microsoft-resx</value> <value>text/microsoft-resx</value>
</resheader> </resheader>
<resheader name="version"> <resheader name="version">
<value>2.0</value> <value>2.0</value>
</resheader> </resheader>
<resheader name="reader"> <resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="toolTip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value> <value>17, 17</value>
</metadata> </metadata>
<metadata name="vS2015LightTheme1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="vS2015LightTheme1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>130, 32</value> <value>130, 32</value>
</metadata> </metadata>
<metadata name="columnModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="columnModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>428, 32</value> <value>428, 32</value>
</metadata> </metadata>
<metadata name="tableModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <metadata name="tableModel1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>301, 32</value> <value>301, 32</value>
</metadata> </metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <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"> <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value> <value>
AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAABILAAASCwAAAAAAAAAA AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAABILAAASCwAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAKAAAAGgAAABAAAAADBBIdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAKAAAAGgAAABAAAAADBBIdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAESLMAAAMJAAczXgADGjIAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAESLMAAAMJAAczXgADGjIAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAABQo8WmEdY4GrGFFpkgckNWAAAAAsAAAACg5OgQAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAABQo8WmEdY4GrGFFpkgckNWAAAAAsAAAACg5OgQAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNQAAAAAAAAAAALAAINOwAABDIAAAAJAAMOAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABNQAAAAAAAAAAALAAINOwAABDIAAAAJAAMOAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ3XgAAGTUkKJvI0FPf+v9L1/H9QbnV7y+FoMUTQVd+AAAJMwAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQ3XgAAGTUkKJvI0FPf+v9L1/H9QbnV7y+FoMUTQVd+AAAJMwAA
AAkDFigAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACBgAAAAAAAAAABBA5U1xAmrTXN42nzBAz AAkDFigAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACBgAAAAAAAAAABBA5U1xAmrTXN42nzBAz
SXEAAAAiAAAAAwAAAAACFy8AAAAAAAAAAAABAAAAAAAAAAtVhmkwxO/6Rej//0nr//9O7f//V+n9/1PO SXEAAAAiAAAAAwAAAAACFy8AAAAAAAAAAAABAAAAAAAAAAtVhmkwxO/6Rej//0nr//9O7f//V+n9/1PO
5fg4jqrLEDtRdgAAACIAAAABAAAAAAABAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQFHjRKSaXA1mHv 5fg4jqrLEDtRdgAAACIAAAABAAAAAAABAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQFHjRKSaXA1mHv
//9V7f7/QcDa8htnibMBGTBMAAAABQAAAAAAAAAAAAAAAAATJwAAAAQSFHm8uDHM/v882///QeD//0Xl //9V7f7/QcDa8htnibMBGTBMAAAABQAAAAAAAAAAAAAAAAATJwAAAAQSFHm8uDHM/v882///QeD//0Xl
//9I6f//Te3//1rq/f9Wxt70KXKOqwANGjIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAIAxsxTkiY //9I6f//Te3//1rq/f9Wxt70KXKOqwANGjIAAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAIAxsxTkiY
tM9h6vv/UfD//0/u//9K6f//Rc33/x93wcUAF1AYAythAAAAAAAAAAAAA0iTAAc8fDQdkeTpLsP//zXI tM9h6vv/UfD//0/u//9K6f//Rc33/x93wcUAF1AYAythAAAAAAAAAAAAA0iTAAc8fDQdkeTpLsP//zXI
//88z///O9X//z3c//9D4v//R+j//1Lt//9a3fP+MYaiuAERHzEAAAAAAAAAAAAAAAAV//8AAAAAFggu //88z///O9X//z3c//9D4v//R+j//1Lt//9a3fP+MYaiuAERHzEAAAAAAAAAAAAAAAAV//8AAAAAFggu
RmlOobzYaOn7/07t//9L6v//ROT//0vd//9r1P//M43nzgAohhQFPo4AAAAAAAAAAAAKWrYAClOqMxqJ RmlOobzYaOn7/07t//9L6v//ROT//0vd//9r1P//M43nzgAohhQFPo4AAAAAAAAAAAAKWrYAClOqMxqJ
7OYuqPz/S73//2PN//9n1P//U9X//z3W//8+3f//Q+P//0jq//9M3PT+KIGfsAADDyMMPGIAAAAABwAA 7OYuqPz/S73//2PN//9n1P//U9X//z3W//8+3f//Q+P//0jq//9M3PT+KIGfsAADDyMMPGIAAAAABwAA
CjQbV3OWV7jS7Gnq/v9K6f//ReX//0Hg//841f//Vc///1y09/sWaMxtx///AAQ7ewAAAAAAAAAAAAdL CjQbV3OWV7jS7Gnq/v9K6f//ReX//0Hg//841f//Vc///1y09/sWaMxtx///AAQ7ewAAAAAAAAAAAAdL
mQAERpEGDF/GQhpw2YM9jujIc7j2+KDa//+f4f//ddv//0LV//872v//P9///0Ll//880e77GGqLlgAA mQAERpEGDF/GQhpw2YM9jujIc7j2+KDa//+f4f//ddv//0LV//872v//P9///0Ll//880e77GGqLlgAA
ADcLM0pvNYqoyWLU7Ptc6f//Q+T//0Dg//892v//NdH//yzD//88s/z/J4LcpgAwgw0CSp8ABDyAAAAA ADcLM0pvNYqoyWLU7Ptc6f//Q+T//0Dg//892v//NdH//yzD//88s/z/J4LcpgAwgw0CSp8ABDyAAAAA
AAAAAAAABkuaAARGkgAPZ9YAav3/AAA6nhMsbcpaa6Hmxq7X+v6p4///atf//zjT//862f//PNz//0ji AAAAAAAABkuaAARGkgAPZ9YAav3/AAA6nhMsbcpaa6Hmxq7X+v6p4///atf//zjT//862f//PNz//0ji
//9GweLzK4Wp0lG83PFc4v3/R+P//z3e//872v//N9T//zHM//8owP//Iaz+/xaD5cgEUKkjCWDCAAhe //9GweLzK4Wp0lG83PFc4v3/R+P//z3e//872v//N9T//zHM//8owP//Iaz+/xaD5cgEUKkjCWDCAAhe
xQAAAAAAAAAAAAAAAAAAAAAAAR81AAJLngAANWIABUyoAFGR9AAAN6EZUYrZlZTJ+PuA1///Ps7//zXU xQAAAAAAAAAAAAAAAAAAAAAAAR81AAJLngAANWIABUyoAFGR9AAAN6EZUYrZlZTJ+PuA1///Ps7//zXU
//842P//Q9r//2zi//9z4v//ZuP//0Db//831///NdL//zDM//8rxP//ML7//yeu//8WhuvZCVq6OBJ1 //842P//Q9r//2zi//9z4v//ZuP//0Db//831///NdL//zDM//8rxP//ML7//yeu//8WhuvZCVq6OBJ1
6ACO//8AAS1NAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQ4kA////AA5TtQAAF38MPIHbome9 6ACO//8AAS1NAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQ4kA////AA5TtQAAF38MPIHbome9
/P8+x///Mc///zbV//821f//P9b//0nY//881P//MtD//y7K//8tw///QcP//2bK//9qwP7/J4nr3Qda /P8+x///Mc///zbV//821f//P9b//0nY//881P//MtD//y7K//8tw///QcP//2bK//9qwP7/J4nr3Qda
vkYblf8AACBAAAE/dQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHP2wADljFAA5W vkYblf8AACBAAAE/dQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHP2wADljFAA5W
vgADRaomKofo1C23//8uyv//M9L//zPT//8y0v//MdD//y/N//8pxf//M73//2bI//+h2v//ns38/0qN vgADRaomKofo1C23//8uyv//M9L//zPT//8y0v//MdD//y/N//8pxf//M73//2bI//+h2v//ns38/0qN
58wIU70+LbT/AAAuYwACQX0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 58wIU70+LbT/AAAuYwACQX0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAADK1QAAAgNACCc/wALW8RuH5/4/SvF//8wzv//MdD//zHQ//8vzv//KMX//ym4//9Wvf//i8r//4O1 AAADK1QAAAgNACCc/wALW8RuH5/4/SvF//8wzv//MdD//zHQ//8vzv//KMX//ym4//9Wvf//i8r//4O1
9/U/fN6gAEO2IxZRrwAADR0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 9/U/fN6gAEO2IxZRrwAADR0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAEP4MACVG9AARGqz8slPLzQcf//y3J//8uzf//L87//yzL//8kvv//K6z+/0Sc AAAAAAAAAAAAAAAAAAAEP4MACVG9AARGqz8slPLzQcf//y3J//8uzf//L87//yzL//8kvv//K6z+/0Sc
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
AD//wAA//8AAP//AAD//4AA//+AAf//wAH8= AD//wAA//8AAP//AAD//4AA//+AAf//wAH8=
</value> </value>
</data> </data>
</root> </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("Referer", "");
mySQL.AddField("ContentType", ""); mySQL.AddField("ContentType", "");
mySQL.AddField("Encoding", ""); mySQL.AddField("Encoding", "");
mySQL.AddField("IsFav", 0);
mySQL.AddField("Des", "");
mySQL.AddField("ClickCount", 0);//点击次数 mySQL.AddField("ClickCount", 0);//点击次数
mySQL.AddField("editTime", DateTime.Now); mySQL.AddField("editTime", DateTime.Now);
mySQL.AddField("addTime", DateTime.Now); mySQL.AddField("addTime", DateTime.Now);

View File

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

View File

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

View File

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

View File

@ -34,17 +34,16 @@
this.tabControl2 = new System.Windows.Forms.TabControl(); this.tabControl2 = new System.Windows.Forms.TabControl();
this.tabPage3 = new System.Windows.Forms.TabPage(); this.tabPage3 = new System.Windows.Forms.TabPage();
this.pictureBox1 = new System.Windows.Forms.PictureBox(); this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.RichHtml = new System.Windows.Forms.RichTextBox(); this.RichHtml = new ryControls.Controls.RichTextBox2();
this.contextMenuStripRichText1 = new ryProcessManager.hezuo.ContextMenuStripRichText();
this.tabPage12 = new System.Windows.Forms.TabPage(); this.tabPage12 = new System.Windows.Forms.TabPage();
this.Te_Format = new FastColoredTextBoxNS.FastColoredTextBox(); this.Te_Format = new FastColoredTextBoxNS.FastColoredTextBox();
this.contextMenuStripHighlightText1 = new ryProcessManager.hezuo.ContextMenuStripHighlightText(); this.contextMenuStripHighlightText1 = new ryProcessManager.hezuo.ContextMenuStripHighlightText();
this.tabPage4 = new System.Windows.Forms.TabPage(); 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.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.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.tabPreview = new System.Windows.Forms.TabPage();
this.extendedWebBrowser1 = new ExtendedWebBrowser2.ExtendedWebBrowser(); this.extendedWebBrowser1 = new ExtendedWebBrowser2.ExtendedWebBrowser();
this.groupBox3 = new System.Windows.Forms.GroupBox(); this.groupBox3 = new System.Windows.Forms.GroupBox();
@ -82,12 +81,15 @@
this.label2 = new System.Windows.Forms.Label(); this.label2 = new System.Windows.Forms.Label();
this.menuRight1 = new ryPaiban.Model.MenuRight(this.components); this.menuRight1 = new ryPaiban.Model.MenuRight(this.components);
this.BtnCtreateCShape = new ryControls.ButtonEx(); 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.timer1 = new System.Windows.Forms.Timer(this.components);
this.objectListView2 = new BrightIdeasSoftware.ObjectListView(); this.objectListView2 = new BrightIdeasSoftware.ObjectListView();
this.OlvUrl = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn())); this.OlvUrl = ((BrightIdeasSoftware.OLVColumn)(new BrightIdeasSoftware.OLVColumn()));
this.OlvName = ((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.tabControl2.SuspendLayout();
this.tabPage3.SuspendLayout(); this.tabPage3.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
@ -104,6 +106,7 @@
this.groupBox2.SuspendLayout(); this.groupBox2.SuspendLayout();
this.groupBox1.SuspendLayout(); this.groupBox1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.objectListView2)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.objectListView2)).BeginInit();
this.contextMenuStrip1.SuspendLayout();
this.SuspendLayout(); this.SuspendLayout();
// //
// ChkUrlLower // ChkUrlLower
@ -157,21 +160,19 @@
// //
// RichHtml // RichHtml
// //
this.RichHtml.BackColor = System.Drawing.Color.White;
this.RichHtml.BorderStyle = System.Windows.Forms.BorderStyle.None; 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.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.Location = new System.Drawing.Point(3, 3);
this.RichHtml.Name = "RichHtml"; this.RichHtml.Name = "RichHtml";
this.RichHtml.ReadOnly = true; this.RichHtml.OnlyInputText = true;
this.RichHtml.Size = new System.Drawing.Size(875, 274); this.RichHtml.Size = new System.Drawing.Size(875, 274);
this.RichHtml.TabIndex = 0; this.RichHtml.TabIndex = 3;
this.RichHtml.Text = ""; this.RichHtml.Text = "";
// this.RichHtml.WordWrap = false;
// contextMenuStripRichText1
//
this.contextMenuStripRichText1.Name = "contextMenuStripRichText1";
this.contextMenuStripRichText1.Size = new System.Drawing.Size(101, 164);
// //
// tabPage12 // tabPage12
// //
@ -186,7 +187,7 @@
// //
// Te_Format // 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.ContextMenuStrip = this.contextMenuStripHighlightText1;
this.Te_Format.Cursor = System.Windows.Forms.Cursors.IBeam; this.Te_Format.Cursor = System.Windows.Forms.Cursors.IBeam;
this.Te_Format.Dock = System.Windows.Forms.DockStyle.Fill; this.Te_Format.Dock = System.Windows.Forms.DockStyle.Fill;
@ -214,16 +215,19 @@
// //
// RichCookie // RichCookie
// //
this.RichCookie.BackColor = System.Drawing.Color.White;
this.RichCookie.BorderStyle = System.Windows.Forms.BorderStyle.None; 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.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.Location = new System.Drawing.Point(3, 3);
this.RichCookie.Name = "RichCookie"; this.RichCookie.Name = "RichCookie";
this.RichCookie.ReadOnly = true; this.RichCookie.OnlyInputText = true;
this.RichCookie.Size = new System.Drawing.Size(875, 274); this.RichCookie.Size = new System.Drawing.Size(875, 274);
this.RichCookie.TabIndex = 1; this.RichCookie.TabIndex = 4;
this.RichCookie.Text = ""; this.RichCookie.Text = "";
this.RichCookie.WordWrap = false;
// //
// tabPage5 // tabPage5
// //
@ -238,16 +242,19 @@
// //
// RichStatus // RichStatus
// //
this.RichStatus.BackColor = System.Drawing.Color.White;
this.RichStatus.BorderStyle = System.Windows.Forms.BorderStyle.None; 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.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.Location = new System.Drawing.Point(3, 3);
this.RichStatus.Name = "RichStatus"; this.RichStatus.Name = "RichStatus";
this.RichStatus.ReadOnly = true; this.RichStatus.OnlyInputText = true;
this.RichStatus.Size = new System.Drawing.Size(875, 274); this.RichStatus.Size = new System.Drawing.Size(875, 274);
this.RichStatus.TabIndex = 2; this.RichStatus.TabIndex = 5;
this.RichStatus.Text = ""; this.RichStatus.Text = "";
this.RichStatus.WordWrap = false;
// //
// tabPage6 // tabPage6
// //
@ -262,16 +269,19 @@
// //
// RichHeader // RichHeader
// //
this.RichHeader.BackColor = System.Drawing.Color.White;
this.RichHeader.BorderStyle = System.Windows.Forms.BorderStyle.None; 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.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.Location = new System.Drawing.Point(3, 3);
this.RichHeader.Name = "RichHeader"; this.RichHeader.Name = "RichHeader";
this.RichHeader.ReadOnly = true; this.RichHeader.OnlyInputText = true;
this.RichHeader.Size = new System.Drawing.Size(875, 274); this.RichHeader.Size = new System.Drawing.Size(875, 274);
this.RichHeader.TabIndex = 3; this.RichHeader.TabIndex = 6;
this.RichHeader.Text = ""; this.RichHeader.Text = "";
this.RichHeader.WordWrap = false;
// //
// tabPreview // tabPreview
// //
@ -340,6 +350,7 @@
this.TxtPost.BorderStyle = System.Windows.Forms.BorderStyle.None; this.TxtPost.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtPost.DetectUrls = false; this.TxtPost.DetectUrls = false;
this.TxtPost.EmptyText = "请填写Post数据"; this.TxtPost.EmptyText = "请填写Post数据";
this.TxtPost.Font = new System.Drawing.Font("Courier New", 10F);
this.TxtPost.ForeColor = System.Drawing.Color.Black; this.TxtPost.ForeColor = System.Drawing.Color.Black;
this.TxtPost.Location = new System.Drawing.Point(2, 3); this.TxtPost.Location = new System.Drawing.Point(2, 3);
this.TxtPost.Name = "TxtPost"; this.TxtPost.Name = "TxtPost";
@ -370,6 +381,7 @@
this.TxtCookie.BorderStyle = System.Windows.Forms.BorderStyle.None; this.TxtCookie.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtCookie.DetectUrls = false; this.TxtCookie.DetectUrls = false;
this.TxtCookie.EmptyText = "请填写请求时要发送的Cookie"; this.TxtCookie.EmptyText = "请填写请求时要发送的Cookie";
this.TxtCookie.Font = new System.Drawing.Font("Courier New", 10F);
this.TxtCookie.ForeColor = System.Drawing.Color.Black; this.TxtCookie.ForeColor = System.Drawing.Color.Black;
this.TxtCookie.Location = new System.Drawing.Point(2, 3); this.TxtCookie.Location = new System.Drawing.Point(2, 3);
this.TxtCookie.Name = "TxtCookie"; this.TxtCookie.Name = "TxtCookie";
@ -400,6 +412,7 @@
this.TxtInputHeader.BorderStyle = System.Windows.Forms.BorderStyle.None; this.TxtInputHeader.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtInputHeader.DetectUrls = false; this.TxtInputHeader.DetectUrls = false;
this.TxtInputHeader.EmptyText = "请填写请求时要发送的Header"; this.TxtInputHeader.EmptyText = "请填写请求时要发送的Header";
this.TxtInputHeader.Font = new System.Drawing.Font("Courier New", 10F);
this.TxtInputHeader.ForeColor = System.Drawing.Color.Black; this.TxtInputHeader.ForeColor = System.Drawing.Color.Black;
this.TxtInputHeader.Location = new System.Drawing.Point(2, 3); this.TxtInputHeader.Location = new System.Drawing.Point(2, 3);
this.TxtInputHeader.Name = "TxtInputHeader"; this.TxtInputHeader.Name = "TxtInputHeader";
@ -756,20 +769,6 @@
this.BtnCtreateCShape.UseVisualStyleBackColor = true; this.BtnCtreateCShape.UseVisualStyleBackColor = true;
this.BtnCtreateCShape.Click += new System.EventHandler(this.BtnCtreateCShape_Click); 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 // timer1
// //
this.timer1.Interval = 1000; this.timer1.Interval = 1000;
@ -783,20 +782,25 @@
this.objectListView2.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] { this.objectListView2.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
this.OlvUrl, this.OlvUrl,
this.OlvName}); this.OlvName});
this.objectListView2.ContextMenuStrip = this.contextMenuStrip1;
this.objectListView2.Cursor = System.Windows.Forms.Cursors.Default; this.objectListView2.Cursor = System.Windows.Forms.Cursors.Default;
this.objectListView2.FullRowSelect = true; this.objectListView2.FullRowSelect = true;
this.objectListView2.HideSelection = false; 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.Name = "objectListView2";
this.objectListView2.RowHeight = 25; this.objectListView2.RowHeight = 25;
this.objectListView2.ShowGroups = false; this.objectListView2.ShowGroups = false;
this.objectListView2.ShowItemToolTips = true;
this.objectListView2.Size = new System.Drawing.Size(653, 323); this.objectListView2.Size = new System.Drawing.Size(653, 323);
this.objectListView2.TabIndex = 113; this.objectListView2.TabIndex = 113;
this.objectListView2.UseCompatibleStateImageBehavior = false; this.objectListView2.UseCompatibleStateImageBehavior = false;
this.objectListView2.UseHotItem = true;
this.objectListView2.View = System.Windows.Forms.View.Details; this.objectListView2.View = System.Windows.Forms.View.Details;
this.objectListView2.Visible = false; this.objectListView2.Visible = false;
this.objectListView2.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Table1_KeyDown); this.objectListView2.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Table1_KeyDown);
this.objectListView2.Leave += new System.EventHandler(this.Table1_Leave); this.objectListView2.Leave += new System.EventHandler(this.Table1_Leave);
this.objectListView2.MouseClick += new System.Windows.Forms.MouseEventHandler(this.table1_MouseClick);
// //
// OlvUrl // OlvUrl
// //
@ -808,12 +812,48 @@
this.OlvName.Text = "名称"; this.OlvName.Text = "名称";
this.OlvName.Width = 200; 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 // FrmWebGet
// //
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(909, 620); this.ClientSize = new System.Drawing.Size(909, 620);
this.Controls.Add(this.objectListView2);
this.Controls.Add(this.TxtUrl); this.Controls.Add(this.TxtUrl);
this.Controls.Add(this.BtnCtreateCShape); this.Controls.Add(this.BtnCtreateCShape);
this.Controls.Add(this.ChkUrlLower); this.Controls.Add(this.ChkUrlLower);
@ -825,6 +865,7 @@
this.Controls.Add(this.RbPost); this.Controls.Add(this.RbPost);
this.Controls.Add(this.RbGet); this.Controls.Add(this.RbGet);
this.Controls.Add(this.label2); this.Controls.Add(this.label2);
this.Controls.Add(this.objectListView2);
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.Name = "FrmWebGet"; this.Name = "FrmWebGet";
this.TabPageContextMenuStrip = this.menuRight1; this.TabPageContextMenuStrip = this.menuRight1;
@ -849,6 +890,7 @@
this.groupBox1.ResumeLayout(false); this.groupBox1.ResumeLayout(false);
this.groupBox1.PerformLayout(); this.groupBox1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.objectListView2)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.objectListView2)).EndInit();
this.contextMenuStrip1.ResumeLayout(false);
this.ResumeLayout(false); this.ResumeLayout(false);
this.PerformLayout(); this.PerformLayout();
@ -860,14 +902,10 @@
private System.Windows.Forms.TabControl tabControl2; private System.Windows.Forms.TabControl tabControl2;
private System.Windows.Forms.TabPage tabPage3; private System.Windows.Forms.TabPage tabPage3;
private System.Windows.Forms.PictureBox pictureBox1; private System.Windows.Forms.PictureBox pictureBox1;
private System.Windows.Forms.RichTextBox RichHtml;
private System.Windows.Forms.TabPage tabPage12; private System.Windows.Forms.TabPage tabPage12;
private System.Windows.Forms.TabPage tabPage4; private System.Windows.Forms.TabPage tabPage4;
private System.Windows.Forms.RichTextBox RichCookie;
private System.Windows.Forms.TabPage tabPage5; private System.Windows.Forms.TabPage tabPage5;
private System.Windows.Forms.RichTextBox RichStatus;
private System.Windows.Forms.TabPage tabPage6; private System.Windows.Forms.TabPage tabPage6;
private System.Windows.Forms.RichTextBox RichHeader;
private System.Windows.Forms.GroupBox groupBox3; private System.Windows.Forms.GroupBox groupBox3;
private System.Windows.Forms.GroupBox groupBox2; private System.Windows.Forms.GroupBox groupBox2;
private ryControls.RyComboBox CbbReferer; private ryControls.RyComboBox CbbReferer;
@ -892,12 +930,9 @@
private System.Windows.Forms.RadioButton RbGet; private System.Windows.Forms.RadioButton RbGet;
private ryControls.TextBoxEx2 TxtUrl; private ryControls.TextBoxEx2 TxtUrl;
private System.Windows.Forms.Label label2; private System.Windows.Forms.Label label2;
private ryProcessManager.hezuo.ContextMenuStripRichText contextMenuStripRichText1;
private ryProcessManager.hezuo.ContextMenuStripHighlightText contextMenuStripHighlightText1; private ryProcessManager.hezuo.ContextMenuStripHighlightText contextMenuStripHighlightText1;
private ryPaiban.Model.MenuRight menuRight1; private ryPaiban.Model.MenuRight menuRight1;
private ryControls.ButtonEx BtnCtreateCShape; private ryControls.ButtonEx BtnCtreateCShape;
private XPTable.Models.TextColumn ColUrl;
private XPTable.Models.TextColumn ColTitle;
private System.Windows.Forms.Timer timer1; private System.Windows.Forms.Timer timer1;
private System.Windows.Forms.TabControl tabControl1; private System.Windows.Forms.TabControl tabControl1;
private System.Windows.Forms.TabPage tabPage1; private System.Windows.Forms.TabPage tabPage1;
@ -914,5 +949,14 @@
private BrightIdeasSoftware.ObjectListView objectListView2; private BrightIdeasSoftware.ObjectListView objectListView2;
private BrightIdeasSoftware.OLVColumn OlvUrl; private BrightIdeasSoftware.OLVColumn OlvUrl;
private BrightIdeasSoftware.OLVColumn OlvName; 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 FastColoredTextBoxNS;
using Newtonsoft.Json; using Newtonsoft.Json;
using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq;
using ryCommon; using ryCommon;
using ryCommonDb; using ryCommonDb;
using Sheng.Winform.Controls.PopupControl;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.ComponentModel; using System.ComponentModel;
@ -12,6 +14,8 @@ using System.Drawing;
using System.IO; using System.IO;
using System.Linq; using System.Linq;
using System.Net; using System.Net;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;
using System.Text; using System.Text;
using System.Text.RegularExpressions; using System.Text.RegularExpressions;
using System.Threading; using System.Threading;
@ -34,9 +38,54 @@ namespace 开发辅助工具.Tools
Te_Format.AutoIndentNeeded -= fctb_AutoIndentNeeded; Te_Format.AutoIndentNeeded -= fctb_AutoIndentNeeded;
Te_Format.Language = Language.JSON; Te_Format.Language = Language.JSON;
Te_Format.OnSyntaxHighlight(new TextChangedEventArgs(Te_Format.Range)); 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; }; 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) private void fctb_AutoIndentNeeded(object sender, AutoIndentEventArgs args)
{ {
//block {} //block {}
@ -456,7 +505,6 @@ namespace 开发辅助工具.Tools
} }
} }
} }
private void FrmWebGet_Load(object sender, EventArgs e) private void FrmWebGet_Load(object sender, EventArgs e)
{ {
//TxtPost.AutoWordSelection = false; //TxtPost.AutoWordSelection = false;
@ -472,8 +520,12 @@ namespace 开发辅助工具.Tools
break; 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) private void Gb_Click(object sender, EventArgs e)
{ {
objectListView2.Visible = false; objectListView2.Visible = false;
@ -611,7 +663,7 @@ namespace 开发辅助工具.Tools
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1) if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{ {
var _title = title; var _title = title;
if(_title == "") if(_title.Length==0)
{ {
var mode = url.Replace("?","&").GetStr("&a=",""); var mode = url.Replace("?","&").GetStr("&a=","");
if (mode.IndexOf("&") > 0) { mode = mode.GetStr("", "&"); } if (mode.IndexOf("&") > 0) { mode = mode.GetStr("", "&"); }
@ -687,7 +739,7 @@ namespace 开发辅助工具.Tools
} }
void SetValueByRich(ryControls.Controls.RichTextBox2 txt, string Field) 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) void SetValue2(ryControls.RyComboBox cbb, string Field)
{ {
@ -725,7 +777,7 @@ namespace 开发辅助工具.Tools
{ {
if (proc_use) { return; } if (proc_use) { return; }
string sql_where = ""; 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 #region
objectListView2.ClearObjects(); objectListView2.ClearObjects();
List<UrlInfo> list = new List<UrlInfo>(); List<UrlInfo> list = new List<UrlInfo>();
@ -734,12 +786,16 @@ namespace 开发辅助工具.Tools
if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1) if (db.ConnDb(Itrycn_Db.User_SQLConn) == 1)
{ {
db.AddParameter("SearchText", "%" + TxtUrl.Text + "%"); 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++) for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{ {
DataRow row = ds.Tables[0].Rows[i]; DataRow row = ds.Tables[0].Rows[i];
DateTime editTime = row["editTime"].ToDateTime(); 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)) if (editTime >= DateTime.Now.AddMinutes(-10))
{ {
list.Insert(0,item); list.Insert(0,item);
@ -832,12 +888,84 @@ namespace 开发辅助工具.Tools
{ {
ChkHtmlPreview.Enabled = !ChkNoPreview.Checked; 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 class UrlInfo
{ {
public int Id { get; set; }=0; public int Id { get; set; }=0;
public string Url { get; set; } = ""; public string Url { get; set; } = "";
public string Name { 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 public class UserAgentInfo
{ {

View File

@ -117,14 +117,14 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </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"> <metadata name="contextMenuStripHighlightText1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>33, 18</value> <value>33, 18</value>
</metadata> </metadata>
<metadata name="menuRight1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <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> </metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> <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"> <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@ -204,6 +204,6 @@
</value> </value>
</data> </data>
<metadata name="timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <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> </metadata>
</root> </root>

View File

@ -74,7 +74,8 @@
| System.Windows.Forms.AnchorStyles.Right))); | System.Windows.Forms.AnchorStyles.Right)));
this.TxtXML.BorderStyle = System.Windows.Forms.BorderStyle.None; this.TxtXML.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.TxtXML.DetectUrls = false; 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.ForeColor = System.Drawing.Color.Black;
this.TxtXML.Location = new System.Drawing.Point(3, 3); this.TxtXML.Location = new System.Drawing.Point(3, 3);
this.TxtXML.Name = "TxtXML"; this.TxtXML.Name = "TxtXML";
@ -82,6 +83,7 @@
this.TxtXML.Size = new System.Drawing.Size(868, 137); this.TxtXML.Size = new System.Drawing.Size(868, 137);
this.TxtXML.TabIndex = 32; this.TxtXML.TabIndex = 32;
this.TxtXML.Text = ""; this.TxtXML.Text = "";
this.TxtXML.WordWrap = false;
this.TxtXML.DoubleClick += new System.EventHandler(this.TxtXML_DoubleClick); this.TxtXML.DoubleClick += new System.EventHandler(this.TxtXML_DoubleClick);
// //
// panelEx1 // panelEx1
@ -95,7 +97,7 @@
this.panelEx1.Name = "panelEx1"; this.panelEx1.Name = "panelEx1";
this.panelEx1.Padding = new System.Windows.Forms.Padding(2); this.panelEx1.Padding = new System.Windows.Forms.Padding(2);
this.panelEx1.RoundeStyle = ryControls.RoundStyle.None; 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.TabIndex = 8;
this.panelEx1.TileBackColor = System.Drawing.Color.White; this.panelEx1.TileBackColor = System.Drawing.Color.White;
// //
@ -109,7 +111,7 @@
this.fastColoredTextBox1.ImeMode = System.Windows.Forms.ImeMode.On; this.fastColoredTextBox1.ImeMode = System.Windows.Forms.ImeMode.On;
this.fastColoredTextBox1.Location = new System.Drawing.Point(2, 2); this.fastColoredTextBox1.Location = new System.Drawing.Point(2, 2);
this.fastColoredTextBox1.Name = "fastColoredTextBox1"; 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; this.fastColoredTextBox1.TabIndex = 0;
// //
// contextMenuStripHighlightText1 // contextMenuStripHighlightText1