@@ -1,9 +1,5 @@ | |||||
using System; | |||||
using System.Collections.Generic; | |||||
using System.IO; | |||||
using System.IO; | |||||
using System.Runtime.Serialization.Formatters.Binary; | using System.Runtime.Serialization.Formatters.Binary; | ||||
using System.Text; | |||||
using System.Data; | |||||
namespace StuMgmLib.MyNameSpace | namespace StuMgmLib.MyNameSpace | ||||
{ | { | ||||
@@ -11,17 +11,19 @@ namespace StuMgmLib.MyNameSpace | |||||
{ | { | ||||
public short account { get; set; } | public short account { get; set; } | ||||
public string password { get; set; } | public string password { get; set; } | ||||
public string [] sqlStr { get; set; } | |||||
public string[] sqlStr { get; set; } | |||||
} | } | ||||
[Serializable] | [Serializable] | ||||
public class ServerSend | public class ServerSend | ||||
{ | { | ||||
public short permission { get; set; } | public short permission { get; set; } | ||||
public DataSet ds { get; set; } | public DataSet ds { get; set; } | ||||
public bool sqlSucceed { get; set; } | |||||
} | } | ||||
} | } | ||||
#region Unused | |||||
#region 题目信息 | #region 题目信息 | ||||
[Serializable] | [Serializable] | ||||
public class CourseInfo | public class CourseInfo | ||||
@@ -129,4 +131,8 @@ namespace StuMgmLib.MyNameSpace | |||||
//} | //} | ||||
} | } | ||||
#endregion | #endregion | ||||
#endregion | |||||
} | } | ||||
@@ -27,8 +27,9 @@ namespace StuMgmLib.MyNameSpace | |||||
* Account Permission (SqlOperate) | * Account Permission (SqlOperate) | ||||
* | * | ||||
* Send: ____________________________________________________________________ | * Send: ____________________________________________________________________ | ||||
* | Permission | DataSet | | |||||
* |___short________DS_______________________________________________________________| | |||||
* | Permission | DataSet | | |||||
* |___short________DS___________________________________________________| | |||||
* | |||||
*/ | */ | ||||
/// <summary> | /// <summary> | ||||
@@ -43,11 +44,6 @@ namespace StuMgmLib.MyNameSpace | |||||
ss.ds = null; | ss.ds = null; | ||||
return ss; | return ss; | ||||
} | } | ||||
bool sqlRes = false; | |||||
if (cs.sqlStr != null) // sql语句为空,则表示仅登录验证,应 | |||||
{ | |||||
sqlRes = mySqlModify(cs.sqlStr); | |||||
} | |||||
string[] tbName; | string[] tbName; | ||||
bool stuFlag = false; | bool stuFlag = false; | ||||
@@ -66,11 +62,18 @@ namespace StuMgmLib.MyNameSpace | |||||
tbName = null; | tbName = null; | ||||
break; | break; | ||||
} | } | ||||
ss.sqlSucceed = false; | |||||
if (cs.sqlStr != null) // sql语句为空,则表示仅登录验证;若不为空,则取数据库操作返回值,并返回SS; | |||||
{ | |||||
ss.sqlSucceed = mySqlModify(tbName, cs.sqlStr); | |||||
return ss; | |||||
} | |||||
ss.ds = getDataSet(tbName, stuFlag, cs.account); | ss.ds = getDataSet(tbName, stuFlag, cs.account); | ||||
return ss; | return ss; | ||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// 登录验证,若失败,则返回错误码;若身份验证成功,则返回用户权限; | /// 登录验证,若失败,则返回错误码;若身份验证成功,则返回用户权限; | ||||
/// </summary> | /// </summary> | ||||
@@ -93,9 +96,8 @@ namespace StuMgmLib.MyNameSpace | |||||
else | else | ||||
return notFound; | return notFound; | ||||
} | } | ||||
catch (MySqlException mySqlEx) | |||||
catch (MySqlException) | |||||
{ | { | ||||
MessageBox.Show(mySqlEx.Message); | |||||
return error; | return error; | ||||
} | } | ||||
finally | finally | ||||
@@ -107,7 +109,7 @@ namespace StuMgmLib.MyNameSpace | |||||
/// <summary> | /// <summary> | ||||
/// 改 | /// 改 | ||||
/// </summary> | /// </summary> | ||||
private static bool mySqlModify(string[] sqlStr) | |||||
private static bool mySqlModify(string[] tbName, string[] sqlStr) // Need to change ...... | |||||
{ | { | ||||
MySqlConnection con = new MySqlConnection(conStr); | MySqlConnection con = new MySqlConnection(conStr); | ||||
try | try | ||||
@@ -116,8 +118,8 @@ namespace StuMgmLib.MyNameSpace | |||||
int len = sqlStr.Length; | int len = sqlStr.Length; | ||||
for (int index = 0; index < len; index++) | for (int index = 0; index < len; index++) | ||||
{ | { | ||||
MySqlCommand mCmd = new MySqlCommand(sqlStr[index], con); // Need to change ...... | |||||
// To do sth here ...... | |||||
MySqlCommand mCmd = new MySqlCommand(sqlStr[index], con); // 优化:所操作数据表是否匹配权限 | |||||
mCmd.ExecuteNonQuery(); | |||||
} | } | ||||
return true; | return true; | ||||
} | } | ||||
@@ -1,12 +1,16 @@ | |||||
using System; | |||||
using System.Collections.Generic; | |||||
using System.Data; | |||||
/* Describtion : Class for Tcp Network Connection | |||||
* Company : Wuxi Xinje | |||||
* Author : Somuns | |||||
* DateTime : 2021/1/18 | |||||
*/ | |||||
using System; | |||||
using System.Net; | using System.Net; | ||||
using System.Net.Sockets; | using System.Net.Sockets; | ||||
using System.Windows.Forms; | |||||
namespace StuMgmLib.MyNameSpace | namespace StuMgmLib.MyNameSpace | ||||
{ | { | ||||
// 还有一种验证连接方式 Token | |||||
// 还有一种验证连接方式: Token | |||||
public class TcpConn | public class TcpConn | ||||
{ | { | ||||
private IPEndPoint IPP = null; | private IPEndPoint IPP = null; | ||||
@@ -23,10 +27,23 @@ namespace StuMgmLib.MyNameSpace | |||||
private set { my_SocketExist = value; } | private set { my_SocketExist = value; } | ||||
} | } | ||||
public void GetIPAddress(ComboBox cb) | |||||
{ | |||||
cb.Items.Clear(); | |||||
foreach (IPAddress ipAddr in Dns.GetHostEntry(Dns.GetHostName()).AddressList) | |||||
{ | |||||
if (ipAddr.AddressFamily.ToString() == "InterNetwork") | |||||
{ | |||||
cb.Items.Add(ipAddr.ToString()); | |||||
} | |||||
} | |||||
cb.Items.Add("127.0.0.1"); | |||||
} | |||||
#region 开启服务器 | #region 开启服务器 | ||||
public void OpenServer(int port) | |||||
public void OpenServer(string ipAddr, int port) | |||||
{ | { | ||||
IPP = new IPEndPoint(IPAddress.Parse("10.10.0.44"), port); | |||||
IPP = new IPEndPoint(IPAddress.Parse(ipAddr), port); | |||||
socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); | socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); | ||||
socket.Bind(IPP); | socket.Bind(IPP); | ||||
socket.Listen(0); | socket.Listen(0); | ||||
@@ -101,10 +118,5 @@ namespace StuMgmLib.MyNameSpace | |||||
} | } | ||||
#endregion | #endregion | ||||
} | } | ||||
} | } |
@@ -45,7 +45,7 @@ | |||||
<ItemGroup> | <ItemGroup> | ||||
<Compile Include="MyNameSpace\BinaryED.cs" /> | <Compile Include="MyNameSpace\BinaryED.cs" /> | ||||
<Compile Include="MyNameSpace\DataAnalyze.cs" /> | <Compile Include="MyNameSpace\DataAnalyze.cs" /> | ||||
<Compile Include="MyNameSpace\StuMgmSer.cs" /> | |||||
<Compile Include="MyNameSpace\CommonData.cs" /> | |||||
<Compile Include="MyNameSpace\TcpConn.cs" /> | <Compile Include="MyNameSpace\TcpConn.cs" /> | ||||
<Compile Include="Properties\AssemblyInfo.cs" /> | <Compile Include="Properties\AssemblyInfo.cs" /> | ||||
</ItemGroup> | </ItemGroup> | ||||
@@ -0,0 +1,124 @@ | |||||
namespace StuMgmLib | |||||
{ | |||||
partial class Exit | |||||
{ | |||||
/// <summary> | |||||
/// Required designer variable. | |||||
/// </summary> | |||||
private System.ComponentModel.IContainer components = null; | |||||
/// <summary> | |||||
/// Clean up any resources being used. | |||||
/// </summary> | |||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> | |||||
protected override void Dispose(bool disposing) | |||||
{ | |||||
if (disposing && (components != null)) | |||||
{ | |||||
components.Dispose(); | |||||
} | |||||
base.Dispose(disposing); | |||||
} | |||||
#region Windows Form Designer generated code | |||||
/// <summary> | |||||
/// Required method for Designer support - do not modify | |||||
/// the contents of this method with the code editor. | |||||
/// </summary> | |||||
private void InitializeComponent() | |||||
{ | |||||
this.tableLayoutPanel2 = new System.Windows.Forms.TableLayoutPanel(); | |||||
this.tableLayoutPanel3 = new System.Windows.Forms.TableLayoutPanel(); | |||||
this.label1 = new System.Windows.Forms.Label(); | |||||
this.button1 = new System.Windows.Forms.Button(); | |||||
this.button2 = new System.Windows.Forms.Button(); | |||||
this.tableLayoutPanel2.SuspendLayout(); | |||||
this.tableLayoutPanel3.SuspendLayout(); | |||||
this.SuspendLayout(); | |||||
// | |||||
// tableLayoutPanel2 | |||||
// | |||||
this.tableLayoutPanel2.ColumnCount = 1; | |||||
this.tableLayoutPanel2.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100F)); | |||||
this.tableLayoutPanel2.Controls.Add(this.label1, 0, 1); | |||||
this.tableLayoutPanel2.Location = new System.Drawing.Point(0, 12); | |||||
this.tableLayoutPanel2.Name = "tableLayoutPanel2"; | |||||
this.tableLayoutPanel2.RowCount = 2; | |||||
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); | |||||
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); | |||||
this.tableLayoutPanel2.Size = new System.Drawing.Size(232, 123); | |||||
this.tableLayoutPanel2.TabIndex = 1; | |||||
// | |||||
// tableLayoutPanel3 | |||||
// | |||||
this.tableLayoutPanel3.ColumnCount = 4; | |||||
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 15F)); | |||||
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 35F)); | |||||
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 35F)); | |||||
this.tableLayoutPanel3.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 15F)); | |||||
this.tableLayoutPanel3.Controls.Add(this.button1, 1, 0); | |||||
this.tableLayoutPanel3.Controls.Add(this.button2, 2, 0); | |||||
this.tableLayoutPanel3.Dock = System.Windows.Forms.DockStyle.Fill; | |||||
this.tableLayoutPanel3.Location = new System.Drawing.Point(0, 0); | |||||
this.tableLayoutPanel3.Name = "tableLayoutPanel3"; | |||||
this.tableLayoutPanel3.RowCount = 1; | |||||
this.tableLayoutPanel3.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); | |||||
this.tableLayoutPanel3.Size = new System.Drawing.Size(302, 193); | |||||
this.tableLayoutPanel3.TabIndex = 1; | |||||
// | |||||
// label1 | |||||
// | |||||
this.label1.AutoSize = true; | |||||
this.label1.Location = new System.Drawing.Point(3, 61); | |||||
this.label1.Name = "label1"; | |||||
this.label1.Size = new System.Drawing.Size(56, 23); | |||||
this.label1.TabIndex = 0; | |||||
this.label1.Text = "label1"; | |||||
// | |||||
// button1 | |||||
// | |||||
this.button1.Location = new System.Drawing.Point(48, 3); | |||||
this.button1.Name = "button1"; | |||||
this.button1.Size = new System.Drawing.Size(99, 67); | |||||
this.button1.TabIndex = 1; | |||||
this.button1.Text = "button1"; | |||||
this.button1.UseVisualStyleBackColor = true; | |||||
// | |||||
// button2 | |||||
// | |||||
this.button2.Location = new System.Drawing.Point(129, 11); | |||||
this.button2.Name = "button2"; | |||||
this.button2.Size = new System.Drawing.Size(99, 55); | |||||
this.button2.TabIndex = 2; | |||||
this.button2.Text = "button2"; | |||||
this.button2.UseVisualStyleBackColor = true; | |||||
// | |||||
// Exit | |||||
// | |||||
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 22F); | |||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; | |||||
this.ClientSize = new System.Drawing.Size(302, 193); | |||||
this.Controls.Add(this.tableLayoutPanel3); | |||||
this.Controls.Add(this.tableLayoutPanel2); | |||||
this.Font = new System.Drawing.Font("Calibri", 10.8F); | |||||
this.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4); | |||||
this.Name = "Exit"; | |||||
this.Text = "Exit"; | |||||
this.tableLayoutPanel2.ResumeLayout(false); | |||||
this.tableLayoutPanel2.PerformLayout(); | |||||
this.tableLayoutPanel3.ResumeLayout(false); | |||||
this.ResumeLayout(false); | |||||
} | |||||
#endregion | |||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel2; | |||||
private System.Windows.Forms.Label label1; | |||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel3; | |||||
private System.Windows.Forms.Button button1; | |||||
private System.Windows.Forms.Button button2; | |||||
} | |||||
} |
@@ -0,0 +1,18 @@ | |||||
using System; | |||||
using System.Collections.Generic; | |||||
using System.ComponentModel; | |||||
using System.Data; | |||||
using System.Drawing; | |||||
using System.Text; | |||||
using System.Windows.Forms; | |||||
namespace StuMgmLib | |||||
{ | |||||
public partial class Exit : Form | |||||
{ | |||||
public Exit() | |||||
{ | |||||
InitializeComponent(); | |||||
} | |||||
} | |||||
} |
@@ -0,0 +1,120 @@ | |||||
<?xml version="1.0" encoding="utf-8"?> | |||||
<root> | |||||
<!-- | |||||
Microsoft ResX Schema | |||||
Version 2.0 | |||||
The primary goals of this format is to allow a simple XML format | |||||
that is mostly human readable. The generation and parsing of the | |||||
various data types are done through the TypeConverter classes | |||||
associated with the data types. | |||||
Example: | |||||
... ado.net/XML headers & schema ... | |||||
<resheader name="resmimetype">text/microsoft-resx</resheader> | |||||
<resheader name="version">2.0</resheader> | |||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | |||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | |||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | |||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | |||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | |||||
<value>[base64 mime encoded serialized .NET Framework object]</value> | |||||
</data> | |||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | |||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | |||||
<comment>This is a comment</comment> | |||||
</data> | |||||
There are any number of "resheader" rows that contain simple | |||||
name/value pairs. | |||||
Each data row contains a name, and value. The row also contains a | |||||
type or mimetype. Type corresponds to a .NET class that support | |||||
text/value conversion through the TypeConverter architecture. | |||||
Classes that don't support this are serialized and stored with the | |||||
mimetype set. | |||||
The mimetype is used for serialized objects, and tells the | |||||
ResXResourceReader how to depersist the object. This is currently not | |||||
extensible. For a given mimetype the value must be set accordingly: | |||||
Note - application/x-microsoft.net.object.binary.base64 is the format | |||||
that the ResXResourceWriter will generate, however the reader can | |||||
read any of the formats listed below. | |||||
mimetype: application/x-microsoft.net.object.binary.base64 | |||||
value : The object must be serialized with | |||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | |||||
: and then encoded with base64 encoding. | |||||
mimetype: application/x-microsoft.net.object.soap.base64 | |||||
value : The object must be serialized with | |||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter | |||||
: and then encoded with base64 encoding. | |||||
mimetype: application/x-microsoft.net.object.bytearray.base64 | |||||
value : The object must be serialized into a byte array | |||||
: using a System.ComponentModel.TypeConverter | |||||
: and then encoded with base64 encoding. | |||||
--> | |||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | |||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | |||||
<xsd:element name="root" msdata:IsDataSet="true"> | |||||
<xsd:complexType> | |||||
<xsd:choice maxOccurs="unbounded"> | |||||
<xsd:element name="metadata"> | |||||
<xsd:complexType> | |||||
<xsd:sequence> | |||||
<xsd:element name="value" type="xsd:string" minOccurs="0" /> | |||||
</xsd:sequence> | |||||
<xsd:attribute name="name" use="required" type="xsd:string" /> | |||||
<xsd:attribute name="type" type="xsd:string" /> | |||||
<xsd:attribute name="mimetype" type="xsd:string" /> | |||||
<xsd:attribute ref="xml:space" /> | |||||
</xsd:complexType> | |||||
</xsd:element> | |||||
<xsd:element name="assembly"> | |||||
<xsd:complexType> | |||||
<xsd:attribute name="alias" type="xsd:string" /> | |||||
<xsd:attribute name="name" type="xsd:string" /> | |||||
</xsd:complexType> | |||||
</xsd:element> | |||||
<xsd:element name="data"> | |||||
<xsd:complexType> | |||||
<xsd:sequence> | |||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | |||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | |||||
</xsd:sequence> | |||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | |||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | |||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | |||||
<xsd:attribute ref="xml:space" /> | |||||
</xsd:complexType> | |||||
</xsd:element> | |||||
<xsd:element name="resheader"> | |||||
<xsd:complexType> | |||||
<xsd:sequence> | |||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | |||||
</xsd:sequence> | |||||
<xsd:attribute name="name" type="xsd:string" use="required" /> | |||||
</xsd:complexType> | |||||
</xsd:element> | |||||
</xsd:choice> | |||||
</xsd:complexType> | |||||
</xsd:element> | |||||
</xsd:schema> | |||||
<resheader name="resmimetype"> | |||||
<value>text/microsoft-resx</value> | |||||
</resheader> | |||||
<resheader name="version"> | |||||
<value>2.0</value> | |||||
</resheader> | |||||
<resheader name="reader"> | |||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=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> |
@@ -31,15 +31,20 @@ | |||||
this.components = new System.ComponentModel.Container(); | this.components = new System.ComponentModel.Container(); | ||||
this.tlpAll = new System.Windows.Forms.TableLayoutPanel(); | this.tlpAll = new System.Windows.Forms.TableLayoutPanel(); | ||||
this.rtxHistory = new System.Windows.Forms.RichTextBox(); | this.rtxHistory = new System.Windows.Forms.RichTextBox(); | ||||
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); | |||||
this.txtPort = new System.Windows.Forms.TextBox(); | |||||
this.tlpSettings = new System.Windows.Forms.TableLayoutPanel(); | |||||
this.lblSwiSta = new System.Windows.Forms.Label(); | this.lblSwiSta = new System.Windows.Forms.Label(); | ||||
this.btnSerSwitch = new System.Windows.Forms.Button(); | this.btnSerSwitch = new System.Windows.Forms.Button(); | ||||
this.lblPort = new System.Windows.Forms.Label(); | this.lblPort = new System.Windows.Forms.Label(); | ||||
this.txtPort = new System.Windows.Forms.TextBox(); | |||||
this.lblIP = new System.Windows.Forms.Label(); | |||||
this.cbxIPAddr = new System.Windows.Forms.ComboBox(); | |||||
this.menuStrip1 = new System.Windows.Forms.MenuStrip(); | this.menuStrip1 = new System.Windows.Forms.MenuStrip(); | ||||
this.菜单ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); | |||||
this.刷新IPToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem(); | |||||
this.tmr = new System.Windows.Forms.Timer(this.components); | this.tmr = new System.Windows.Forms.Timer(this.components); | ||||
this.tlpAll.SuspendLayout(); | this.tlpAll.SuspendLayout(); | ||||
this.tableLayoutPanel1.SuspendLayout(); | |||||
this.tlpSettings.SuspendLayout(); | |||||
this.menuStrip1.SuspendLayout(); | |||||
this.SuspendLayout(); | this.SuspendLayout(); | ||||
// | // | ||||
// tlpAll | // tlpAll | ||||
@@ -48,14 +53,14 @@ | |||||
this.tlpAll.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 27.25581F)); | this.tlpAll.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 27.25581F)); | ||||
this.tlpAll.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 72.74419F)); | this.tlpAll.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 72.74419F)); | ||||
this.tlpAll.Controls.Add(this.rtxHistory, 0, 0); | this.tlpAll.Controls.Add(this.rtxHistory, 0, 0); | ||||
this.tlpAll.Controls.Add(this.tableLayoutPanel1, 0, 0); | |||||
this.tlpAll.Controls.Add(this.tlpSettings, 0, 0); | |||||
this.tlpAll.Dock = System.Windows.Forms.DockStyle.Fill; | this.tlpAll.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
this.tlpAll.Location = new System.Drawing.Point(0, 24); | |||||
this.tlpAll.Location = new System.Drawing.Point(0, 28); | |||||
this.tlpAll.Name = "tlpAll"; | this.tlpAll.Name = "tlpAll"; | ||||
this.tlpAll.RowCount = 1; | this.tlpAll.RowCount = 1; | ||||
this.tlpAll.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); | this.tlpAll.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100F)); | ||||
this.tlpAll.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 413F)); | |||||
this.tlpAll.Size = new System.Drawing.Size(1075, 413); | |||||
this.tlpAll.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 409F)); | |||||
this.tlpAll.Size = new System.Drawing.Size(1075, 409); | |||||
this.tlpAll.TabIndex = 0; | this.tlpAll.TabIndex = 0; | ||||
// | // | ||||
// rtxHistory | // rtxHistory | ||||
@@ -64,45 +69,38 @@ | |||||
this.rtxHistory.Font = new System.Drawing.Font("Calibri", 10.8F); | this.rtxHistory.Font = new System.Drawing.Font("Calibri", 10.8F); | ||||
this.rtxHistory.Location = new System.Drawing.Point(295, 3); | this.rtxHistory.Location = new System.Drawing.Point(295, 3); | ||||
this.rtxHistory.Name = "rtxHistory"; | this.rtxHistory.Name = "rtxHistory"; | ||||
this.rtxHistory.Size = new System.Drawing.Size(777, 407); | |||||
this.rtxHistory.Size = new System.Drawing.Size(777, 403); | |||||
this.rtxHistory.TabIndex = 2; | this.rtxHistory.TabIndex = 2; | ||||
this.rtxHistory.Text = ""; | this.rtxHistory.Text = ""; | ||||
// | // | ||||
// tableLayoutPanel1 | |||||
// | |||||
this.tableLayoutPanel1.ColumnCount = 2; | |||||
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 45.8042F)); | |||||
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 54.1958F)); | |||||
this.tableLayoutPanel1.Controls.Add(this.txtPort, 1, 0); | |||||
this.tableLayoutPanel1.Controls.Add(this.lblSwiSta, 0, 1); | |||||
this.tableLayoutPanel1.Controls.Add(this.btnSerSwitch, 1, 1); | |||||
this.tableLayoutPanel1.Controls.Add(this.lblPort, 0, 0); | |||||
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Top; | |||||
this.tableLayoutPanel1.Location = new System.Drawing.Point(3, 3); | |||||
this.tableLayoutPanel1.Name = "tableLayoutPanel1"; | |||||
this.tableLayoutPanel1.RowCount = 2; | |||||
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); | |||||
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); | |||||
this.tableLayoutPanel1.Size = new System.Drawing.Size(286, 100); | |||||
this.tableLayoutPanel1.TabIndex = 0; | |||||
// | |||||
// txtPort | |||||
// | |||||
this.txtPort.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); | |||||
this.txtPort.Font = new System.Drawing.Font("Calibri", 10.8F); | |||||
this.txtPort.Location = new System.Drawing.Point(134, 10); | |||||
this.txtPort.Name = "txtPort"; | |||||
this.txtPort.Size = new System.Drawing.Size(149, 29); | |||||
this.txtPort.TabIndex = 3; | |||||
this.txtPort.Text = "502"; | |||||
this.txtPort.TextAlign = System.Windows.Forms.HorizontalAlignment.Right; | |||||
// tlpSettings | |||||
// | |||||
this.tlpSettings.ColumnCount = 2; | |||||
this.tlpSettings.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 45.8042F)); | |||||
this.tlpSettings.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 54.1958F)); | |||||
this.tlpSettings.Controls.Add(this.lblSwiSta, 0, 2); | |||||
this.tlpSettings.Controls.Add(this.btnSerSwitch, 1, 2); | |||||
this.tlpSettings.Controls.Add(this.lblPort, 0, 1); | |||||
this.tlpSettings.Controls.Add(this.txtPort, 1, 1); | |||||
this.tlpSettings.Controls.Add(this.lblIP, 0, 0); | |||||
this.tlpSettings.Controls.Add(this.cbxIPAddr, 1, 0); | |||||
this.tlpSettings.Dock = System.Windows.Forms.DockStyle.Top; | |||||
this.tlpSettings.Location = new System.Drawing.Point(3, 3); | |||||
this.tlpSettings.Name = "tlpSettings"; | |||||
this.tlpSettings.RowCount = 3; | |||||
this.tlpSettings.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); | |||||
this.tlpSettings.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); | |||||
this.tlpSettings.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); | |||||
this.tlpSettings.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F)); | |||||
this.tlpSettings.Size = new System.Drawing.Size(286, 178); | |||||
this.tlpSettings.TabIndex = 0; | |||||
// | // | ||||
// lblSwiSta | // lblSwiSta | ||||
// | // | ||||
this.lblSwiSta.Anchor = System.Windows.Forms.AnchorStyles.None; | |||||
this.lblSwiSta.Anchor = System.Windows.Forms.AnchorStyles.Left; | |||||
this.lblSwiSta.AutoSize = true; | this.lblSwiSta.AutoSize = true; | ||||
this.lblSwiSta.Font = new System.Drawing.Font("Calibri", 10.8F); | this.lblSwiSta.Font = new System.Drawing.Font("Calibri", 10.8F); | ||||
this.lblSwiSta.Location = new System.Drawing.Point(10, 63); | |||||
this.lblSwiSta.Location = new System.Drawing.Point(3, 136); | |||||
this.lblSwiSta.Name = "lblSwiSta"; | this.lblSwiSta.Name = "lblSwiSta"; | ||||
this.lblSwiSta.Size = new System.Drawing.Size(110, 23); | this.lblSwiSta.Size = new System.Drawing.Size(110, 23); | ||||
this.lblSwiSta.TabIndex = 1; | this.lblSwiSta.TabIndex = 1; | ||||
@@ -110,11 +108,11 @@ | |||||
// | // | ||||
// btnSerSwitch | // btnSerSwitch | ||||
// | // | ||||
this.btnSerSwitch.Dock = System.Windows.Forms.DockStyle.Fill; | |||||
this.btnSerSwitch.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); | |||||
this.btnSerSwitch.Font = new System.Drawing.Font("Calibri", 10.8F); | this.btnSerSwitch.Font = new System.Drawing.Font("Calibri", 10.8F); | ||||
this.btnSerSwitch.Location = new System.Drawing.Point(134, 53); | |||||
this.btnSerSwitch.Location = new System.Drawing.Point(134, 121); | |||||
this.btnSerSwitch.Name = "btnSerSwitch"; | this.btnSerSwitch.Name = "btnSerSwitch"; | ||||
this.btnSerSwitch.Size = new System.Drawing.Size(149, 44); | |||||
this.btnSerSwitch.Size = new System.Drawing.Size(149, 54); | |||||
this.btnSerSwitch.TabIndex = 2; | this.btnSerSwitch.TabIndex = 2; | ||||
this.btnSerSwitch.Text = "开启服务器"; | this.btnSerSwitch.Text = "开启服务器"; | ||||
this.btnSerSwitch.UseVisualStyleBackColor = true; | this.btnSerSwitch.UseVisualStyleBackColor = true; | ||||
@@ -122,24 +120,75 @@ | |||||
// | // | ||||
// lblPort | // lblPort | ||||
// | // | ||||
this.lblPort.Anchor = System.Windows.Forms.AnchorStyles.None; | |||||
this.lblPort.Anchor = System.Windows.Forms.AnchorStyles.Left; | |||||
this.lblPort.AutoSize = true; | this.lblPort.AutoSize = true; | ||||
this.lblPort.Font = new System.Drawing.Font("Calibri", 10.8F); | this.lblPort.Font = new System.Drawing.Font("Calibri", 10.8F); | ||||
this.lblPort.Location = new System.Drawing.Point(20, 13); | |||||
this.lblPort.Location = new System.Drawing.Point(3, 77); | |||||
this.lblPort.Name = "lblPort"; | this.lblPort.Name = "lblPort"; | ||||
this.lblPort.Size = new System.Drawing.Size(90, 23); | this.lblPort.Size = new System.Drawing.Size(90, 23); | ||||
this.lblPort.TabIndex = 0; | this.lblPort.TabIndex = 0; | ||||
this.lblPort.Text = "本地端口"; | this.lblPort.Text = "本地端口"; | ||||
// | // | ||||
// txtPort | |||||
// | |||||
this.txtPort.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); | |||||
this.txtPort.Font = new System.Drawing.Font("Calibri", 10.8F); | |||||
this.txtPort.Location = new System.Drawing.Point(134, 74); | |||||
this.txtPort.Name = "txtPort"; | |||||
this.txtPort.Size = new System.Drawing.Size(149, 29); | |||||
this.txtPort.TabIndex = 3; | |||||
this.txtPort.Text = "502"; | |||||
this.txtPort.TextAlign = System.Windows.Forms.HorizontalAlignment.Right; | |||||
// | |||||
// lblIP | |||||
// | |||||
this.lblIP.Anchor = System.Windows.Forms.AnchorStyles.Left; | |||||
this.lblIP.AutoSize = true; | |||||
this.lblIP.Font = new System.Drawing.Font("Calibri", 10.8F); | |||||
this.lblIP.Location = new System.Drawing.Point(3, 18); | |||||
this.lblIP.Name = "lblIP"; | |||||
this.lblIP.Size = new System.Drawing.Size(66, 23); | |||||
this.lblIP.TabIndex = 4; | |||||
this.lblIP.Text = "本机IP"; | |||||
// | |||||
// cbxIPAddr | |||||
// | |||||
this.cbxIPAddr.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Left | System.Windows.Forms.AnchorStyles.Right))); | |||||
this.cbxIPAddr.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; | |||||
this.cbxIPAddr.Font = new System.Drawing.Font("Calibri", 10.8F); | |||||
this.cbxIPAddr.FormattingEnabled = true; | |||||
this.cbxIPAddr.Location = new System.Drawing.Point(134, 14); | |||||
this.cbxIPAddr.Name = "cbxIPAddr"; | |||||
this.cbxIPAddr.RightToLeft = System.Windows.Forms.RightToLeft.Yes; | |||||
this.cbxIPAddr.Size = new System.Drawing.Size(149, 30); | |||||
this.cbxIPAddr.TabIndex = 5; | |||||
// | |||||
// menuStrip1 | // menuStrip1 | ||||
// | // | ||||
this.menuStrip1.ImageScalingSize = new System.Drawing.Size(20, 20); | this.menuStrip1.ImageScalingSize = new System.Drawing.Size(20, 20); | ||||
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { | |||||
this.菜单ToolStripMenuItem}); | |||||
this.menuStrip1.Location = new System.Drawing.Point(0, 0); | this.menuStrip1.Location = new System.Drawing.Point(0, 0); | ||||
this.menuStrip1.Name = "menuStrip1"; | this.menuStrip1.Name = "menuStrip1"; | ||||
this.menuStrip1.Size = new System.Drawing.Size(1075, 24); | |||||
this.menuStrip1.Size = new System.Drawing.Size(1075, 28); | |||||
this.menuStrip1.TabIndex = 1; | this.menuStrip1.TabIndex = 1; | ||||
this.menuStrip1.Text = "menuStrip1"; | this.menuStrip1.Text = "menuStrip1"; | ||||
// | // | ||||
// 菜单ToolStripMenuItem | |||||
// | |||||
this.菜单ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { | |||||
this.刷新IPToolStripMenuItem}); | |||||
this.菜单ToolStripMenuItem.Name = "菜单ToolStripMenuItem"; | |||||
this.菜单ToolStripMenuItem.Size = new System.Drawing.Size(51, 24); | |||||
this.菜单ToolStripMenuItem.Text = "菜单"; | |||||
// | |||||
// 刷新IPToolStripMenuItem | |||||
// | |||||
this.刷新IPToolStripMenuItem.Name = "刷新IPToolStripMenuItem"; | |||||
this.刷新IPToolStripMenuItem.Size = new System.Drawing.Size(181, 26); | |||||
this.刷新IPToolStripMenuItem.Text = "刷新IP"; | |||||
this.刷新IPToolStripMenuItem.Click += new System.EventHandler(this.刷新IPToolStripMenuItem_Click); | |||||
// | |||||
// tmr | // tmr | ||||
// | // | ||||
this.tmr.Enabled = true; | this.tmr.Enabled = true; | ||||
@@ -155,10 +204,13 @@ | |||||
this.MainMenuStrip = this.menuStrip1; | this.MainMenuStrip = this.menuStrip1; | ||||
this.Name = "Server"; | this.Name = "Server"; | ||||
this.Text = "Server"; | this.Text = "Server"; | ||||
this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.Server_FormClosed); | |||||
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Server_FormClosing); | |||||
this.Load += new System.EventHandler(this.Server_Load); | |||||
this.tlpAll.ResumeLayout(false); | this.tlpAll.ResumeLayout(false); | ||||
this.tableLayoutPanel1.ResumeLayout(false); | |||||
this.tableLayoutPanel1.PerformLayout(); | |||||
this.tlpSettings.ResumeLayout(false); | |||||
this.tlpSettings.PerformLayout(); | |||||
this.menuStrip1.ResumeLayout(false); | |||||
this.menuStrip1.PerformLayout(); | |||||
this.ResumeLayout(false); | this.ResumeLayout(false); | ||||
this.PerformLayout(); | this.PerformLayout(); | ||||
@@ -169,12 +221,16 @@ | |||||
private System.Windows.Forms.TableLayoutPanel tlpAll; | private System.Windows.Forms.TableLayoutPanel tlpAll; | ||||
private System.Windows.Forms.MenuStrip menuStrip1; | private System.Windows.Forms.MenuStrip menuStrip1; | ||||
private System.Windows.Forms.Label lblSwiSta; | private System.Windows.Forms.Label lblSwiSta; | ||||
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1; | |||||
private System.Windows.Forms.TableLayoutPanel tlpSettings; | |||||
private System.Windows.Forms.Button btnSerSwitch; | private System.Windows.Forms.Button btnSerSwitch; | ||||
private System.Windows.Forms.Label lblPort; | private System.Windows.Forms.Label lblPort; | ||||
private System.Windows.Forms.TextBox txtPort; | private System.Windows.Forms.TextBox txtPort; | ||||
private System.Windows.Forms.Timer tmr; | private System.Windows.Forms.Timer tmr; | ||||
private System.Windows.Forms.RichTextBox rtxHistory; | private System.Windows.Forms.RichTextBox rtxHistory; | ||||
private System.Windows.Forms.Label lblIP; | |||||
private System.Windows.Forms.ComboBox cbxIPAddr; | |||||
private System.Windows.Forms.ToolStripMenuItem 菜单ToolStripMenuItem; | |||||
private System.Windows.Forms.ToolStripMenuItem 刷新IPToolStripMenuItem; | |||||
} | } | ||||
} | } | ||||
@@ -2,6 +2,7 @@ | |||||
using System.Threading; | using System.Threading; | ||||
using System.Windows.Forms; | using System.Windows.Forms; | ||||
using StuMgmLib.MyNameSpace; | using StuMgmLib.MyNameSpace; | ||||
using System.ComponentModel; | |||||
namespace StuMgmServer | namespace StuMgmServer | ||||
{ | { | ||||
@@ -15,13 +16,9 @@ namespace StuMgmServer | |||||
{ | { | ||||
InitializeComponent(); | InitializeComponent(); | ||||
} | } | ||||
private void Server_FormClosed(object sender, FormClosedEventArgs e) | |||||
private void 刷新IPToolStripMenuItem_Click(object sender, EventArgs e) | |||||
{ | { | ||||
DialogResult dr = MessageBox.Show("确认退出程序?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question); | |||||
if (dr == DialogResult.OK) | |||||
{ | |||||
System.Environment.Exit(0); | |||||
} | |||||
tcpConn.GetIPAddress(cbxIPAddr); | |||||
} | } | ||||
/// <summary> | /// <summary> | ||||
/// 委托:更新界面方法 | /// 委托:更新界面方法 | ||||
@@ -52,7 +49,7 @@ namespace StuMgmServer | |||||
else if (sFlag != true) | else if (sFlag != true) | ||||
{ | { | ||||
int port = Convert.ToInt16(txtPort.Text); | int port = Convert.ToInt16(txtPort.Text); | ||||
tcpConn.OpenServer(port); | |||||
tcpConn.OpenServer(cbxIPAddr.Text, port); | |||||
tUpdateUi = new Thread(updateHistory); | tUpdateUi = new Thread(updateHistory); | ||||
tUpdateUi.Start(); | tUpdateUi.Start(); | ||||
} | } | ||||
@@ -86,6 +83,27 @@ namespace StuMgmServer | |||||
btnSerSwitch.Text = "开启服务器"; | btnSerSwitch.Text = "开启服务器"; | ||||
} | } | ||||
private void Server_Load(object sender, EventArgs e) | |||||
{ | |||||
tcpConn.GetIPAddress(cbxIPAddr); | |||||
} | |||||
private void Server_FormClosing(object sender, FormClosingEventArgs e) | |||||
{ | |||||
//DialogResult dr = MessageBox.Show("确认退出程序?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question); | |||||
//if (dr != DialogResult.Yes) | |||||
//e.Cancel = true; | |||||
//tmr.Dispose(); | |||||
//if (tUpdateUi != null) | |||||
// tUpdateUi.Abort(); | |||||
//if (MessageBox.Show("确认退出程序?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK) | |||||
System.Environment.Exit(0); | |||||
} | |||||
} | } | ||||
} | } |
@@ -123,4 +123,7 @@ | |||||
<metadata name="tmr.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> | <metadata name="tmr.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> | ||||
<value>159, 17</value> | <value>159, 17</value> | ||||
</metadata> | </metadata> | ||||
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | |||||
<value>68</value> | |||||
</metadata> | |||||
</root> | </root> |
@@ -43,6 +43,12 @@ | |||||
<Reference Include="System.Xml" /> | <Reference Include="System.Xml" /> | ||||
</ItemGroup> | </ItemGroup> | ||||
<ItemGroup> | <ItemGroup> | ||||
<Compile Include="Exit.cs"> | |||||
<SubType>Form</SubType> | |||||
</Compile> | |||||
<Compile Include="Exit.Designer.cs"> | |||||
<DependentUpon>Exit.cs</DependentUpon> | |||||
</Compile> | |||||
<Compile Include="Server.cs"> | <Compile Include="Server.cs"> | ||||
<SubType>Form</SubType> | <SubType>Form</SubType> | ||||
</Compile> | </Compile> | ||||
@@ -51,6 +57,9 @@ | |||||
</Compile> | </Compile> | ||||
<Compile Include="Program.cs" /> | <Compile Include="Program.cs" /> | ||||
<Compile Include="Properties\AssemblyInfo.cs" /> | <Compile Include="Properties\AssemblyInfo.cs" /> | ||||
<EmbeddedResource Include="Exit.resx"> | |||||
<DependentUpon>Exit.cs</DependentUpon> | |||||
</EmbeddedResource> | |||||
<EmbeddedResource Include="Properties\Resources.resx"> | <EmbeddedResource Include="Properties\Resources.resx"> | ||||
<Generator>ResXFileCodeGenerator</Generator> | <Generator>ResXFileCodeGenerator</Generator> | ||||
<LastGenOutput>Resources.Designer.cs</LastGenOutput> | <LastGenOutput>Resources.Designer.cs</LastGenOutput> | ||||
@@ -66,30 +66,33 @@ | |||||
// | // | ||||
// dataGridView1 | // dataGridView1 | ||||
// | // | ||||
this.dataGridView1.AllowUserToAddRows = false; | |||||
this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; | this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; | ||||
this.dataGridView1.Dock = System.Windows.Forms.DockStyle.Fill; | this.dataGridView1.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
this.dataGridView1.Location = new System.Drawing.Point(3, 3); | this.dataGridView1.Location = new System.Drawing.Point(3, 3); | ||||
this.dataGridView1.Name = "dataGridView1"; | this.dataGridView1.Name = "dataGridView1"; | ||||
this.dataGridView1.RowTemplate.Height = 27; | this.dataGridView1.RowTemplate.Height = 27; | ||||
this.dataGridView1.Size = new System.Drawing.Size(1103, 153); | |||||
this.dataGridView1.Size = new System.Drawing.Size(1103, 216); | |||||
this.dataGridView1.TabIndex = 2; | this.dataGridView1.TabIndex = 2; | ||||
// | // | ||||
// dataGridView2 | // dataGridView2 | ||||
// | // | ||||
this.dataGridView2.AllowUserToAddRows = false; | |||||
this.dataGridView2.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; | this.dataGridView2.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; | ||||
this.dataGridView2.Dock = System.Windows.Forms.DockStyle.Fill; | this.dataGridView2.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
this.dataGridView2.Location = new System.Drawing.Point(3, 321); | |||||
this.dataGridView2.Location = new System.Drawing.Point(3, 447); | |||||
this.dataGridView2.Name = "dataGridView2"; | this.dataGridView2.Name = "dataGridView2"; | ||||
this.dataGridView2.Size = new System.Drawing.Size(1103, 156); | |||||
this.dataGridView2.Size = new System.Drawing.Size(1103, 218); | |||||
this.dataGridView2.TabIndex = 3; | this.dataGridView2.TabIndex = 3; | ||||
// | // | ||||
// dataGridView3 | // dataGridView3 | ||||
// | // | ||||
this.dataGridView3.AllowUserToAddRows = false; | |||||
this.dataGridView3.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; | this.dataGridView3.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; | ||||
this.dataGridView3.Dock = System.Windows.Forms.DockStyle.Fill; | this.dataGridView3.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
this.dataGridView3.Location = new System.Drawing.Point(3, 162); | |||||
this.dataGridView3.Location = new System.Drawing.Point(3, 225); | |||||
this.dataGridView3.Name = "dataGridView3"; | this.dataGridView3.Name = "dataGridView3"; | ||||
this.dataGridView3.Size = new System.Drawing.Size(1103, 153); | |||||
this.dataGridView3.Size = new System.Drawing.Size(1103, 216); | |||||
this.dataGridView3.TabIndex = 4; | this.dataGridView3.TabIndex = 4; | ||||
// | // | ||||
// tableLayoutPanel1 | // tableLayoutPanel1 | ||||
@@ -121,14 +124,14 @@ | |||||
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); | this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); | ||||
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); | this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); | ||||
this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); | this.tableLayoutPanel2.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 33.33333F)); | ||||
this.tableLayoutPanel2.Size = new System.Drawing.Size(1109, 480); | |||||
this.tableLayoutPanel2.Size = new System.Drawing.Size(1109, 668); | |||||
this.tableLayoutPanel2.TabIndex = 6; | this.tableLayoutPanel2.TabIndex = 6; | ||||
// | // | ||||
// Form1 | // Form1 | ||||
// | // | ||||
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F); | this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F); | ||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; | ||||
this.ClientSize = new System.Drawing.Size(1109, 541); | |||||
this.ClientSize = new System.Drawing.Size(1109, 729); | |||||
this.Controls.Add(this.tableLayoutPanel2); | this.Controls.Add(this.tableLayoutPanel2); | ||||
this.Controls.Add(this.tableLayoutPanel1); | this.Controls.Add(this.tableLayoutPanel1); | ||||
this.Name = "Form1"; | this.Name = "Form1"; | ||||
@@ -30,27 +30,35 @@ namespace Test | |||||
cs.account = 01941; | cs.account = 01941; | ||||
cs.password = "980505"; | cs.password = "980505"; | ||||
cs.sqlStr = null; | cs.sqlStr = null; | ||||
byte[] send = BinaryED.Serialize<Info.ClientSend>(cs); | |||||
socket.Send(send); | |||||
byte[] recv = new byte[65535]; | |||||
socket.Receive(recv); | |||||
Info.ServerSend ss = BinaryED.Deserialize<Info.ServerSend>(recv); | |||||
short per = ss.permission; | |||||
DataSet ds = ss.ds; | |||||
DataTable dt1 = ds.Tables["course_info"]; | |||||
DataTable dt2 = ds.Tables["user_info"]; | |||||
DataTable dt3 = ds.Tables["user"]; | |||||
dataGridView1.DataSource = dt1; | |||||
dataGridView2.DataSource = dt2; | |||||
dataGridView3.DataSource = dt3; | |||||
//cs.sqlStr = new string[1]; | |||||
//cs.sqlStr[0] = "UPDATE user_info set course_status = '李俊阳是个憨憨' WHERE job_id=1941"; | |||||
if (socket != null) | |||||
{ | |||||
byte[] send = BinaryED.Serialize<Info.ClientSend>(cs); | |||||
socket.Send(send); | |||||
byte[] recv = new byte[65535]; | |||||
socket.Receive(recv); | |||||
Info.ServerSend ss = BinaryED.Deserialize<Info.ServerSend>(recv); | |||||
//short per = ss.permission; | |||||
DataSet ds = ss.ds; | |||||
if (ds != null) | |||||
{ | |||||
DataTable dt1 = ds.Tables["course_info"]; | |||||
DataTable dt2 = ds.Tables["user_info"]; | |||||
DataTable dt3 = ds.Tables["user"]; | |||||
dataGridView1.DataSource = dt1; | |||||
dataGridView2.DataSource = dt2; | |||||
dataGridView3.DataSource = dt3; | |||||
} | |||||
} | |||||
socket = null; | |||||
} | } | ||||
private void button2_Click(object sender, EventArgs e) | private void button2_Click(object sender, EventArgs e) | ||||
{ | { | ||||
try | try | ||||
{ | { | ||||
string ip = "127.0.0.1"; | |||||
string ip = "10.10.0.44"; | |||||
int port = 502; | int port = 502; | ||||
IPP = new IPEndPoint(IPAddress.Parse(ip), port); | IPP = new IPEndPoint(IPAddress.Parse(ip), port); | ||||
socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); | socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); | ||||