提交初始化
This commit is contained in:
BIN
.vs/SerialPortLogFilterin/v16/.suo
Normal file
BIN
.vs/SerialPortLogFilterin/v16/.suo
Normal file
Binary file not shown.
36
App.config
Normal file
36
App.config
Normal file
@@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
|
||||
<section name="SerialPortLogFilterin.My.MySettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
|
||||
</startup>
|
||||
<userSettings>
|
||||
<SerialPortLogFilterin.My.MySettings>
|
||||
<setting name="PortName" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="BaudRate" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="thewidth" serializeAs="String">
|
||||
<value>1309</value>
|
||||
</setting>
|
||||
<setting name="theheight" serializeAs="String">
|
||||
<value>921</value>
|
||||
</setting>
|
||||
<setting name="SplitterDistance" serializeAs="String">
|
||||
<value>619</value>
|
||||
</setting>
|
||||
<setting name="theHead" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="theRump" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
</SerialPortLogFilterin.My.MySettings>
|
||||
</userSettings>
|
||||
</configuration>
|
||||
319
Form1.Designer.vb
generated
Normal file
319
Form1.Designer.vb
generated
Normal file
@@ -0,0 +1,319 @@
|
||||
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
|
||||
Partial Class Form1
|
||||
Inherits System.Windows.Forms.Form
|
||||
|
||||
'Form 重写 Dispose,以清理组件列表。
|
||||
<System.Diagnostics.DebuggerNonUserCode()> _
|
||||
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
|
||||
Try
|
||||
If disposing AndAlso components IsNot Nothing Then
|
||||
components.Dispose()
|
||||
End If
|
||||
Finally
|
||||
MyBase.Dispose(disposing)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
'Windows 窗体设计器所必需的
|
||||
Private components As System.ComponentModel.IContainer
|
||||
|
||||
'注意: 以下过程是 Windows 窗体设计器所必需的
|
||||
'可以使用 Windows 窗体设计器修改它。
|
||||
'不要使用代码编辑器修改它。
|
||||
<System.Diagnostics.DebuggerStepThrough()> _
|
||||
Private Sub InitializeComponent()
|
||||
Me.components = New System.ComponentModel.Container()
|
||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Form1))
|
||||
Me.ToolStrip1 = New System.Windows.Forms.ToolStrip()
|
||||
Me.ToolStripSeparator6 = New System.Windows.Forms.ToolStripSeparator()
|
||||
Me.ToolStripButton6 = New System.Windows.Forms.ToolStripButton()
|
||||
Me.ToolStripButton4 = New System.Windows.Forms.ToolStripButton()
|
||||
Me.ToolStripSeparator3 = New System.Windows.Forms.ToolStripSeparator()
|
||||
Me.ToolStripSeparator4 = New System.Windows.Forms.ToolStripSeparator()
|
||||
Me.ToolStripButton7 = New System.Windows.Forms.ToolStripButton()
|
||||
Me.ToolStripComboBox1 = New System.Windows.Forms.ToolStripComboBox()
|
||||
Me.ToolStripButton8 = New System.Windows.Forms.ToolStripButton()
|
||||
Me.ToolStripComboBox2 = New System.Windows.Forms.ToolStripComboBox()
|
||||
Me.ToolStripButton1 = New System.Windows.Forms.ToolStripButton()
|
||||
Me.ToolStripSeparator2 = New System.Windows.Forms.ToolStripSeparator()
|
||||
Me.ToolStripSeparator1 = New System.Windows.Forms.ToolStripSeparator()
|
||||
Me.ToolStripButton2 = New System.Windows.Forms.ToolStripButton()
|
||||
Me.txt_Hread = New System.Windows.Forms.ToolStripTextBox()
|
||||
Me.ToolStripLabel1 = New System.Windows.Forms.ToolStripLabel()
|
||||
Me.txt_rump = New System.Windows.Forms.ToolStripTextBox()
|
||||
Me.ToolStripButton3 = New System.Windows.Forms.ToolStripButton()
|
||||
Me.ToolStripSeparator5 = New System.Windows.Forms.ToolStripSeparator()
|
||||
Me.ToolStripSeparator7 = New System.Windows.Forms.ToolStripSeparator()
|
||||
Me.ToolStripButton9 = New System.Windows.Forms.ToolStripButton()
|
||||
Me.ToolStripSeparator8 = New System.Windows.Forms.ToolStripSeparator()
|
||||
Me.ToolStripButton5 = New System.Windows.Forms.ToolStripButton()
|
||||
Me.SplitContainer1 = New System.Windows.Forms.SplitContainer()
|
||||
Me.RichTextBox1 = New System.Windows.Forms.RichTextBox()
|
||||
Me.RichTextBox2 = New System.Windows.Forms.RichTextBox()
|
||||
Me.ErrorProvider1 = New System.Windows.Forms.ErrorProvider(Me.components)
|
||||
Me.SerialPort1 = New System.IO.Ports.SerialPort(Me.components)
|
||||
Me.ToolStrip1.SuspendLayout()
|
||||
CType(Me.SplitContainer1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SplitContainer1.Panel1.SuspendLayout()
|
||||
Me.SplitContainer1.Panel2.SuspendLayout()
|
||||
Me.SplitContainer1.SuspendLayout()
|
||||
CType(Me.ErrorProvider1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'ToolStrip1
|
||||
'
|
||||
Me.ToolStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToolStripSeparator6, Me.ToolStripButton6, Me.ToolStripButton4, Me.ToolStripSeparator3, Me.ToolStripSeparator4, Me.ToolStripButton7, Me.ToolStripComboBox1, Me.ToolStripButton8, Me.ToolStripComboBox2, Me.ToolStripButton1, Me.ToolStripSeparator2, Me.ToolStripSeparator1, Me.ToolStripButton2, Me.txt_Hread, Me.ToolStripLabel1, Me.txt_rump, Me.ToolStripButton3, Me.ToolStripSeparator5, Me.ToolStripSeparator7, Me.ToolStripButton9, Me.ToolStripSeparator8, Me.ToolStripButton5})
|
||||
Me.ToolStrip1.Location = New System.Drawing.Point(0, 0)
|
||||
Me.ToolStrip1.Name = "ToolStrip1"
|
||||
Me.ToolStrip1.Size = New System.Drawing.Size(1293, 25)
|
||||
Me.ToolStrip1.TabIndex = 0
|
||||
Me.ToolStrip1.Text = "ToolStrip1"
|
||||
'
|
||||
'ToolStripSeparator6
|
||||
'
|
||||
Me.ToolStripSeparator6.Name = "ToolStripSeparator6"
|
||||
Me.ToolStripSeparator6.Size = New System.Drawing.Size(6, 25)
|
||||
'
|
||||
'ToolStripButton6
|
||||
'
|
||||
Me.ToolStripButton6.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text
|
||||
Me.ToolStripButton6.Image = CType(resources.GetObject("ToolStripButton6.Image"), System.Drawing.Image)
|
||||
Me.ToolStripButton6.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.ToolStripButton6.Name = "ToolStripButton6"
|
||||
Me.ToolStripButton6.Size = New System.Drawing.Size(60, 22)
|
||||
Me.ToolStripButton6.Tag = "1"
|
||||
Me.ToolStripButton6.Text = "清除左边"
|
||||
'
|
||||
'ToolStripButton4
|
||||
'
|
||||
Me.ToolStripButton4.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text
|
||||
Me.ToolStripButton4.Image = CType(resources.GetObject("ToolStripButton4.Image"), System.Drawing.Image)
|
||||
Me.ToolStripButton4.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.ToolStripButton4.Name = "ToolStripButton4"
|
||||
Me.ToolStripButton4.Size = New System.Drawing.Size(96, 22)
|
||||
Me.ToolStripButton4.Tag = "1"
|
||||
Me.ToolStripButton4.Text = "保存左边到文件"
|
||||
'
|
||||
'ToolStripSeparator3
|
||||
'
|
||||
Me.ToolStripSeparator3.Name = "ToolStripSeparator3"
|
||||
Me.ToolStripSeparator3.Size = New System.Drawing.Size(6, 25)
|
||||
'
|
||||
'ToolStripSeparator4
|
||||
'
|
||||
Me.ToolStripSeparator4.Name = "ToolStripSeparator4"
|
||||
Me.ToolStripSeparator4.Size = New System.Drawing.Size(6, 25)
|
||||
'
|
||||
'ToolStripButton7
|
||||
'
|
||||
Me.ToolStripButton7.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text
|
||||
Me.ToolStripButton7.Image = CType(resources.GetObject("ToolStripButton7.Image"), System.Drawing.Image)
|
||||
Me.ToolStripButton7.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.ToolStripButton7.Name = "ToolStripButton7"
|
||||
Me.ToolStripButton7.Size = New System.Drawing.Size(51, 22)
|
||||
Me.ToolStripButton7.Text = "串口名:"
|
||||
'
|
||||
'ToolStripComboBox1
|
||||
'
|
||||
Me.ToolStripComboBox1.Name = "ToolStripComboBox1"
|
||||
Me.ToolStripComboBox1.Size = New System.Drawing.Size(121, 25)
|
||||
'
|
||||
'ToolStripButton8
|
||||
'
|
||||
Me.ToolStripButton8.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text
|
||||
Me.ToolStripButton8.Image = CType(resources.GetObject("ToolStripButton8.Image"), System.Drawing.Image)
|
||||
Me.ToolStripButton8.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.ToolStripButton8.Name = "ToolStripButton8"
|
||||
Me.ToolStripButton8.Size = New System.Drawing.Size(48, 22)
|
||||
Me.ToolStripButton8.Text = "端口:"
|
||||
'
|
||||
'ToolStripComboBox2
|
||||
'
|
||||
Me.ToolStripComboBox2.Items.AddRange(New Object() {"1200", "2400", "4800", "9600", "19200", "38400", "57600", "115200", "256000", "512000", "9216000", "1000000"})
|
||||
Me.ToolStripComboBox2.Name = "ToolStripComboBox2"
|
||||
Me.ToolStripComboBox2.Size = New System.Drawing.Size(121, 25)
|
||||
'
|
||||
'ToolStripButton1
|
||||
'
|
||||
Me.ToolStripButton1.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text
|
||||
Me.ToolStripButton1.Image = CType(resources.GetObject("ToolStripButton1.Image"), System.Drawing.Image)
|
||||
Me.ToolStripButton1.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.ToolStripButton1.Name = "ToolStripButton1"
|
||||
Me.ToolStripButton1.Size = New System.Drawing.Size(60, 22)
|
||||
Me.ToolStripButton1.Text = "打开串口"
|
||||
'
|
||||
'ToolStripSeparator2
|
||||
'
|
||||
Me.ToolStripSeparator2.Name = "ToolStripSeparator2"
|
||||
Me.ToolStripSeparator2.Size = New System.Drawing.Size(6, 25)
|
||||
'
|
||||
'ToolStripSeparator1
|
||||
'
|
||||
Me.ToolStripSeparator1.Name = "ToolStripSeparator1"
|
||||
Me.ToolStripSeparator1.Size = New System.Drawing.Size(6, 25)
|
||||
'
|
||||
'ToolStripButton2
|
||||
'
|
||||
Me.ToolStripButton2.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text
|
||||
Me.ToolStripButton2.Image = CType(resources.GetObject("ToolStripButton2.Image"), System.Drawing.Image)
|
||||
Me.ToolStripButton2.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.ToolStripButton2.Name = "ToolStripButton2"
|
||||
Me.ToolStripButton2.Size = New System.Drawing.Size(55, 22)
|
||||
Me.ToolStripButton2.Text = "Head:"
|
||||
'
|
||||
'txt_Hread
|
||||
'
|
||||
Me.txt_Hread.Font = New System.Drawing.Font("Microsoft YaHei UI", 9.0!)
|
||||
Me.txt_Hread.Name = "txt_Hread"
|
||||
Me.txt_Hread.Size = New System.Drawing.Size(100, 25)
|
||||
'
|
||||
'ToolStripLabel1
|
||||
'
|
||||
Me.ToolStripLabel1.Name = "ToolStripLabel1"
|
||||
Me.ToolStripLabel1.Size = New System.Drawing.Size(45, 22)
|
||||
Me.ToolStripLabel1.Text = "Rump:"
|
||||
'
|
||||
'txt_rump
|
||||
'
|
||||
Me.txt_rump.Font = New System.Drawing.Font("Microsoft YaHei UI", 9.0!)
|
||||
Me.txt_rump.Name = "txt_rump"
|
||||
Me.txt_rump.Size = New System.Drawing.Size(100, 25)
|
||||
'
|
||||
'ToolStripButton3
|
||||
'
|
||||
Me.ToolStripButton3.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text
|
||||
Me.ToolStripButton3.Image = CType(resources.GetObject("ToolStripButton3.Image"), System.Drawing.Image)
|
||||
Me.ToolStripButton3.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.ToolStripButton3.Name = "ToolStripButton3"
|
||||
Me.ToolStripButton3.Size = New System.Drawing.Size(60, 22)
|
||||
Me.ToolStripButton3.Text = "设置过滤"
|
||||
'
|
||||
'ToolStripSeparator5
|
||||
'
|
||||
Me.ToolStripSeparator5.Name = "ToolStripSeparator5"
|
||||
Me.ToolStripSeparator5.Size = New System.Drawing.Size(6, 25)
|
||||
'
|
||||
'ToolStripSeparator7
|
||||
'
|
||||
Me.ToolStripSeparator7.Name = "ToolStripSeparator7"
|
||||
Me.ToolStripSeparator7.Size = New System.Drawing.Size(6, 25)
|
||||
'
|
||||
'ToolStripButton9
|
||||
'
|
||||
Me.ToolStripButton9.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text
|
||||
Me.ToolStripButton9.Image = CType(resources.GetObject("ToolStripButton9.Image"), System.Drawing.Image)
|
||||
Me.ToolStripButton9.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.ToolStripButton9.Name = "ToolStripButton9"
|
||||
Me.ToolStripButton9.Size = New System.Drawing.Size(96, 22)
|
||||
Me.ToolStripButton9.Tag = "2"
|
||||
Me.ToolStripButton9.Text = "保存右边到文件"
|
||||
'
|
||||
'ToolStripSeparator8
|
||||
'
|
||||
Me.ToolStripSeparator8.Name = "ToolStripSeparator8"
|
||||
Me.ToolStripSeparator8.Size = New System.Drawing.Size(6, 25)
|
||||
'
|
||||
'ToolStripButton5
|
||||
'
|
||||
Me.ToolStripButton5.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text
|
||||
Me.ToolStripButton5.Image = CType(resources.GetObject("ToolStripButton5.Image"), System.Drawing.Image)
|
||||
Me.ToolStripButton5.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||
Me.ToolStripButton5.Name = "ToolStripButton5"
|
||||
Me.ToolStripButton5.Size = New System.Drawing.Size(60, 22)
|
||||
Me.ToolStripButton5.Tag = "2"
|
||||
Me.ToolStripButton5.Text = "清除右边"
|
||||
'
|
||||
'SplitContainer1
|
||||
'
|
||||
Me.SplitContainer1.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.SplitContainer1.Location = New System.Drawing.Point(0, 25)
|
||||
Me.SplitContainer1.Name = "SplitContainer1"
|
||||
'
|
||||
'SplitContainer1.Panel1
|
||||
'
|
||||
Me.SplitContainer1.Panel1.Controls.Add(Me.RichTextBox1)
|
||||
'
|
||||
'SplitContainer1.Panel2
|
||||
'
|
||||
Me.SplitContainer1.Panel2.Controls.Add(Me.RichTextBox2)
|
||||
Me.SplitContainer1.Size = New System.Drawing.Size(1293, 857)
|
||||
Me.SplitContainer1.SplitterDistance = 619
|
||||
Me.SplitContainer1.TabIndex = 1
|
||||
'
|
||||
'RichTextBox1
|
||||
'
|
||||
Me.RichTextBox1.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.RichTextBox1.Font = New System.Drawing.Font("宋体", 10.5!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(134, Byte))
|
||||
Me.RichTextBox1.Location = New System.Drawing.Point(0, 0)
|
||||
Me.RichTextBox1.Name = "RichTextBox1"
|
||||
Me.RichTextBox1.Size = New System.Drawing.Size(619, 857)
|
||||
Me.RichTextBox1.TabIndex = 0
|
||||
Me.RichTextBox1.Text = ""
|
||||
'
|
||||
'RichTextBox2
|
||||
'
|
||||
Me.RichTextBox2.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.RichTextBox2.Font = New System.Drawing.Font("宋体", 10.5!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(134, Byte))
|
||||
Me.RichTextBox2.Location = New System.Drawing.Point(0, 0)
|
||||
Me.RichTextBox2.Name = "RichTextBox2"
|
||||
Me.RichTextBox2.Size = New System.Drawing.Size(670, 857)
|
||||
Me.RichTextBox2.TabIndex = 1
|
||||
Me.RichTextBox2.Text = ""
|
||||
'
|
||||
'ErrorProvider1
|
||||
'
|
||||
Me.ErrorProvider1.ContainerControl = Me
|
||||
'
|
||||
'SerialPort1
|
||||
'
|
||||
'
|
||||
'Form1
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 12.0!)
|
||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||
Me.ClientSize = New System.Drawing.Size(1293, 882)
|
||||
Me.Controls.Add(Me.SplitContainer1)
|
||||
Me.Controls.Add(Me.ToolStrip1)
|
||||
Me.Name = "Form1"
|
||||
Me.Text = "Form1"
|
||||
Me.ToolStrip1.ResumeLayout(False)
|
||||
Me.ToolStrip1.PerformLayout()
|
||||
Me.SplitContainer1.Panel1.ResumeLayout(False)
|
||||
Me.SplitContainer1.Panel2.ResumeLayout(False)
|
||||
CType(Me.SplitContainer1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.SplitContainer1.ResumeLayout(False)
|
||||
CType(Me.ErrorProvider1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.ResumeLayout(False)
|
||||
Me.PerformLayout()
|
||||
|
||||
End Sub
|
||||
|
||||
Friend WithEvents ToolStrip1 As ToolStrip
|
||||
Friend WithEvents ToolStripComboBox1 As ToolStripComboBox
|
||||
Friend WithEvents ToolStripButton1 As ToolStripButton
|
||||
Friend WithEvents ToolStripSeparator2 As ToolStripSeparator
|
||||
Friend WithEvents ToolStripSeparator1 As ToolStripSeparator
|
||||
Friend WithEvents ToolStripButton2 As ToolStripButton
|
||||
Friend WithEvents txt_Hread As ToolStripTextBox
|
||||
Friend WithEvents ToolStripLabel1 As ToolStripLabel
|
||||
Friend WithEvents txt_rump As ToolStripTextBox
|
||||
Friend WithEvents ToolStripButton3 As ToolStripButton
|
||||
Friend WithEvents ToolStripSeparator4 As ToolStripSeparator
|
||||
Friend WithEvents ToolStripSeparator3 As ToolStripSeparator
|
||||
Friend WithEvents ToolStripButton4 As ToolStripButton
|
||||
Friend WithEvents ToolStripSeparator6 As ToolStripSeparator
|
||||
Friend WithEvents ToolStripSeparator5 As ToolStripSeparator
|
||||
Friend WithEvents ToolStripButton6 As ToolStripButton
|
||||
Friend WithEvents ToolStripSeparator7 As ToolStripSeparator
|
||||
Friend WithEvents ToolStripButton5 As ToolStripButton
|
||||
Friend WithEvents SplitContainer1 As SplitContainer
|
||||
Friend WithEvents RichTextBox1 As RichTextBox
|
||||
Friend WithEvents RichTextBox2 As RichTextBox
|
||||
Friend WithEvents ToolStripButton7 As ToolStripButton
|
||||
Friend WithEvents ToolStripButton8 As ToolStripButton
|
||||
Friend WithEvents ToolStripComboBox2 As ToolStripComboBox
|
||||
Friend WithEvents ErrorProvider1 As ErrorProvider
|
||||
Friend WithEvents SerialPort1 As IO.Ports.SerialPort
|
||||
Friend WithEvents ToolStripButton9 As ToolStripButton
|
||||
Friend WithEvents ToolStripSeparator8 As ToolStripSeparator
|
||||
End Class
|
||||
265
Form1.resx
Normal file
265
Form1.resx
Normal file
@@ -0,0 +1,265 @@
|
||||
<?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="ToolStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>17, 17</value>
|
||||
</metadata>
|
||||
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||
<data name="ToolStripButton6.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="ToolStripButton4.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="ToolStripButton7.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="ToolStripButton8.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="ToolStripButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="ToolStripButton2.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="ToolStripButton3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="ToolStripButton9.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<data name="ToolStripButton5.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
|
||||
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
|
||||
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
|
||||
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
|
||||
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
|
||||
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
|
||||
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
|
||||
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
|
||||
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
|
||||
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
|
||||
</value>
|
||||
</data>
|
||||
<metadata name="ErrorProvider1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>129, 17</value>
|
||||
</metadata>
|
||||
<metadata name="SerialPort1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||
<value>266, 17</value>
|
||||
</metadata>
|
||||
</root>
|
||||
353
Form1.vb
Normal file
353
Form1.vb
Normal file
@@ -0,0 +1,353 @@
|
||||
Imports System.IO
|
||||
Imports System.IO.Ports
|
||||
Imports System.Text
|
||||
Imports System.Threading
|
||||
|
||||
Public Class Form1
|
||||
Public filedic As Dictionary(Of String, StreamWriternode)
|
||||
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
'设置窗体标题为项目名称加版本
|
||||
Me.Text = Application.ProductName & " " & Application.ProductVersion
|
||||
|
||||
filedic = New Dictionary(Of String, StreamWriternode)
|
||||
recvBufferli = New List(Of Byte)
|
||||
|
||||
'刷新My.Settings的值
|
||||
My.Settings.Reload()
|
||||
'设置窗体参数
|
||||
Me.Width = My.Settings.thewidth
|
||||
Me.Height = My.Settings.theheight
|
||||
SplitContainer1.SplitterDistance = My.Settings.SplitterDistance
|
||||
'设置串口参数
|
||||
ToolStripComboBox1.Text = My.Settings.PortName
|
||||
ToolStripComboBox2.Text = My.Settings.BaudRate.ToString
|
||||
|
||||
'设置匹配参数
|
||||
txt_Hread.Text = My.Settings.theHead
|
||||
txt_rump.Text = My.Settings.theRump
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Private Sub RText_OutputText_TextChanged(sender As Object, e As EventArgs) Handles RichTextBox1.TextChanged, RichTextBox2.TextChanged
|
||||
'获取sender
|
||||
Dim RText_OutputText As RichTextBox = DirectCast(sender, RichTextBox)
|
||||
|
||||
If RText_OutputText.Lines.Length > 100000 Then
|
||||
Dim lines() As String = RText_OutputText.Lines
|
||||
Dim newLines(lines.Length - 1000) As String
|
||||
Array.Copy(lines, 1000, newLines, 0, newLines.Length)
|
||||
End If
|
||||
'If RText_OutputText.Scrollcaret() Then
|
||||
RText_OutputText.ScrollToCaret()
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStripButton6_Click(sender As Object, e As EventArgs) Handles ToolStripButton6.Click, ToolStripButton5.Click
|
||||
'获取按钮
|
||||
Dim ToolStripButton As ToolStripButton = DirectCast(sender, ToolStripButton)
|
||||
'获取tag
|
||||
Dim mtag As String = ToolStripButton.Tag.ToString
|
||||
'如果mtag为1
|
||||
If mtag = "1" Then
|
||||
RichTextBox1.Clear()
|
||||
'如果 mtag为2
|
||||
ElseIf mtag = "2" Then
|
||||
RichTextBox2.Clear()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStripComboBox1_DropDown(sender As Object, e As EventArgs) Handles ToolStripComboBox1.DropDown
|
||||
ToolStripComboBox1.Items.Clear()
|
||||
ToolStripComboBox1.Items.AddRange(SerialPort.GetPortNames())
|
||||
End Sub
|
||||
Public isread As Boolean = False '串口关闭标志
|
||||
Public isListen As Boolean = False '串口等待关闭标志
|
||||
Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
|
||||
If ToolStripButton1.Text = "关闭连接" Then
|
||||
ToolStripButton1.Text = "打开连接"
|
||||
ToolStripButton1.BackColor = Color.Transparent
|
||||
ToolStripComboBox1.Enabled = True
|
||||
ToolStripComboBox2.Enabled = True
|
||||
SharedFunction.CloseSerial(SerialPort1, isread, isListen)
|
||||
|
||||
Else
|
||||
|
||||
ToolStripComboBox1.Enabled = False
|
||||
ToolStripComboBox2.Enabled = False
|
||||
ToolStripButton1.Text = "关闭连接"
|
||||
ToolStripButton1.BackColor = Color.OrangeRed
|
||||
Dim vmbaud As Integer = 0
|
||||
isread = False
|
||||
isListen = False
|
||||
'判断端口号是否合法
|
||||
If String.IsNullOrEmpty(ToolStripComboBox1.Text) Then
|
||||
MsgBox("请选择端口号!")
|
||||
ToolStripButton1_Click(Nothing, Nothing)
|
||||
Return
|
||||
End If
|
||||
'判断波特率是否合法
|
||||
If String.IsNullOrEmpty(ToolStripComboBox2.Text) OrElse Not Integer.TryParse(ToolStripComboBox2.Text, vmbaud) Then
|
||||
MsgBox("请选择波特率!")
|
||||
ToolStripButton1_Click(Nothing, Nothing)
|
||||
Return
|
||||
End If
|
||||
|
||||
'打开串口
|
||||
If SharedFunction.OpenSerial(SerialPort1, ToolStripComboBox1.Text, vmbaud) Then
|
||||
Else
|
||||
MsgBox("串口打开失败!")
|
||||
ToolStripButton1_Click(Nothing, Nothing)
|
||||
Return
|
||||
End If
|
||||
|
||||
End If
|
||||
End Sub
|
||||
Private _recvBuffer(4095) As Byte
|
||||
Public recvBufferli As List(Of Byte)
|
||||
Public recvBufferliindex As Integer = 0
|
||||
Private Sub SerialPort1_DataReceived(sender As Object, e As IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived
|
||||
If isread Then Return
|
||||
|
||||
isListen = True
|
||||
Static bytes As Integer = 0
|
||||
Dim sp As SerialPort = DirectCast(sender, SerialPort)
|
||||
|
||||
Try
|
||||
|
||||
|
||||
Do
|
||||
bytes = sp.BytesToRead
|
||||
If bytes <= 0 Then Exit Sub
|
||||
|
||||
|
||||
Dim buf(bytes - 1) As Byte
|
||||
sp.Read(buf, 0, bytes)
|
||||
recvBufferli.AddRange(buf)
|
||||
|
||||
|
||||
Thread.Sleep(5)
|
||||
Loop While sp.BytesToRead > 0
|
||||
If recvBufferli.Count > 0 Then
|
||||
Dim buf(recvBufferli.Count - 1) As Byte
|
||||
Array.Copy(recvBufferli.ToArray, 0, buf, 0, buf.Length)
|
||||
recvBufferli.Clear()
|
||||
Dim ndate As DateTime = DateTime.Now
|
||||
'AddTimeStamps
|
||||
Dim readstr1 As String = Encoding.ASCII.GetString(buf)
|
||||
'以回车换行切割readstr
|
||||
Dim readstrs() As String = readstr1.Trim.Split(vbCrLf)
|
||||
For Each readstr In readstrs
|
||||
readstr = readstr.Trim
|
||||
If String.IsNullOrEmpty(readstr) Then Continue For
|
||||
Dim RuningLognode As RuningLogConfig = New RuningLogConfig($"{ndate.ToString("yyyy-MM-dd HH:mm:ss:fff")}RX:{readstr}")
|
||||
RuningLog.OutputLogsToTheControl(RichTextBox1, RuningLognode, 1)
|
||||
|
||||
|
||||
If filedic.ContainsKey("1") AndAlso filedic("1").IsWriter Then
|
||||
filedic("1").WriteData(RuningLognode.logstr)
|
||||
End If
|
||||
|
||||
FilterRecvData(readstr, RuningLognode)
|
||||
Next
|
||||
|
||||
|
||||
'G_CommunicationProtocol.ProcessRecvData(buf)
|
||||
|
||||
End If
|
||||
|
||||
isListen = False
|
||||
Catch ex As Exception
|
||||
isListen = False
|
||||
RuningLog.OutputLogsToTheControl(RichTextBox1, New RuningLogConfig($"串口接收数据失败,原因:{ex.Message}", Color.Red), 1)
|
||||
'AppendTipText($"串口接收数据失败,原因:{ex.Message}", Color.Red)
|
||||
'G_RichTextPrint.AddQueue(RichTextBox1, New RichTextNodeConfig($"串口接收数据失败,原因:{ex.Message}", Color.Red), 1)
|
||||
'RichTextPrint.OutputLogsToTheControl(m_Control, New RuningLogConfig($"串口接收数据失败,原因:{ex.Message}", Color.Red), 1)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
'将读取的数据写入到文本函数
|
||||
|
||||
|
||||
'过滤串口接收数据函数
|
||||
Private Sub FilterRecvData(readstr As String, RuningLognode As RuningLogConfig)
|
||||
|
||||
'判断是否需要头部过滤
|
||||
If Not String.IsNullOrEmpty(t_Hread) Then
|
||||
If Not readstr.StartsWith(t_Hread) Then
|
||||
Return
|
||||
End If
|
||||
End If
|
||||
'判断是否需要尾部过滤
|
||||
If Not String.IsNullOrEmpty(t_rump) Then
|
||||
If Not readstr.EndsWith(t_rump) Then
|
||||
Return
|
||||
End If
|
||||
End If
|
||||
|
||||
If String.IsNullOrEmpty(t_rump) AndAlso String.IsNullOrEmpty(t_Hread) Then Return
|
||||
'执行其他操作
|
||||
RuningLog.OutputLogsToTheControl(RichTextBox2, RuningLognode, 1)
|
||||
If filedic.ContainsKey("2") AndAlso filedic("2").IsWriter Then
|
||||
filedic("2").WriteData(RuningLognode.logstr)
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Public t_Hread As String
|
||||
Public t_rump As String
|
||||
Private Sub ToolStripButton3_Click(sender As Object, e As EventArgs) Handles ToolStripButton3.Click
|
||||
'If String.IsNullOrEmpty(txt_Hread.Text) AndAlso String.IsNullOrEmpty(txt_rump.Text) Then
|
||||
' MsgBox("!")
|
||||
' Return
|
||||
'End If
|
||||
If ToolStripButton3.Text.Equals("设置过滤") Then
|
||||
ToolStripButton3.Text = "取消过滤"
|
||||
t_Hread = txt_Hread.Text
|
||||
t_rump = txt_rump.Text
|
||||
Else
|
||||
ToolStripButton3.Text = "设置过滤"
|
||||
t_Hread = ""
|
||||
t_rump = ""
|
||||
End If
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub ToolStripButton4_Click(sender As Object, e As EventArgs) Handles ToolStripButton9.Click, ToolStripButton4.Click
|
||||
'获取按钮
|
||||
Dim btn As ToolStripButton = DirectCast(sender, ToolStripButton)
|
||||
'获取按钮tag
|
||||
Dim mtag As String = btn.Tag
|
||||
Dim iswriter As Boolean = False
|
||||
If mtag.Equals("1") Then
|
||||
If btn.Text.Equals("保存左边到文件") Then
|
||||
btn.Text = "取消保存左边到文件"
|
||||
iswriter = True
|
||||
Else
|
||||
btn.Text = "保存左边到文件"
|
||||
iswriter = False
|
||||
End If
|
||||
ElseIf mtag.Equals("2") Then
|
||||
If btn.Text.Equals("保存右边到文件") Then
|
||||
btn.Text = "取消保存右边到文件"
|
||||
iswriter = True
|
||||
Else
|
||||
btn.Text = "保存右边到文件"
|
||||
iswriter = False
|
||||
End If
|
||||
Else
|
||||
Return
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
'判断tag是否为1
|
||||
|
||||
SaveTextFileWithTime(mtag, iswriter)
|
||||
|
||||
|
||||
End Sub
|
||||
'以时间为文件名创建文本 并返回追加写入对象
|
||||
Private Sub SaveTextFileWithTime(mtag As String, iswriter As Boolean)
|
||||
|
||||
If iswriter Then
|
||||
Dim dirstr As String = "其他"
|
||||
If mtag.Equals("1") Then
|
||||
dirstr = "原文日志"
|
||||
ElseIf mtag.Equals("2") Then
|
||||
dirstr = "过滤日志"
|
||||
End If
|
||||
|
||||
Dim filename As String = DateTime.Now.ToString("yyyy-MM-dd_HH-mm-ss") & ".txt"
|
||||
|
||||
Dim filepath As String = Application.StartupPath & $"\{dirstr}\" & filename
|
||||
|
||||
If Not Directory.Exists(Application.StartupPath & $"\{dirstr}\") Then
|
||||
Directory.CreateDirectory(Application.StartupPath & $"\{dirstr}\")
|
||||
End If
|
||||
|
||||
If filedic.ContainsKey(mtag) Then
|
||||
filedic(mtag).SwitchFile(filepath)
|
||||
filedic(mtag).SetIsWriter(iswriter)
|
||||
Else
|
||||
filedic.Add(mtag, New StreamWriternode(filepath))
|
||||
filedic(mtag).SetIsWriter(iswriter)
|
||||
End If
|
||||
Else
|
||||
If filedic.ContainsKey(mtag) Then
|
||||
filedic(mtag).SetIsWriter(iswriter)
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
Private Sub Form1_FormClosed(sender As Object, e As FormClosedEventArgs) Handles MyBase.FormClosed
|
||||
'设置My.Settings
|
||||
My.Settings.thewidth = Width
|
||||
My.Settings.theheight = Height
|
||||
|
||||
My.Settings.theHead = txt_Hread.Text
|
||||
My.Settings.theRump = txt_rump.Text
|
||||
|
||||
My.Settings.SplitterDistance = SplitContainer1.SplitterDistance
|
||||
My.Settings.PortName = ToolStripComboBox1.Text
|
||||
My.Settings.BaudRate = ToolStripComboBox2.Text
|
||||
|
||||
'保存My.Settings
|
||||
My.Settings.Save()
|
||||
|
||||
'遍历filedic 并关闭StreamWriter
|
||||
For Each item In filedic
|
||||
item.Value.SetIsWriter(False)
|
||||
Next
|
||||
End Sub
|
||||
End Class
|
||||
Public Class StreamWriternode
|
||||
Public IsWriter As Boolean
|
||||
Public sw As StreamWriter
|
||||
Sub New(filepath As String)
|
||||
sw = New StreamWriter(filepath, True, Encoding.UTF8)
|
||||
End Sub
|
||||
|
||||
'设置写入标志
|
||||
Sub SetIsWriter(iswmriter As Boolean)
|
||||
IsWriter = iswmriter
|
||||
If Not IsWriter Then
|
||||
If sw IsNot Nothing Then
|
||||
sw.Close()
|
||||
End If
|
||||
End If
|
||||
|
||||
End Sub
|
||||
'写入数据
|
||||
Sub WriteData(data As String)
|
||||
If IsWriter Then
|
||||
'xie入数据
|
||||
sw.WriteLine(data)
|
||||
'保存
|
||||
sw.Flush()
|
||||
|
||||
End If
|
||||
End Sub
|
||||
'切换写入文档
|
||||
Sub SwitchFile(filepath As String)
|
||||
'判断sw是否为空
|
||||
If sw IsNot Nothing Then
|
||||
sw.Close()
|
||||
End If
|
||||
sw = New StreamWriter(filepath, True, Encoding.UTF8)
|
||||
|
||||
End Sub
|
||||
'判断sw是否为空
|
||||
|
||||
|
||||
End Class
|
||||
123
Log/RuningLog.vb
Normal file
123
Log/RuningLog.vb
Normal file
@@ -0,0 +1,123 @@
|
||||
Imports System.Text
|
||||
|
||||
Public Class RuningLog
|
||||
|
||||
Public Shared level As Integer = 1 '日志级别 0:不输出日志 1:输出日志2:输出基础日志和错误信息
|
||||
Delegate Function Deleg_OutputLogsToTheControl(c As Control, config As RuningLogConfig, Controltype As Integer) As Boolean
|
||||
'输出日志到控件
|
||||
''' <summary>
|
||||
''' ''输出日志到控件
|
||||
''' </summary>
|
||||
''' <param name="c">控件 </param>
|
||||
''' <param name="config">日志</param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function OutputLogsToTheControl(c As Control, config As RuningLogConfig, Controltype As Integer) As Boolean
|
||||
Try
|
||||
If c.InvokeRequired Then
|
||||
Dim dev As New Deleg_OutputLogsToTheControl(AddressOf OutputLogsToTheControl)
|
||||
c.Invoke(dev, New Object() {c, config, Controltype})
|
||||
Else
|
||||
If Controltype >= level Then
|
||||
Dim nc As RichTextBox = c
|
||||
'获取富文本字符串末端位置
|
||||
Dim index As Integer = nc.TextLength
|
||||
If (Not IsNothing(config.strdata)) AndAlso config.strdata.Length > 0 Then
|
||||
config.logstr = config.logstr & DataProcessing.ByteToString2(config.strdata)
|
||||
End If
|
||||
|
||||
Dim strtxt = config.logstr & vbCrLf
|
||||
'设置光标位置
|
||||
'nc.SelectionStart = index
|
||||
'添加文本
|
||||
nc.AppendText(strtxt)
|
||||
'设置选择区域
|
||||
'nc.Select(index, strtxt.Length)
|
||||
''设置选择区域颜色
|
||||
'nc.SelectionColor = config.logstrColor
|
||||
''设置选择区域字体
|
||||
'nc.SelectionFont = config.logstrFont
|
||||
''取消选中区域
|
||||
'nc.DeselectAll()
|
||||
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
|
||||
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'字符串附加时间戳
|
||||
Public Shared Function AddTimeStamps(str As String) As String
|
||||
Return Now.ToString("yyyy-MM-dd HH:mm:ss:fff") & " " & str
|
||||
End Function
|
||||
Public Shared Function AddTimeStamps(ndate As Date, str As String) As String
|
||||
Return ndate.ToString("yyyy-MM-dd HH:mm:ss:fff") & " " & str
|
||||
End Function
|
||||
|
||||
|
||||
End Class
|
||||
Public Class RuningLogConfig
|
||||
'日志信息
|
||||
Public logstr As String
|
||||
'日志信息颜色
|
||||
Public logstrColor As Color
|
||||
'日志信息字体
|
||||
Public logstrFont As Font
|
||||
'日志信息字体大小
|
||||
'Public logstrFontSize As Integer
|
||||
''日志信息字体粗细
|
||||
'Public logstrFontBold As Boolean
|
||||
''日志信息字体斜体
|
||||
'Public logstrFontItalic As Boolean
|
||||
''日志信息字体下划线
|
||||
'Public logstrFontUnderline As Boolean
|
||||
''日志信息字体删除线
|
||||
'Public logstrFontStrikeout As Boolean
|
||||
''日志信息字体对齐方式
|
||||
'Public logstrFontAlign As StringAlignment
|
||||
'日志信息字体背景色
|
||||
Public logstrFontBackColor As Color
|
||||
Public strdata As Byte()
|
||||
|
||||
''' <summary>
|
||||
''' 文本、颜色、Font
|
||||
''' </summary>
|
||||
''' <param name="args"></param>
|
||||
Sub New(ParamArray args() As Object)
|
||||
If args.Length > 0 Then
|
||||
logstr = args(0).ToString
|
||||
|
||||
'If args.Length > 1 Then
|
||||
|
||||
' logstrColor = args(1)
|
||||
' If args.Length > 2 Then
|
||||
' logstrFont = args(2)
|
||||
' Else
|
||||
' logstrFont = New Font("宋体", 12)
|
||||
|
||||
' End If
|
||||
|
||||
' If args.Length > 3 Then
|
||||
' strdata = args(3)
|
||||
' Else
|
||||
' strdata = Nothing
|
||||
' End If
|
||||
|
||||
'Else
|
||||
' logstrColor = Color.Black
|
||||
'End If
|
||||
Else
|
||||
logstr = "输空文本"
|
||||
'logstrColor = Color.Black
|
||||
'logstrFont = New Font("宋体", 12)
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
391
Mode/DataProcessing.vb
Normal file
391
Mode/DataProcessing.vb
Normal file
@@ -0,0 +1,391 @@
|
||||
Imports System.IO
|
||||
Imports System.Net
|
||||
Imports System.Net.NetworkInformation
|
||||
Imports System.Net.Sockets
|
||||
Imports System.Security.Cryptography
|
||||
Imports System.Text
|
||||
Imports System.Threading
|
||||
Imports System.ComponentModel
|
||||
Imports System.Reflection
|
||||
Imports Newtonsoft.Json
|
||||
|
||||
Public Class DataProcessing
|
||||
|
||||
|
||||
|
||||
''' <summary>
|
||||
''' 端口号转换为Byte数组
|
||||
''' </summary>
|
||||
''' <param name="port"></param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function GetPortToBytes(port As String)
|
||||
Dim bport As Integer = CInt(port)
|
||||
Dim ports() As Byte = IntToByteLB(bport)
|
||||
|
||||
Return ports
|
||||
End Function
|
||||
|
||||
'字符串转byte 数组
|
||||
Public Shared Function GetBytesFromStr(str As String) As Byte()
|
||||
Return Encoding.ASCII.GetBytes(str)
|
||||
End Function
|
||||
'bytes转字符串
|
||||
Public Shared Function GetStrFromBytes(bytes() As Byte) As String
|
||||
Return Encoding.ASCII.GetString(bytes)
|
||||
End Function
|
||||
|
||||
'计算数组CRC16校验
|
||||
|
||||
Public Shared Function GetCRC16(data() As Byte) As Integer
|
||||
Dim crc As Integer = &HFFFF
|
||||
Dim i As Integer
|
||||
Dim j As Integer
|
||||
|
||||
For i = 0 To data.Length - 1
|
||||
crc = crc Xor data(i)
|
||||
For j = 0 To 7
|
||||
If (crc And &H1) <> 0 Then
|
||||
crc = (crc >> 1) Xor &HA001
|
||||
Else
|
||||
crc = crc >> 1
|
||||
End If
|
||||
Next
|
||||
Next
|
||||
|
||||
Return crc
|
||||
End Function
|
||||
|
||||
''' <summary>
|
||||
''' Int转2个字节Byte
|
||||
''' 低字节在前,高字节在后
|
||||
''' </summary>
|
||||
''' <param name="i"></param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function IntToByteLB(ByVal i As Integer) As Byte()
|
||||
Dim btemp() As Byte = {0, 0}
|
||||
Dim b() As Byte = BitConverter.GetBytes(i)
|
||||
btemp(0) = b(1)
|
||||
btemp(1) = b(0)
|
||||
Return btemp
|
||||
End Function
|
||||
''' <summary>
|
||||
''' Int转4个字节Byte
|
||||
''' 低字节在前,高字节在后
|
||||
''' </summary>
|
||||
''' <param name="i"></param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function IntToByteLxxB(ByVal i As Integer) As Byte()
|
||||
Dim btemp() As Byte = {0, 0, 0, 0}
|
||||
Dim b() As Byte = BitConverter.GetBytes(i)
|
||||
btemp(0) = b(3)
|
||||
btemp(1) = b(2)
|
||||
btemp(2) = b(1)
|
||||
btemp(3) = b(0)
|
||||
Return btemp
|
||||
End Function
|
||||
Public Shared Function IntToByteHxxB(ByVal i As Integer) As Byte()
|
||||
Dim btemp() As Byte = {0, 0, 0, 0}
|
||||
Dim b() As Byte = BitConverter.GetBytes(i)
|
||||
btemp(0) = b(0)
|
||||
btemp(1) = b(1)
|
||||
btemp(2) = b(2)
|
||||
btemp(3) = b(3)
|
||||
Return btemp
|
||||
End Function
|
||||
|
||||
|
||||
''' <summary>
|
||||
''' Int转2个字节Byte
|
||||
''' 高字节在前,低字节在后
|
||||
''' </summary>
|
||||
''' <param name="i"></param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function IntToByteHB(ByVal i As Integer) As Byte()
|
||||
Dim btemp() As Byte = {0, 0}
|
||||
Dim b() As Byte = BitConverter.GetBytes(i)
|
||||
btemp(0) = b(0)
|
||||
btemp(1) = b(1)
|
||||
Return btemp
|
||||
End Function
|
||||
|
||||
|
||||
''' <summary>
|
||||
''' 获取文件的MD5值
|
||||
''' 返回Byte数组值
|
||||
''' </summary>
|
||||
''' <param name="filepath">文件路径</param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function GetMd5(filepath As String) As Byte()
|
||||
Dim FileStr As FileStream = New FileStream(filepath, FileMode.Open, FileAccess.Read, FileShare.Read)
|
||||
Dim data(FileStr.Length - 1) As Byte
|
||||
FileStr.Read(data, 0, data.Length)
|
||||
|
||||
Dim md5s As Byte() = MD5.Create().ComputeHash(data)
|
||||
'Dim fileMd5 As New StringBuilder()
|
||||
'Dim i As Integer
|
||||
'For i = 0 To md5s.Length - 1
|
||||
' fileMd5.Append(md5s(i).ToString("x2"))
|
||||
'Next
|
||||
|
||||
'Console.WriteLine($"MD5:{fileMd5}")
|
||||
|
||||
Return md5s
|
||||
End Function
|
||||
|
||||
|
||||
''' <summary>
|
||||
''' 获取文件的MD5值
|
||||
''' 返回String字符串
|
||||
''' </summary>
|
||||
''' <param name="filepath">文件路径</param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function GetMd5String(filepath As String) As String
|
||||
Dim FileStr As FileStream = New FileStream(filepath, FileMode.Open, FileAccess.Read, FileShare.Read)
|
||||
Dim data(FileStr.Length) As Byte
|
||||
FileStr.Read(data, 0, data.Length)
|
||||
|
||||
Dim md5s As Byte() = MD5.Create().ComputeHash(data)
|
||||
Dim fileMd5 As New StringBuilder()
|
||||
Dim i As Integer
|
||||
For i = 0 To md5s.Length - 1
|
||||
fileMd5.Append(md5s(i).ToString("x2"))
|
||||
Next
|
||||
|
||||
Console.WriteLine($"MD5:{fileMd5}")
|
||||
|
||||
Return fileMd5.ToString()
|
||||
End Function
|
||||
|
||||
''' <summary>
|
||||
''' 获取本地可用IP
|
||||
''' </summary>
|
||||
''' <returns></returns>
|
||||
Public Shared Function GetLocalIp() As List(Of IPAddress)
|
||||
Dim address() As IPAddress
|
||||
Dim destAddress As New List(Of IPAddress)
|
||||
address = Dns.GetHostEntry(Dns.GetHostName()).AddressList
|
||||
For Each pAddress As IPAddress In address
|
||||
If pAddress.AddressFamily = AddressFamily.InterNetwork Then
|
||||
destAddress.Add(pAddress)
|
||||
End If
|
||||
Next
|
||||
Return destAddress
|
||||
End Function
|
||||
''' <summary>
|
||||
''' Byte数组转字符串
|
||||
''' </summary>
|
||||
''' <param name="databuff"></param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function ByteToString(databuff() As Byte)
|
||||
Dim strData As String = String.Empty
|
||||
For i = 0 To databuff.Length - 1
|
||||
strData &= $" {Hex(databuff(i)).PadLeft(2, "0"c)}"
|
||||
Next
|
||||
Return strData
|
||||
End Function
|
||||
Public Shared Function ByteToString2(databuff() As Byte)
|
||||
Dim strData As String = String.Empty
|
||||
For i = 0 To databuff.Length - 1
|
||||
strData &= $" {ByteToHex1(databuff(i)).PadLeft(2, "0"c)}"
|
||||
Next
|
||||
Return strData
|
||||
End Function
|
||||
|
||||
'将16进制字符串转换为字节数组
|
||||
Public Shared Function HexStringToByteArray(hex As String) As Byte()
|
||||
|
||||
Dim bytes As New List(Of Byte)
|
||||
hex = hex.Replace(" ", "").Trim.ToUpper()
|
||||
For i As Integer = 0 To hex.Length - 1 Step 2
|
||||
Dim hexByte As String = hex.Substring(i, 2)
|
||||
bytes.Add(Convert.ToByte(hexByte, 16))
|
||||
Next
|
||||
Return bytes.ToArray()
|
||||
End Function
|
||||
|
||||
'将字节数组转换为16进制字符串
|
||||
Public Shared Function ByteArrayToHexString(bytes As Byte()) As String
|
||||
If bytes Is Nothing OrElse bytes.Length = 0 Then Return ""
|
||||
Dim hex As String = ""
|
||||
For Each b As Byte In bytes
|
||||
hex += b.ToString("X2") & " "
|
||||
Next
|
||||
Return hex.Trim()
|
||||
|
||||
End Function
|
||||
'byte 转16进制字符串
|
||||
Public Shared Function ByteToHex1(ByVal b As Byte) As String
|
||||
Return b.ToString("X2")
|
||||
End Function
|
||||
'16进制字符串 转byte数组
|
||||
'Public Shared Function HexToByte(ByVal hex As String) As Byte()
|
||||
' Dim result As Byte() = New Byte(hex.Length / 2 - 1) {}
|
||||
' For i As Integer = 0 To hex.Length - 1 Step 2
|
||||
' result(i / 2) = Convert.ToByte(hex.Substring(i, 2), 16)
|
||||
|
||||
' Next
|
||||
'End Function
|
||||
|
||||
|
||||
|
||||
''' <summary>
|
||||
''' 等待回复
|
||||
''' </summary>
|
||||
''' <param name="isReply">是否回复标志位</param>
|
||||
''' <param name="TimeOut">超时时间</param>
|
||||
Public Shared Sub WaitReply(isReply As Boolean, TimeOut As Integer) 'ByRef
|
||||
Dim tick As Integer
|
||||
Dim startTick As Integer = My.Computer.Clock.TickCount
|
||||
isReply = False
|
||||
While isReply = False AndAlso tick <= TimeOut
|
||||
Thread.Sleep(3)
|
||||
tick = My.Computer.Clock.TickCount - startTick
|
||||
Application.DoEvents()
|
||||
End While
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
''' <summary>
|
||||
''' 延时N秒
|
||||
''' </summary>
|
||||
''' <param name="HowLong">延时时间值</param>
|
||||
Public Shared Sub PauseWait(ByVal HowLong As Long)
|
||||
Dim tick As Long
|
||||
tick = My.Computer.Clock.TickCount
|
||||
Do
|
||||
My.Application.DoEvents()
|
||||
Loop Until tick + HowLong < My.Computer.Clock.TickCount
|
||||
End Sub
|
||||
|
||||
''' <summary>
|
||||
''' IP地址转换为Byte数组
|
||||
''' </summary>
|
||||
''' <param name="addr"></param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function GetAddressToBytes(addr As String)
|
||||
Dim iadd() As String = addr.Split(New Char() {"."c}, StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim address(3) As Byte
|
||||
address(0) = iadd(0) '例:192
|
||||
address(1) = iadd(1) '例:168
|
||||
address(2) = iadd(2)
|
||||
address(3) = iadd(3)
|
||||
|
||||
Return address
|
||||
End Function
|
||||
|
||||
''' <summary>
|
||||
''' 获取字符串的MD5值
|
||||
''' </summary>
|
||||
''' <param name="str">需要求MD5的原文字符串</param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function GetStringMd5(str As String) As String
|
||||
Dim md5Hasher As New MD5CryptoServiceProvider()
|
||||
Dim data As Byte() = md5Hasher.ComputeHash(Encoding.UTF8.GetBytes(str))
|
||||
Dim fileMd5 As New StringBuilder()
|
||||
Dim i As Integer
|
||||
For i = 0 To data.Length - 1
|
||||
fileMd5.Append(data(i).ToString("X2"))
|
||||
Next
|
||||
|
||||
Return fileMd5.ToString()
|
||||
End Function
|
||||
|
||||
|
||||
''' <summary>
|
||||
''' 分块函数
|
||||
''' 计算Byte数组的块数
|
||||
''' </summary>
|
||||
''' <param name="databuff"></param>
|
||||
''' <param name="size"></param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function GetBlocks(databuff As Byte(), size As Integer) As Integer
|
||||
Dim blockCount As Integer = databuff.Length \ size
|
||||
If databuff.Length Mod size > 0 Then
|
||||
blockCount += 1
|
||||
End If
|
||||
Return blockCount
|
||||
End Function
|
||||
|
||||
|
||||
''' <summary>
|
||||
''' 字符串转换Byte数组
|
||||
''' 字符串为连续且不包含任意字符的字符串
|
||||
''' </summary>
|
||||
''' <param name="str"></param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function GetStringToDataByte(str As String) As Byte()
|
||||
Dim dataList As New List(Of Byte)
|
||||
|
||||
For index As Integer = 0 To str.Length - 1 Step 2
|
||||
dataList.Add($"&H{str.Substring(index, 2)}")
|
||||
Next
|
||||
|
||||
Return dataList.ToArray
|
||||
End Function
|
||||
|
||||
''' <summary>
|
||||
''' 把UNIX时间戳转换为标准时间
|
||||
''' </summary>
|
||||
''' <param name="intTime">要转换的UNIX时间戳</param>
|
||||
''' <param name="ime">时区</param>
|
||||
''' <returns>intTime所代表的标准时间</returns>
|
||||
Public Shared Function FromUnixTime(intTime As Long, ime As Long) As Date
|
||||
'If intTime Is Nothing Or Not IsNumeric(intTime) Then
|
||||
' FromUnixTime = Now()
|
||||
' Exit Function
|
||||
'End If
|
||||
'If intTime Is Nothing Or Not IsNumeric(intTimeZone) Then intTimeZone = 0
|
||||
'FromUnixTime = DateAdd("s", intTime, "1970-1-1 0:0:0")
|
||||
'FromUnixTime = DateAdd("h", intTimeZone, FromUnixTime)
|
||||
|
||||
Dim a As Date = DateTime.Parse("1970-1-1 0:0:0")
|
||||
a = a.AddSeconds(intTime)
|
||||
a = a.AddHours(ime)
|
||||
|
||||
Return a
|
||||
End Function
|
||||
|
||||
|
||||
''' <summary>
|
||||
''' 和校验取余数
|
||||
''' 求Byte数组的和校验取余数
|
||||
''' </summary>
|
||||
''' <param name="dataPacket">Byte数组</param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function SumAndMod(dataPacket As Byte()) As Byte
|
||||
Dim sum As Integer
|
||||
For idx = 0 To dataPacket.Length - 1
|
||||
sum += dataPacket(idx)
|
||||
sum = sum And &HFF
|
||||
Next
|
||||
Dim sumMod As Byte = &HFF - sum
|
||||
Return sumMod
|
||||
End Function
|
||||
Public Shared Sub Delay(ByVal time As Integer)
|
||||
Dim timeEnd As Integer = My.Computer.Clock.TickCount + time
|
||||
Do
|
||||
Application.DoEvents()
|
||||
Loop Until My.Computer.Clock.TickCount > timeEnd
|
||||
End Sub
|
||||
|
||||
''' <summary>
|
||||
''' 获取枚举描述特性
|
||||
''' </summary>
|
||||
''' <param name="enumValue">需要获取特性的枚举值</param>
|
||||
''' <returns>枚举描述特性</returns>
|
||||
Public Shared Function GetEnumDescription(enumValue As [Enum]) As String
|
||||
|
||||
Dim fi As FieldInfo = enumValue.GetType().GetField(enumValue.ToString())
|
||||
Dim attr() As DescriptionAttribute =
|
||||
DirectCast(fi.GetCustomAttributes(GetType(DescriptionAttribute),
|
||||
False), DescriptionAttribute())
|
||||
|
||||
If attr.Length > 0 Then
|
||||
Return attr(0).Description
|
||||
Else
|
||||
Return enumValue.ToString()
|
||||
End If
|
||||
End Function
|
||||
|
||||
End Class
|
||||
193
Mode/SharedFunction.vb
Normal file
193
Mode/SharedFunction.vb
Normal file
@@ -0,0 +1,193 @@
|
||||
Imports System.IO.Ports
|
||||
|
||||
Public Class SharedFunction
|
||||
#Region "串口操作"
|
||||
'打开串口
|
||||
''' <summary>
|
||||
''' 打开串口
|
||||
''' </summary>
|
||||
''' <param name="m_Serial">串口</param>
|
||||
''' <param name="portName">串口号</param>
|
||||
''' <param name="baudRate">波特率</param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function OpenSerial(m_Serial As SerialPort, portName As String, baudRate As Integer) As Boolean
|
||||
If IsNothing(m_Serial) OrElse m_Serial.IsOpen Then Return False
|
||||
m_Serial.PortName = portName
|
||||
m_Serial.BaudRate = baudRate
|
||||
m_Serial.Open()
|
||||
Return True
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
'设置串口波特率
|
||||
''' <summary>
|
||||
''' 设置串口波特率
|
||||
''' </summary>
|
||||
''' <param name="m_Serial"> 串口 </param>
|
||||
''' <param name="baudRate">波特率</param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function SetSerialBaudRate(m_Serial As SerialPort, baudRate As Integer) As Boolean
|
||||
If IsNothing(m_Serial) OrElse Not m_Serial.IsOpen Then Return False
|
||||
m_Serial.BaudRate = baudRate
|
||||
Return True
|
||||
End Function
|
||||
|
||||
|
||||
|
||||
''' <summary>
|
||||
''' 关闭串口
|
||||
''' </summary>
|
||||
''' <param name="m_Serial">串口</param>
|
||||
''' <param name="isread">串口关闭标志</param>
|
||||
''' <param name="isListen">串口等待关闭标志</param>
|
||||
Public Shared Sub CloseSerial(m_Serial As SerialPort, ByRef isread As Boolean, ByRef isListen As Boolean)
|
||||
If IsNothing(m_Serial) OrElse Not m_Serial.IsOpen Then Return
|
||||
isread = True
|
||||
While isListen
|
||||
Application.DoEvents()
|
||||
Threading.Thread.Sleep(10)
|
||||
End While
|
||||
|
||||
Threading.Thread.Sleep(10)
|
||||
m_Serial.Close()
|
||||
End Sub
|
||||
|
||||
|
||||
#End Region
|
||||
|
||||
|
||||
#Region "数据转换"
|
||||
Public Shared Function ByteToHexString(databuff() As Byte) As String
|
||||
Dim strData As String = String.Empty
|
||||
For i = 0 To databuff.Length - 1
|
||||
strData &= $" {Hex(databuff(i)).PadLeft(2, "0"c)}"
|
||||
Next
|
||||
Return strData
|
||||
End Function
|
||||
Public Shared Function StringToHexString(hexstr As String) As String
|
||||
'判断字符串是否为空或 者为空字符串
|
||||
If String.IsNullOrEmpty(hexstr) Then Return Nothing
|
||||
'替换字符中的分隔符号
|
||||
hexstr = hexstr.Trim().Replace(" ", "").Replace("-", "").Replace(",", "").Replace(":", "").Replace(";", "").Replace(".", "")
|
||||
'判断字符串的长度是否为偶数
|
||||
If hexstr.Length Mod 2 <> 0 Then
|
||||
'不为偶数往最后一个字节前面补0
|
||||
hexstr = hexstr.Insert(hexstr.Length - 1, "0")
|
||||
End If
|
||||
'以2为步长,将字符串转换为字节数组 不足2位前面补0
|
||||
Dim databuff() As Byte = Enumerable.Range(0, hexstr.Length).Where(Function(x) x Mod 2 = 0).Select(Function(x) Convert.ToByte(hexstr.Substring(x, 2), 16)).ToArray()
|
||||
Return ByteToHexString(databuff)
|
||||
End Function
|
||||
Public Shared Function HexStringToByte(hexstr As String) As Byte()
|
||||
'判断字符串是否为空或 者为空字符串
|
||||
If String.IsNullOrEmpty(hexstr) Then Return Nothing
|
||||
'替换字符中的分隔符号
|
||||
hexstr = hexstr.Trim().Replace(" ", "").Replace("-", "").Replace(",", "").Replace(":", "").Replace(";", "").Replace(".", "")
|
||||
'判断字符串的长度是否为偶数
|
||||
If hexstr.Length Mod 2 <> 0 Then
|
||||
'不为偶数往最后一个字节前面补0
|
||||
hexstr = hexstr.Insert(hexstr.Length - 1, "0")
|
||||
End If
|
||||
'以2为步长,将字符串转换为字节数组 不足2位前面补0
|
||||
Return Enumerable.Range(0, hexstr.Length).Where(Function(x) x Mod 2 = 0).Select(Function(x) Convert.ToByte(hexstr.Substring(x, 2), 16)).ToArray()
|
||||
|
||||
End Function
|
||||
|
||||
''' <summary>
|
||||
''' Int转2个字节Byte
|
||||
''' 高字节在前,低字节在后
|
||||
''' </summary>
|
||||
''' <param name="i"></param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function IntToByteHB(ByVal i As Integer) As Byte()
|
||||
Dim btemp() As Byte = {0, 0}
|
||||
Dim b() As Byte = BitConverter.GetBytes(i)
|
||||
btemp(0) = b(0)
|
||||
btemp(1) = b(1)
|
||||
Return btemp
|
||||
End Function
|
||||
|
||||
''' <summary>
|
||||
''' Int转2个字节Byte
|
||||
''' 高字节在前,低字节在后
|
||||
''' </summary>
|
||||
''' <param name="i"></param>
|
||||
''' <returns></returns>
|
||||
Public Shared Function IntToByteLB(ByVal i As Integer) As Byte()
|
||||
Dim btemp() As Byte = {0, 0}
|
||||
Dim b() As Byte = BitConverter.GetBytes(i)
|
||||
btemp(0) = b(1)
|
||||
btemp(1) = b(0)
|
||||
Return btemp
|
||||
End Function
|
||||
|
||||
#End Region
|
||||
#Region "数据校验"
|
||||
'计算数据和 校验
|
||||
Public Shared Function GetCheckSum(ByVal data As Byte()) As Byte
|
||||
|
||||
Dim sum As Integer = 0
|
||||
For i As Integer = 0 To data.Length - 1
|
||||
sum += data(i)
|
||||
Next
|
||||
Return sum
|
||||
|
||||
End Function
|
||||
Public Shared Function GetCheckSumMod(ByVal data As Byte()) As Byte
|
||||
|
||||
Dim sum As Integer = 0
|
||||
For i As Integer = 0 To data.Length - 2
|
||||
sum += data(i)
|
||||
Next
|
||||
sum = sum And &HFF
|
||||
Return sum
|
||||
|
||||
End Function
|
||||
|
||||
Public Shared Function GetCheckSumMod2(ByVal data As Byte()) As Byte
|
||||
|
||||
Dim sum As Integer = 0
|
||||
For i As Integer = 0 To data.Length - 1
|
||||
sum += data(i)
|
||||
Next
|
||||
sum = sum And &HFF
|
||||
Return sum
|
||||
|
||||
End Function
|
||||
|
||||
''' <summary>
|
||||
''' 和校验取余数
|
||||
''' 求Byte数组的和校验取余数
|
||||
''' </summary>
|
||||
''' <param name="dataPacket">Byte数组</param>
|
||||
''' <returns></returns>
|
||||
Public Function GetSumCheckMod(dataPacket As Byte()) As Byte
|
||||
Dim sum As Integer
|
||||
For idx = 0 To dataPacket.Length - 1
|
||||
sum += dataPacket(idx)
|
||||
sum = sum And &HFF
|
||||
Next
|
||||
Dim sumMod As Byte = &HFF - sum
|
||||
Return sumMod
|
||||
End Function
|
||||
#End Region
|
||||
|
||||
#Region "跨线程调用UI"
|
||||
Delegate Sub delSetFromUI(control As Control, mText As String, textcolor As Color, cbolor As Color)
|
||||
Public Shared Sub SetFromUI(ByVal control As Control, mText As String, textcolor As Color, cbolor As Color)
|
||||
If IsNothing(control) Then Return
|
||||
If control.InvokeRequired Then
|
||||
control.Invoke(New delSetFromUI(AddressOf SetFromUI), control, mText, textcolor, cbolor)
|
||||
Else
|
||||
control.Text = mText
|
||||
control.ForeColor = textcolor
|
||||
control.BackColor = cbolor
|
||||
End If
|
||||
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
|
||||
|
||||
End Class
|
||||
38
My Project/Application.Designer.vb
generated
Normal file
38
My Project/Application.Designer.vb
generated
Normal file
@@ -0,0 +1,38 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
' Runtime Version:4.0.30319.42000
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Namespace My
|
||||
|
||||
'NOTE: This file is auto-generated; do not modify it directly. To make changes,
|
||||
' or if you encounter build errors in this file, go to the Project Designer
|
||||
' (go to Project Properties or double-click the My Project node in
|
||||
' Solution Explorer), and make changes on the Application tab.
|
||||
'
|
||||
Partial Friend Class MyApplication
|
||||
|
||||
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
|
||||
Public Sub New()
|
||||
MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
|
||||
Me.IsSingleInstance = false
|
||||
Me.EnableVisualStyles = true
|
||||
Me.SaveMySettingsOnExit = true
|
||||
Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
|
||||
End Sub
|
||||
|
||||
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
|
||||
Protected Overrides Sub OnCreateMainForm()
|
||||
Me.MainForm = Global.SerialPortLogFilterin.Form1
|
||||
End Sub
|
||||
End Class
|
||||
End Namespace
|
||||
11
My Project/Application.myapp
Normal file
11
My Project/Application.myapp
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<MyApplicationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||
<MySubMain>true</MySubMain>
|
||||
<MainForm>Form1</MainForm>
|
||||
<SingleInstance>false</SingleInstance>
|
||||
<ShutdownMode>0</ShutdownMode>
|
||||
<EnableVisualStyles>true</EnableVisualStyles>
|
||||
<AuthenticationMode>0</AuthenticationMode>
|
||||
<ApplicationType>0</ApplicationType>
|
||||
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
|
||||
</MyApplicationData>
|
||||
35
My Project/AssemblyInfo.vb
Normal file
35
My Project/AssemblyInfo.vb
Normal file
@@ -0,0 +1,35 @@
|
||||
Imports System
|
||||
Imports System.Reflection
|
||||
Imports System.Runtime.InteropServices
|
||||
|
||||
' 有关程序集的一般信息由以下
|
||||
' 控制。更改这些特性值可修改
|
||||
' 与程序集关联的信息。
|
||||
|
||||
'查看程序集特性的值
|
||||
|
||||
<Assembly: AssemblyTitle("SerialPortLogFilterin")>
|
||||
<Assembly: AssemblyDescription("")>
|
||||
<Assembly: AssemblyCompany("")>
|
||||
<Assembly: AssemblyProduct("SerialPortLogFilterin")>
|
||||
<Assembly: AssemblyCopyright("Copyright © 2025")>
|
||||
<Assembly: AssemblyTrademark("")>
|
||||
|
||||
<Assembly: ComVisible(False)>
|
||||
|
||||
'如果此项目向 COM 公开,则下列 GUID 用于 typelib 的 ID
|
||||
<Assembly: Guid("049d2060-4e08-48a0-b7b4-c6e693da50aa")>
|
||||
|
||||
' 程序集的版本信息由下列四个值组成:
|
||||
'
|
||||
' 主版本
|
||||
' 次版本
|
||||
' 生成号
|
||||
' 修订号
|
||||
'
|
||||
'可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值
|
||||
'通过使用 "*",如下所示:
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("1.0.0.2")>
|
||||
<Assembly: AssemblyFileVersion("1.0.0.2")>
|
||||
62
My Project/Resources.Designer.vb
generated
Normal file
62
My Project/Resources.Designer.vb
generated
Normal file
@@ -0,0 +1,62 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
' Runtime Version:4.0.30319.42000
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Namespace My.Resources
|
||||
|
||||
'This class was auto-generated by the StronglyTypedResourceBuilder
|
||||
'class via a tool like ResGen or Visual Studio.
|
||||
'To add or remove a member, edit your .ResX file then rerun ResGen
|
||||
'with the /str option, or rebuild your VS project.
|
||||
'''<summary>
|
||||
''' A strongly-typed resource class, for looking up localized strings, etc.
|
||||
'''</summary>
|
||||
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0"), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
|
||||
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
|
||||
Friend Module Resources
|
||||
|
||||
Private resourceMan As Global.System.Resources.ResourceManager
|
||||
|
||||
Private resourceCulture As Global.System.Globalization.CultureInfo
|
||||
|
||||
'''<summary>
|
||||
''' Returns the cached ResourceManager instance used by this class.
|
||||
'''</summary>
|
||||
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
|
||||
Get
|
||||
If Object.ReferenceEquals(resourceMan, Nothing) Then
|
||||
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("SerialPortLogFilterin.Resources", GetType(Resources).Assembly)
|
||||
resourceMan = temp
|
||||
End If
|
||||
Return resourceMan
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Overrides the current thread's CurrentUICulture property for all
|
||||
''' resource lookups using this strongly typed resource class.
|
||||
'''</summary>
|
||||
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Friend Property Culture() As Global.System.Globalization.CultureInfo
|
||||
Get
|
||||
Return resourceCulture
|
||||
End Get
|
||||
Set(ByVal value As Global.System.Globalization.CultureInfo)
|
||||
resourceCulture = value
|
||||
End Set
|
||||
End Property
|
||||
End Module
|
||||
End Namespace
|
||||
117
My Project/Resources.resx
Normal file
117
My Project/Resources.resx
Normal file
@@ -0,0 +1,117 @@
|
||||
<?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.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: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" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
</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" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
</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=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
157
My Project/Settings.Designer.vb
generated
Normal file
157
My Project/Settings.Designer.vb
generated
Normal file
@@ -0,0 +1,157 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' 此代码由工具生成。
|
||||
' 运行时版本:4.0.30319.42000
|
||||
'
|
||||
' 对此文件的更改可能会导致不正确的行为,并且如果
|
||||
' 重新生成代码,这些更改将会丢失。
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Namespace My
|
||||
|
||||
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
|
||||
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0"), _
|
||||
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Partial Friend NotInheritable Class MySettings
|
||||
Inherits Global.System.Configuration.ApplicationSettingsBase
|
||||
|
||||
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
|
||||
|
||||
#Region "My.Settings 自动保存功能"
|
||||
#If _MyType = "WindowsForms" Then
|
||||
Private Shared addedHandler As Boolean
|
||||
|
||||
Private Shared addedHandlerLockObject As New Object
|
||||
|
||||
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Private Shared Sub AutoSaveSettings(sender As Global.System.Object, e As Global.System.EventArgs)
|
||||
If My.Application.SaveMySettingsOnExit Then
|
||||
My.Settings.Save()
|
||||
End If
|
||||
End Sub
|
||||
#End If
|
||||
#End Region
|
||||
|
||||
Public Shared ReadOnly Property [Default]() As MySettings
|
||||
Get
|
||||
|
||||
#If _MyType = "WindowsForms" Then
|
||||
If Not addedHandler Then
|
||||
SyncLock addedHandlerLockObject
|
||||
If Not addedHandler Then
|
||||
AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
|
||||
addedHandler = True
|
||||
End If
|
||||
End SyncLock
|
||||
End If
|
||||
#End If
|
||||
Return defaultInstance
|
||||
End Get
|
||||
End Property
|
||||
|
||||
<Global.System.Configuration.UserScopedSettingAttribute(), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Configuration.DefaultSettingValueAttribute("")> _
|
||||
Public Property PortName() As String
|
||||
Get
|
||||
Return CType(Me("PortName"),String)
|
||||
End Get
|
||||
Set
|
||||
Me("PortName") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
<Global.System.Configuration.UserScopedSettingAttribute(), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Configuration.DefaultSettingValueAttribute("")> _
|
||||
Public Property BaudRate() As String
|
||||
Get
|
||||
Return CType(Me("BaudRate"),String)
|
||||
End Get
|
||||
Set
|
||||
Me("BaudRate") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
<Global.System.Configuration.UserScopedSettingAttribute(), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Configuration.DefaultSettingValueAttribute("1309")> _
|
||||
Public Property thewidth() As Integer
|
||||
Get
|
||||
Return CType(Me("thewidth"),Integer)
|
||||
End Get
|
||||
Set
|
||||
Me("thewidth") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
<Global.System.Configuration.UserScopedSettingAttribute(), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Configuration.DefaultSettingValueAttribute("921")> _
|
||||
Public Property theheight() As Integer
|
||||
Get
|
||||
Return CType(Me("theheight"),Integer)
|
||||
End Get
|
||||
Set
|
||||
Me("theheight") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
<Global.System.Configuration.UserScopedSettingAttribute(), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Configuration.DefaultSettingValueAttribute("619")> _
|
||||
Public Property SplitterDistance() As Integer
|
||||
Get
|
||||
Return CType(Me("SplitterDistance"),Integer)
|
||||
End Get
|
||||
Set
|
||||
Me("SplitterDistance") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
<Global.System.Configuration.UserScopedSettingAttribute(), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Configuration.DefaultSettingValueAttribute("")> _
|
||||
Public Property theHead() As String
|
||||
Get
|
||||
Return CType(Me("theHead"),String)
|
||||
End Get
|
||||
Set
|
||||
Me("theHead") = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
<Global.System.Configuration.UserScopedSettingAttribute(), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Configuration.DefaultSettingValueAttribute("")> _
|
||||
Public Property theRump() As String
|
||||
Get
|
||||
Return CType(Me("theRump"),String)
|
||||
End Get
|
||||
Set
|
||||
Me("theRump") = value
|
||||
End Set
|
||||
End Property
|
||||
End Class
|
||||
End Namespace
|
||||
|
||||
Namespace My
|
||||
|
||||
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
|
||||
Friend Module MySettingsProperty
|
||||
|
||||
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
|
||||
Friend ReadOnly Property Settings() As Global.SerialPortLogFilterin.My.MySettings
|
||||
Get
|
||||
Return Global.SerialPortLogFilterin.My.MySettings.Default
|
||||
End Get
|
||||
End Property
|
||||
End Module
|
||||
End Namespace
|
||||
27
My Project/Settings.settings
Normal file
27
My Project/Settings.settings
Normal file
@@ -0,0 +1,27 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="My" GeneratedClassName="MySettings" UseMySettingsClassName="true">
|
||||
<Profiles />
|
||||
<Settings>
|
||||
<Setting Name="PortName" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="BaudRate" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="thewidth" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">1309</Value>
|
||||
</Setting>
|
||||
<Setting Name="theheight" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">921</Value>
|
||||
</Setting>
|
||||
<Setting Name="SplitterDistance" Type="System.Int32" Scope="User">
|
||||
<Value Profile="(Default)">619</Value>
|
||||
</Setting>
|
||||
<Setting Name="theHead" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
<Setting Name="theRump" Type="System.String" Scope="User">
|
||||
<Value Profile="(Default)" />
|
||||
</Setting>
|
||||
</Settings>
|
||||
</SettingsFile>
|
||||
25
SerialPortLogFilterin.sln
Normal file
25
SerialPortLogFilterin.sln
Normal file
@@ -0,0 +1,25 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.32602.291
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "SerialPortLogFilterin", "SerialPortLogFilterin.vbproj", "{49B97406-507B-46BA-8F7F-79AC5A484602}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{49B97406-507B-46BA-8F7F-79AC5A484602}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{49B97406-507B-46BA-8F7F-79AC5A484602}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{49B97406-507B-46BA-8F7F-79AC5A484602}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{49B97406-507B-46BA-8F7F-79AC5A484602}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {340C45C6-288E-4FA4-B78A-944ACBCB3D0B}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
126
SerialPortLogFilterin.vbproj
Normal file
126
SerialPortLogFilterin.vbproj
Normal file
@@ -0,0 +1,126 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{49B97406-507B-46BA-8F7F-79AC5A484602}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<StartupObject>SerialPortLogFilterin.My.MyApplication</StartupObject>
|
||||
<RootNamespace>SerialPortLogFilterin</RootNamespace>
|
||||
<AssemblyName>SerialPortLogFilterin</AssemblyName>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<MyType>WindowsForms</MyType>
|
||||
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
|
||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||
<Deterministic>true</Deterministic>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<DefineDebug>true</DefineDebug>
|
||||
<DefineTrace>true</DefineTrace>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DocumentationFile>SerialPortLogFilterin.xml</DocumentationFile>
|
||||
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<DefineDebug>false</DefineDebug>
|
||||
<DefineTrace>true</DefineTrace>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DocumentationFile>SerialPortLogFilterin.xml</DocumentationFile>
|
||||
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionExplicit>On</OptionExplicit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionCompare>Binary</OptionCompare>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionStrict>Off</OptionStrict>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionInfer>On</OptionInfer>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
<Reference Include="System.Net.Http" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Import Include="Microsoft.VisualBasic" />
|
||||
<Import Include="System" />
|
||||
<Import Include="System.Collections" />
|
||||
<Import Include="System.Collections.Generic" />
|
||||
<Import Include="System.Data" />
|
||||
<Import Include="System.Drawing" />
|
||||
<Import Include="System.Diagnostics" />
|
||||
<Import Include="System.Windows.Forms" />
|
||||
<Import Include="System.Linq" />
|
||||
<Import Include="System.Xml.Linq" />
|
||||
<Import Include="System.Threading.Tasks" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Form1.vb">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Form1.Designer.vb">
|
||||
<DependentUpon>Form1.vb</DependentUpon>
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Log\RuningLog.vb" />
|
||||
<Compile Include="Mode\DataProcessing.vb" />
|
||||
<Compile Include="Mode\SharedFunction.vb" />
|
||||
<Compile Include="My Project\AssemblyInfo.vb" />
|
||||
<Compile Include="My Project\Application.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Application.myapp</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="My Project\Resources.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="My Project\Settings.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Form1.resx">
|
||||
<DependentUpon>Form1.vb</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="My Project\Resources.resx">
|
||||
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
|
||||
<CustomToolNamespace>My.Resources</CustomToolNamespace>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="My Project\Application.myapp">
|
||||
<Generator>MyApplicationCodeGenerator</Generator>
|
||||
<LastGenOutput>Application.Designer.vb</LastGenOutput>
|
||||
</None>
|
||||
<None Include="My Project\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<CustomToolNamespace>My</CustomToolNamespace>
|
||||
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
|
||||
</None>
|
||||
<None Include="App.config" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
|
||||
</Project>
|
||||
BIN
bin/Debug/SerialPortLogFilterin.exe
Normal file
BIN
bin/Debug/SerialPortLogFilterin.exe
Normal file
Binary file not shown.
36
bin/Debug/SerialPortLogFilterin.exe.config
Normal file
36
bin/Debug/SerialPortLogFilterin.exe.config
Normal file
@@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
|
||||
<section name="SerialPortLogFilterin.My.MySettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
|
||||
</startup>
|
||||
<userSettings>
|
||||
<SerialPortLogFilterin.My.MySettings>
|
||||
<setting name="PortName" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="BaudRate" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="thewidth" serializeAs="String">
|
||||
<value>1309</value>
|
||||
</setting>
|
||||
<setting name="theheight" serializeAs="String">
|
||||
<value>921</value>
|
||||
</setting>
|
||||
<setting name="SplitterDistance" serializeAs="String">
|
||||
<value>619</value>
|
||||
</setting>
|
||||
<setting name="theHead" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="theRump" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
</SerialPortLogFilterin.My.MySettings>
|
||||
</userSettings>
|
||||
</configuration>
|
||||
BIN
bin/Debug/SerialPortLogFilterin.pdb
Normal file
BIN
bin/Debug/SerialPortLogFilterin.pdb
Normal file
Binary file not shown.
216
bin/Debug/SerialPortLogFilterin.xml
Normal file
216
bin/Debug/SerialPortLogFilterin.xml
Normal file
@@ -0,0 +1,216 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>
|
||||
SerialPortLogFilterin
|
||||
</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:SerialPortLogFilterin.My.Resources.Resources">
|
||||
<summary>
|
||||
A strongly-typed resource class, for looking up localized strings, etc.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:SerialPortLogFilterin.My.Resources.Resources.ResourceManager">
|
||||
<summary>
|
||||
Returns the cached ResourceManager instance used by this class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:SerialPortLogFilterin.My.Resources.Resources.Culture">
|
||||
<summary>
|
||||
Overrides the current thread's CurrentUICulture property for all
|
||||
resource lookups using this strongly typed resource class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.RuningLog.OutputLogsToTheControl(System.Windows.Forms.Control,SerialPortLogFilterin.RuningLogConfig,System.Int32)">
|
||||
<summary>
|
||||
''输出日志到控件
|
||||
</summary>
|
||||
<param name="c">控件 </param>
|
||||
<param name="config">日志</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.RuningLogConfig.#ctor(System.Object[])">
|
||||
<summary>
|
||||
文本、颜色、Font
|
||||
</summary>
|
||||
<param name="args"></param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetPortToBytes(System.String)">
|
||||
<summary>
|
||||
端口号转换为Byte数组
|
||||
</summary>
|
||||
<param name="port"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.IntToByteLB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
低字节在前,高字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.IntToByteLxxB(System.Int32)">
|
||||
<summary>
|
||||
Int转4个字节Byte
|
||||
低字节在前,高字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.IntToByteHB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
高字节在前,低字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetMd5(System.String)">
|
||||
<summary>
|
||||
获取文件的MD5值
|
||||
返回Byte数组值
|
||||
</summary>
|
||||
<param name="filepath">文件路径</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetMd5String(System.String)">
|
||||
<summary>
|
||||
获取文件的MD5值
|
||||
返回String字符串
|
||||
</summary>
|
||||
<param name="filepath">文件路径</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetLocalIp">
|
||||
<summary>
|
||||
获取本地可用IP
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.ByteToString(System.Byte[])">
|
||||
<summary>
|
||||
Byte数组转字符串
|
||||
</summary>
|
||||
<param name="databuff"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.WaitReply(System.Boolean,System.Int32)">
|
||||
<summary>
|
||||
等待回复
|
||||
</summary>
|
||||
<param name="isReply">是否回复标志位</param>
|
||||
<param name="TimeOut">超时时间</param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.PauseWait(System.Int64)">
|
||||
<summary>
|
||||
延时N秒
|
||||
</summary>
|
||||
<param name="HowLong">延时时间值</param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetAddressToBytes(System.String)">
|
||||
<summary>
|
||||
IP地址转换为Byte数组
|
||||
</summary>
|
||||
<param name="addr"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetStringMd5(System.String)">
|
||||
<summary>
|
||||
获取字符串的MD5值
|
||||
</summary>
|
||||
<param name="str">需要求MD5的原文字符串</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetBlocks(System.Byte[],System.Int32)">
|
||||
<summary>
|
||||
分块函数
|
||||
计算Byte数组的块数
|
||||
</summary>
|
||||
<param name="databuff"></param>
|
||||
<param name="size"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetStringToDataByte(System.String)">
|
||||
<summary>
|
||||
字符串转换Byte数组
|
||||
字符串为连续且不包含任意字符的字符串
|
||||
</summary>
|
||||
<param name="str"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.FromUnixTime(System.Int64,System.Int64)">
|
||||
<summary>
|
||||
把UNIX时间戳转换为标准时间
|
||||
</summary>
|
||||
<param name="intTime">要转换的UNIX时间戳</param>
|
||||
<param name="ime">时区</param>
|
||||
<returns>intTime所代表的标准时间</returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.SumAndMod(System.Byte[])">
|
||||
<summary>
|
||||
和校验取余数
|
||||
求Byte数组的和校验取余数
|
||||
</summary>
|
||||
<param name="dataPacket">Byte数组</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetEnumDescription(System.Enum)">
|
||||
<summary>
|
||||
获取枚举描述特性
|
||||
</summary>
|
||||
<param name="enumValue">需要获取特性的枚举值</param>
|
||||
<returns>枚举描述特性</returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.OpenSerial(System.IO.Ports.SerialPort,System.String,System.Int32)">
|
||||
<summary>
|
||||
打开串口
|
||||
</summary>
|
||||
<param name="m_Serial">串口</param>
|
||||
<param name="portName">串口号</param>
|
||||
<param name="baudRate">波特率</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.SetSerialBaudRate(System.IO.Ports.SerialPort,System.Int32)">
|
||||
<summary>
|
||||
设置串口波特率
|
||||
</summary>
|
||||
<param name="m_Serial"> 串口 </param>
|
||||
<param name="baudRate">波特率</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.CloseSerial(System.IO.Ports.SerialPort,System.Boolean@,System.Boolean@)">
|
||||
<summary>
|
||||
关闭串口
|
||||
</summary>
|
||||
<param name="m_Serial">串口</param>
|
||||
<param name="isread">串口关闭标志</param>
|
||||
<param name="isListen">串口等待关闭标志</param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.IntToByteHB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
高字节在前,低字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.IntToByteLB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
高字节在前,低字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.GetSumCheckMod(System.Byte[])">
|
||||
<summary>
|
||||
和校验取余数
|
||||
求Byte数组的和校验取余数
|
||||
</summary>
|
||||
<param name="dataPacket">Byte数组</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
134
bin/Debug/原文日志/2025-06-07_16-10-58.txt
Normal file
134
bin/Debug/原文日志/2025-06-07_16-10-58.txt
Normal file
@@ -0,0 +1,134 @@
|
||||
2025-06-07 16:11:03:454 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:04:459 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:11:05:457 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:11:06:442 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:11:07:460 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:11:08:442 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:11:08:551 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:11:08:666 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:11:08:772 RX:asocket_cb 3 2
|
||||
2025-06-07 16:11:08:880 RX:asocket_cb 3 10
|
||||
2025-06-07 16:11:09:880 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:11:10:880 RX:asocket_cb 3 0
|
||||
2025-06-07 16:11:11:879 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:11:12:878 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:11:13:879 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:11:14:902 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:11:15:879 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:11:16:879 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:11:17:879 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:18:878 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:19:878 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:11:20:879 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:11:21:879 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:11:22:878 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:11:23:879 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:11:23:993 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:11:24:097 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:11:24:207 RX:asocket_cb 3 2
|
||||
2025-06-07 16:11:24:320 RX:asocket_cb 3 10
|
||||
2025-06-07 16:11:25:317 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:11:26:316 RX:asocket_cb 3 0
|
||||
2025-06-07 16:11:27:319 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:11:28:316 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:11:29:316 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:11:30:315 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:11:31:316 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:11:32:319 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:11:33:319 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:34:319 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:35:318 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:11:36:317 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:11:37:317 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:11:38:316 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:11:39:317 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:11:39:427 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:11:39:538 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:11:39:644 RX:asocket_cb 3 2
|
||||
2025-06-07 16:11:39:754 RX:asocket_cb 3 10
|
||||
2025-06-07 16:11:40:753 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:11:41:754 RX:asocket_cb 3 0
|
||||
2025-06-07 16:11:42:753 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:11:43:755 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:11:44:753 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:11:45:754 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:11:46:753 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:11:47:754 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:11:48:753 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:49:754 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:50:754 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:11:51:753 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:11:52:753 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:11:53:754 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:11:54:754 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:11:54:864 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:11:54:972 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:11:55:081 RX:asocket_cb 3 2
|
||||
2025-06-07 16:11:55:192 RX:asocket_cb 3 10
|
||||
2025-06-07 16:11:56:192 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:11:57:192 RX:asocket_cb 3 0
|
||||
2025-06-07 16:11:58:191 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:11:59:192 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:00:191 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:12:01:190 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:02:191 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:12:03:192 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:04:191 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:05:192 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:06:191 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:12:07:190 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:12:08:191 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:09:193 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:12:10:193 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:10:302 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:10:415 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:10:520 RX:asocket_cb 3 2
|
||||
2025-06-07 16:12:10:630 RX:asocket_cb 3 10
|
||||
2025-06-07 16:12:11:628 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:12:629 RX:asocket_cb 3 0
|
||||
2025-06-07 16:12:13:628 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:14:629 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:15:629 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:12:16:631 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:17:629 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:12:18:630 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:19:629 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:20:629 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:21:631 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:12:22:629 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:12:23:629 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:24:629 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:12:25:630 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:25:741 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:25:848 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:25:959 RX:asocket_cb 3 2
|
||||
2025-06-07 16:12:26:066 RX:asocket_cb 3 10
|
||||
2025-06-07 16:12:27:070 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:28:067 RX:asocket_cb 3 0
|
||||
2025-06-07 16:12:29:068 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:30:066 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:31:067 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:12:32:066 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:33:068 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:12:34:067 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:35:068 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:36:069 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:37:066 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:12:38:067 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:12:39:066 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:40:067 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:12:41:068 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:41:176 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:41:286 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:41:397 RX:asocket_cb 3 2
|
||||
2025-06-07 16:12:41:504 RX:asocket_cb 3 10
|
||||
2025-06-07 16:12:42:505 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:43:505 RX:asocket_cb 3 0
|
||||
2025-06-07 16:12:44:503 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:45:503 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:46:503 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:12:47:504 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:48:503 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:12:49:504 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:50:504 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:51:505 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
1316
bin/Debug/原文日志/2025-06-07_16-46-37.txt
Normal file
1316
bin/Debug/原文日志/2025-06-07_16-46-37.txt
Normal file
File diff suppressed because it is too large
Load Diff
47
bin/Debug/过滤日志/2025-06-07_16-10-58.txt
Normal file
47
bin/Debug/过滤日志/2025-06-07_16-10-58.txt
Normal file
@@ -0,0 +1,47 @@
|
||||
2025-06-07 16:11:17:879 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:18:878 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:25:317 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:11:27:319 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:11:33:319 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:34:319 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:48:753 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:49:754 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:04:191 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:05:192 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:08:191 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:10:193 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:10:302 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:10:415 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:11:628 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:13:628 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:14:629 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:16:631 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:18:630 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:19:629 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:20:629 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:21:631 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:12:22:629 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:12:23:629 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:25:630 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:25:741 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:25:848 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:27:070 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:29:068 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:30:066 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:32:066 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:34:067 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:35:068 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:36:069 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:37:066 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:12:38:067 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:12:39:066 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:41:068 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:41:176 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:41:286 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:42:505 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:44:503 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:45:503 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:47:504 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:49:504 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:50:504 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:51:505 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
BIN
bin/SerialPortLogFilterin_1.0.0.2.rar
Normal file
BIN
bin/SerialPortLogFilterin_1.0.0.2.rar
Normal file
Binary file not shown.
BIN
bin/SerialPortLogFilterin_1.0.0.2/SerialPortLogFilterin.exe
Normal file
BIN
bin/SerialPortLogFilterin_1.0.0.2/SerialPortLogFilterin.exe
Normal file
Binary file not shown.
@@ -0,0 +1,36 @@
|
||||
<?xml version="1.0" encoding="utf-8" ?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
|
||||
<section name="SerialPortLogFilterin.My.MySettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
|
||||
</startup>
|
||||
<userSettings>
|
||||
<SerialPortLogFilterin.My.MySettings>
|
||||
<setting name="PortName" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="BaudRate" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="thewidth" serializeAs="String">
|
||||
<value>1309</value>
|
||||
</setting>
|
||||
<setting name="theheight" serializeAs="String">
|
||||
<value>921</value>
|
||||
</setting>
|
||||
<setting name="SplitterDistance" serializeAs="String">
|
||||
<value>619</value>
|
||||
</setting>
|
||||
<setting name="theHead" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
<setting name="theRump" serializeAs="String">
|
||||
<value />
|
||||
</setting>
|
||||
</SerialPortLogFilterin.My.MySettings>
|
||||
</userSettings>
|
||||
</configuration>
|
||||
BIN
bin/SerialPortLogFilterin_1.0.0.2/SerialPortLogFilterin.pdb
Normal file
BIN
bin/SerialPortLogFilterin_1.0.0.2/SerialPortLogFilterin.pdb
Normal file
Binary file not shown.
216
bin/SerialPortLogFilterin_1.0.0.2/SerialPortLogFilterin.xml
Normal file
216
bin/SerialPortLogFilterin_1.0.0.2/SerialPortLogFilterin.xml
Normal file
@@ -0,0 +1,216 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>
|
||||
SerialPortLogFilterin
|
||||
</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:SerialPortLogFilterin.My.Resources.Resources">
|
||||
<summary>
|
||||
A strongly-typed resource class, for looking up localized strings, etc.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:SerialPortLogFilterin.My.Resources.Resources.ResourceManager">
|
||||
<summary>
|
||||
Returns the cached ResourceManager instance used by this class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:SerialPortLogFilterin.My.Resources.Resources.Culture">
|
||||
<summary>
|
||||
Overrides the current thread's CurrentUICulture property for all
|
||||
resource lookups using this strongly typed resource class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.RuningLog.OutputLogsToTheControl(System.Windows.Forms.Control,SerialPortLogFilterin.RuningLogConfig,System.Int32)">
|
||||
<summary>
|
||||
''输出日志到控件
|
||||
</summary>
|
||||
<param name="c">控件 </param>
|
||||
<param name="config">日志</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.RuningLogConfig.#ctor(System.Object[])">
|
||||
<summary>
|
||||
文本、颜色、Font
|
||||
</summary>
|
||||
<param name="args"></param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetPortToBytes(System.String)">
|
||||
<summary>
|
||||
端口号转换为Byte数组
|
||||
</summary>
|
||||
<param name="port"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.IntToByteLB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
低字节在前,高字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.IntToByteLxxB(System.Int32)">
|
||||
<summary>
|
||||
Int转4个字节Byte
|
||||
低字节在前,高字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.IntToByteHB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
高字节在前,低字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetMd5(System.String)">
|
||||
<summary>
|
||||
获取文件的MD5值
|
||||
返回Byte数组值
|
||||
</summary>
|
||||
<param name="filepath">文件路径</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetMd5String(System.String)">
|
||||
<summary>
|
||||
获取文件的MD5值
|
||||
返回String字符串
|
||||
</summary>
|
||||
<param name="filepath">文件路径</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetLocalIp">
|
||||
<summary>
|
||||
获取本地可用IP
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.ByteToString(System.Byte[])">
|
||||
<summary>
|
||||
Byte数组转字符串
|
||||
</summary>
|
||||
<param name="databuff"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.WaitReply(System.Boolean,System.Int32)">
|
||||
<summary>
|
||||
等待回复
|
||||
</summary>
|
||||
<param name="isReply">是否回复标志位</param>
|
||||
<param name="TimeOut">超时时间</param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.PauseWait(System.Int64)">
|
||||
<summary>
|
||||
延时N秒
|
||||
</summary>
|
||||
<param name="HowLong">延时时间值</param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetAddressToBytes(System.String)">
|
||||
<summary>
|
||||
IP地址转换为Byte数组
|
||||
</summary>
|
||||
<param name="addr"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetStringMd5(System.String)">
|
||||
<summary>
|
||||
获取字符串的MD5值
|
||||
</summary>
|
||||
<param name="str">需要求MD5的原文字符串</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetBlocks(System.Byte[],System.Int32)">
|
||||
<summary>
|
||||
分块函数
|
||||
计算Byte数组的块数
|
||||
</summary>
|
||||
<param name="databuff"></param>
|
||||
<param name="size"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetStringToDataByte(System.String)">
|
||||
<summary>
|
||||
字符串转换Byte数组
|
||||
字符串为连续且不包含任意字符的字符串
|
||||
</summary>
|
||||
<param name="str"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.FromUnixTime(System.Int64,System.Int64)">
|
||||
<summary>
|
||||
把UNIX时间戳转换为标准时间
|
||||
</summary>
|
||||
<param name="intTime">要转换的UNIX时间戳</param>
|
||||
<param name="ime">时区</param>
|
||||
<returns>intTime所代表的标准时间</returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.SumAndMod(System.Byte[])">
|
||||
<summary>
|
||||
和校验取余数
|
||||
求Byte数组的和校验取余数
|
||||
</summary>
|
||||
<param name="dataPacket">Byte数组</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetEnumDescription(System.Enum)">
|
||||
<summary>
|
||||
获取枚举描述特性
|
||||
</summary>
|
||||
<param name="enumValue">需要获取特性的枚举值</param>
|
||||
<returns>枚举描述特性</returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.OpenSerial(System.IO.Ports.SerialPort,System.String,System.Int32)">
|
||||
<summary>
|
||||
打开串口
|
||||
</summary>
|
||||
<param name="m_Serial">串口</param>
|
||||
<param name="portName">串口号</param>
|
||||
<param name="baudRate">波特率</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.SetSerialBaudRate(System.IO.Ports.SerialPort,System.Int32)">
|
||||
<summary>
|
||||
设置串口波特率
|
||||
</summary>
|
||||
<param name="m_Serial"> 串口 </param>
|
||||
<param name="baudRate">波特率</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.CloseSerial(System.IO.Ports.SerialPort,System.Boolean@,System.Boolean@)">
|
||||
<summary>
|
||||
关闭串口
|
||||
</summary>
|
||||
<param name="m_Serial">串口</param>
|
||||
<param name="isread">串口关闭标志</param>
|
||||
<param name="isListen">串口等待关闭标志</param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.IntToByteHB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
高字节在前,低字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.IntToByteLB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
高字节在前,低字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.GetSumCheckMod(System.Byte[])">
|
||||
<summary>
|
||||
和校验取余数
|
||||
求Byte数组的和校验取余数
|
||||
</summary>
|
||||
<param name="dataPacket">Byte数组</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
134
bin/SerialPortLogFilterin_1.0.0.2/原文日志/2025-06-07_16-10-58.txt
Normal file
134
bin/SerialPortLogFilterin_1.0.0.2/原文日志/2025-06-07_16-10-58.txt
Normal file
@@ -0,0 +1,134 @@
|
||||
2025-06-07 16:11:03:454 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:04:459 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:11:05:457 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:11:06:442 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:11:07:460 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:11:08:442 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:11:08:551 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:11:08:666 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:11:08:772 RX:asocket_cb 3 2
|
||||
2025-06-07 16:11:08:880 RX:asocket_cb 3 10
|
||||
2025-06-07 16:11:09:880 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:11:10:880 RX:asocket_cb 3 0
|
||||
2025-06-07 16:11:11:879 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:11:12:878 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:11:13:879 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:11:14:902 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:11:15:879 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:11:16:879 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:11:17:879 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:18:878 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:19:878 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:11:20:879 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:11:21:879 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:11:22:878 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:11:23:879 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:11:23:993 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:11:24:097 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:11:24:207 RX:asocket_cb 3 2
|
||||
2025-06-07 16:11:24:320 RX:asocket_cb 3 10
|
||||
2025-06-07 16:11:25:317 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:11:26:316 RX:asocket_cb 3 0
|
||||
2025-06-07 16:11:27:319 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:11:28:316 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:11:29:316 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:11:30:315 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:11:31:316 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:11:32:319 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:11:33:319 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:34:319 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:35:318 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:11:36:317 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:11:37:317 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:11:38:316 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:11:39:317 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:11:39:427 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:11:39:538 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:11:39:644 RX:asocket_cb 3 2
|
||||
2025-06-07 16:11:39:754 RX:asocket_cb 3 10
|
||||
2025-06-07 16:11:40:753 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:11:41:754 RX:asocket_cb 3 0
|
||||
2025-06-07 16:11:42:753 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:11:43:755 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:11:44:753 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:11:45:754 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:11:46:753 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:11:47:754 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:11:48:753 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:49:754 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:50:754 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:11:51:753 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:11:52:753 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:11:53:754 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:11:54:754 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:11:54:864 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:11:54:972 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:11:55:081 RX:asocket_cb 3 2
|
||||
2025-06-07 16:11:55:192 RX:asocket_cb 3 10
|
||||
2025-06-07 16:11:56:192 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:11:57:192 RX:asocket_cb 3 0
|
||||
2025-06-07 16:11:58:191 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:11:59:192 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:00:191 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:12:01:190 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:02:191 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:12:03:192 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:04:191 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:05:192 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:06:191 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:12:07:190 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:12:08:191 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:09:193 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:12:10:193 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:10:302 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:10:415 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:10:520 RX:asocket_cb 3 2
|
||||
2025-06-07 16:12:10:630 RX:asocket_cb 3 10
|
||||
2025-06-07 16:12:11:628 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:12:629 RX:asocket_cb 3 0
|
||||
2025-06-07 16:12:13:628 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:14:629 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:15:629 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:12:16:631 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:17:629 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:12:18:630 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:19:629 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:20:629 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:21:631 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:12:22:629 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:12:23:629 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:24:629 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:12:25:630 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:25:741 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:25:848 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:25:959 RX:asocket_cb 3 2
|
||||
2025-06-07 16:12:26:066 RX:asocket_cb 3 10
|
||||
2025-06-07 16:12:27:070 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:28:067 RX:asocket_cb 3 0
|
||||
2025-06-07 16:12:29:068 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:30:066 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:31:067 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:12:32:066 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:33:068 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:12:34:067 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:35:068 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:36:069 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:37:066 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:12:38:067 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:12:39:066 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:40:067 RX: cmlog ]__cm_virt_at_task already exist
|
||||
2025-06-07 16:12:41:068 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:41:176 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:41:286 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:41:397 RX:asocket_cb 3 2
|
||||
2025-06-07 16:12:41:504 RX:asocket_cb 3 10
|
||||
2025-06-07 16:12:42:505 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:43:505 RX:asocket_cb 3 0
|
||||
2025-06-07 16:12:44:503 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:45:503 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:46:503 RX:asocket_on_eloop 0x7e044c00,0x7e293098
|
||||
2025-06-07 16:12:47:504 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:48:503 RX:asocket_event 0x7e293098,0x7e044c18
|
||||
2025-06-07 16:12:49:504 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:50:504 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:51:505 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
1316
bin/SerialPortLogFilterin_1.0.0.2/原文日志/2025-06-07_16-46-37.txt
Normal file
1316
bin/SerialPortLogFilterin_1.0.0.2/原文日志/2025-06-07_16-46-37.txt
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,47 @@
|
||||
2025-06-07 16:11:17:879 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:18:878 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:25:317 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:11:27:319 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:11:33:319 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:34:319 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:48:753 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:11:49:754 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:04:191 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:05:192 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:08:191 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:10:193 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:10:302 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:10:415 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:11:628 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:13:628 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:14:629 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:16:631 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:18:630 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:19:629 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:20:629 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:21:631 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:12:22:629 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:12:23:629 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:25:630 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:25:741 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:25:848 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:27:070 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:29:068 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:30:066 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:32:066 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:34:067 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:35:068 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:36:069 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:37:066 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0, msg type:4
|
||||
2025-06-07 16:12:38:067 RX:[ cmlog ][OPENCPU]:[CMMQTT] pkt type:4,len:4
|
||||
2025-06-07 16:12:39:066 RX:[ cmlog ][OPENCPU]:MQTT Client pub_ack: 50557,0
|
||||
2025-06-07 16:12:41:068 RX:[ cmlog ][OPENCPU]:MQTT Client publish msgid = 50557
|
||||
2025-06-07 16:12:41:176 RX:[ cmlog ][OPENCPU]:[CMMQTT] send len:38
|
||||
2025-06-07 16:12:41:286 RX:[ cmlog ][OPENCPU]:[CMMQTT] id:0,publish msg,topic:blw/rcu/pub/1003,len:38
|
||||
2025-06-07 16:12:42:505 RX:[ELOOP] post event=0x7e044c00
|
||||
2025-06-07 16:12:44:503 RX:[ELOOP] post event=0x7e044c18
|
||||
2025-06-07 16:12:45:503 RX:[ELOOP] rdy_list eloop=0x7e2617d0
|
||||
2025-06-07 16:12:47:504 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:4
|
||||
2025-06-07 16:12:49:504 RX:[ cmlog ][OPENCPU]:[CMMQTT] fd:3, status:3
|
||||
2025-06-07 16:12:50:504 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
2025-06-07 16:12:51:505 RX:[ELOOP] eloop millsec=4294967295 tick=4294967295
|
||||
@@ -0,0 +1,7 @@
|
||||
' <autogenerated/>
|
||||
Option Strict Off
|
||||
Option Explicit On
|
||||
|
||||
Imports System
|
||||
Imports System.Reflection
|
||||
<Assembly: Global.System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8", FrameworkDisplayName:=".NET Framework 4.8")>
|
||||
BIN
obj/Debug/DesignTimeResolveAssemblyReferences.cache
Normal file
BIN
obj/Debug/DesignTimeResolveAssemblyReferences.cache
Normal file
Binary file not shown.
BIN
obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
Normal file
BIN
obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
Normal file
Binary file not shown.
BIN
obj/Debug/SerialPortLogFilterin.Form1.resources
Normal file
BIN
obj/Debug/SerialPortLogFilterin.Form1.resources
Normal file
Binary file not shown.
BIN
obj/Debug/SerialPortLogFilterin.Resources.resources
Normal file
BIN
obj/Debug/SerialPortLogFilterin.Resources.resources
Normal file
Binary file not shown.
BIN
obj/Debug/SerialPortLogFilterin.exe
Normal file
BIN
obj/Debug/SerialPortLogFilterin.exe
Normal file
Binary file not shown.
BIN
obj/Debug/SerialPortLogFilterin.pdb
Normal file
BIN
obj/Debug/SerialPortLogFilterin.pdb
Normal file
Binary file not shown.
BIN
obj/Debug/SerialPortLogFilterin.vbproj.AssemblyReference.cache
Normal file
BIN
obj/Debug/SerialPortLogFilterin.vbproj.AssemblyReference.cache
Normal file
Binary file not shown.
@@ -0,0 +1 @@
|
||||
05b2748b97a4433e30a61188db142ab61d2680e4
|
||||
12
obj/Debug/SerialPortLogFilterin.vbproj.FileListAbsolute.txt
Normal file
12
obj/Debug/SerialPortLogFilterin.vbproj.FileListAbsolute.txt
Normal file
@@ -0,0 +1,12 @@
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\bin\Debug\SerialPortLogFilterin.exe.config
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\bin\Debug\SerialPortLogFilterin.exe
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\bin\Debug\SerialPortLogFilterin.pdb
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\bin\Debug\SerialPortLogFilterin.xml
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\obj\Debug\SerialPortLogFilterin.vbproj.AssemblyReference.cache
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\obj\Debug\SerialPortLogFilterin.Form1.resources
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\obj\Debug\SerialPortLogFilterin.Resources.resources
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\obj\Debug\SerialPortLogFilterin.vbproj.GenerateResource.cache
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\obj\Debug\SerialPortLogFilterin.vbproj.CoreCompileInputs.cache
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\obj\Debug\SerialPortLogFilterin.exe
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\obj\Debug\SerialPortLogFilterin.xml
|
||||
E:\Sync\SerialPortLogFiltering\SerialPortLogFilterin\obj\Debug\SerialPortLogFilterin.pdb
|
||||
BIN
obj/Debug/SerialPortLogFilterin.vbproj.GenerateResource.cache
Normal file
BIN
obj/Debug/SerialPortLogFilterin.vbproj.GenerateResource.cache
Normal file
Binary file not shown.
216
obj/Debug/SerialPortLogFilterin.xml
Normal file
216
obj/Debug/SerialPortLogFilterin.xml
Normal file
@@ -0,0 +1,216 @@
|
||||
<?xml version="1.0"?>
|
||||
<doc>
|
||||
<assembly>
|
||||
<name>
|
||||
SerialPortLogFilterin
|
||||
</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="T:SerialPortLogFilterin.My.Resources.Resources">
|
||||
<summary>
|
||||
A strongly-typed resource class, for looking up localized strings, etc.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:SerialPortLogFilterin.My.Resources.Resources.ResourceManager">
|
||||
<summary>
|
||||
Returns the cached ResourceManager instance used by this class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:SerialPortLogFilterin.My.Resources.Resources.Culture">
|
||||
<summary>
|
||||
Overrides the current thread's CurrentUICulture property for all
|
||||
resource lookups using this strongly typed resource class.
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.RuningLog.OutputLogsToTheControl(System.Windows.Forms.Control,SerialPortLogFilterin.RuningLogConfig,System.Int32)">
|
||||
<summary>
|
||||
''输出日志到控件
|
||||
</summary>
|
||||
<param name="c">控件 </param>
|
||||
<param name="config">日志</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.RuningLogConfig.#ctor(System.Object[])">
|
||||
<summary>
|
||||
文本、颜色、Font
|
||||
</summary>
|
||||
<param name="args"></param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetPortToBytes(System.String)">
|
||||
<summary>
|
||||
端口号转换为Byte数组
|
||||
</summary>
|
||||
<param name="port"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.IntToByteLB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
低字节在前,高字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.IntToByteLxxB(System.Int32)">
|
||||
<summary>
|
||||
Int转4个字节Byte
|
||||
低字节在前,高字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.IntToByteHB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
高字节在前,低字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetMd5(System.String)">
|
||||
<summary>
|
||||
获取文件的MD5值
|
||||
返回Byte数组值
|
||||
</summary>
|
||||
<param name="filepath">文件路径</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetMd5String(System.String)">
|
||||
<summary>
|
||||
获取文件的MD5值
|
||||
返回String字符串
|
||||
</summary>
|
||||
<param name="filepath">文件路径</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetLocalIp">
|
||||
<summary>
|
||||
获取本地可用IP
|
||||
</summary>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.ByteToString(System.Byte[])">
|
||||
<summary>
|
||||
Byte数组转字符串
|
||||
</summary>
|
||||
<param name="databuff"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.WaitReply(System.Boolean,System.Int32)">
|
||||
<summary>
|
||||
等待回复
|
||||
</summary>
|
||||
<param name="isReply">是否回复标志位</param>
|
||||
<param name="TimeOut">超时时间</param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.PauseWait(System.Int64)">
|
||||
<summary>
|
||||
延时N秒
|
||||
</summary>
|
||||
<param name="HowLong">延时时间值</param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetAddressToBytes(System.String)">
|
||||
<summary>
|
||||
IP地址转换为Byte数组
|
||||
</summary>
|
||||
<param name="addr"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetStringMd5(System.String)">
|
||||
<summary>
|
||||
获取字符串的MD5值
|
||||
</summary>
|
||||
<param name="str">需要求MD5的原文字符串</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetBlocks(System.Byte[],System.Int32)">
|
||||
<summary>
|
||||
分块函数
|
||||
计算Byte数组的块数
|
||||
</summary>
|
||||
<param name="databuff"></param>
|
||||
<param name="size"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetStringToDataByte(System.String)">
|
||||
<summary>
|
||||
字符串转换Byte数组
|
||||
字符串为连续且不包含任意字符的字符串
|
||||
</summary>
|
||||
<param name="str"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.FromUnixTime(System.Int64,System.Int64)">
|
||||
<summary>
|
||||
把UNIX时间戳转换为标准时间
|
||||
</summary>
|
||||
<param name="intTime">要转换的UNIX时间戳</param>
|
||||
<param name="ime">时区</param>
|
||||
<returns>intTime所代表的标准时间</returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.SumAndMod(System.Byte[])">
|
||||
<summary>
|
||||
和校验取余数
|
||||
求Byte数组的和校验取余数
|
||||
</summary>
|
||||
<param name="dataPacket">Byte数组</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.DataProcessing.GetEnumDescription(System.Enum)">
|
||||
<summary>
|
||||
获取枚举描述特性
|
||||
</summary>
|
||||
<param name="enumValue">需要获取特性的枚举值</param>
|
||||
<returns>枚举描述特性</returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.OpenSerial(System.IO.Ports.SerialPort,System.String,System.Int32)">
|
||||
<summary>
|
||||
打开串口
|
||||
</summary>
|
||||
<param name="m_Serial">串口</param>
|
||||
<param name="portName">串口号</param>
|
||||
<param name="baudRate">波特率</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.SetSerialBaudRate(System.IO.Ports.SerialPort,System.Int32)">
|
||||
<summary>
|
||||
设置串口波特率
|
||||
</summary>
|
||||
<param name="m_Serial"> 串口 </param>
|
||||
<param name="baudRate">波特率</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.CloseSerial(System.IO.Ports.SerialPort,System.Boolean@,System.Boolean@)">
|
||||
<summary>
|
||||
关闭串口
|
||||
</summary>
|
||||
<param name="m_Serial">串口</param>
|
||||
<param name="isread">串口关闭标志</param>
|
||||
<param name="isListen">串口等待关闭标志</param>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.IntToByteHB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
高字节在前,低字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.IntToByteLB(System.Int32)">
|
||||
<summary>
|
||||
Int转2个字节Byte
|
||||
高字节在前,低字节在后
|
||||
</summary>
|
||||
<param name="i"></param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
<member name="M:SerialPortLogFilterin.SharedFunction.GetSumCheckMod(System.Byte[])">
|
||||
<summary>
|
||||
和校验取余数
|
||||
求Byte数组的和校验取余数
|
||||
</summary>
|
||||
<param name="dataPacket">Byte数组</param>
|
||||
<returns></returns>
|
||||
</member>
|
||||
</members>
|
||||
</doc>
|
||||
BIN
obj/Debug/TempPE/My Project.Resources.Designer.vb.dll
Normal file
BIN
obj/Debug/TempPE/My Project.Resources.Designer.vb.dll
Normal file
Binary file not shown.
Reference in New Issue
Block a user