资源简介
C# Socket登录验证
一、说明
本程序只是学习应用Socket登录验证和序列化、反序列化的应用,所以只使用了最基本Socket函数,不是框架。
为了便于学习,服务端使用Access数据库,如需修改数据库内的图片,自建程序文件,写代码:
for (int i=0;i<29;i )
{
byte[] imagebytes = ReadImageFile(i ".jpg");
OleDbCommand com = new OleDbCommand("UPDATE UserInfo SET User_Portrait=(@ImageList) WHERE id=" (i 1), Conn);
com.Parameters.Add("ImageList", OleDbType.Binary);
com.Parameters["ImageList"].Value = imagebytes;
com.ExecuteNonQuery();
}
将图片更新到数据库中,本程序中限定图像大小为80*80。
数据结构定义在dataStructure.cs,每条传输数据生成新的验证码,根据验证解密,见每个class中的SecretKey。
总的密钥:
string sKey = "㊣o(╥﹏╥)o"; // 密钥8位
服务端客户端要一致。
private string ServerAddress = "服务器ip"; // 服务器ip地址
public static int port = 51888; // 使用的端口号
Server服务端与客户端一致,Form1.cs。
private IPAddress[] ServerAddress = Dns.GetHostAddresses("服务器ip"); // 服务器ip地址
private int port = 51888; // 使用的端口号
编译后先执行Server.exe,再执行Client.exe,
用户名1000至1028,密码为123456
三、使用的组件和修改
界面使用:http://www.haolizi.net/example/view_14426.html 的SQK.DLL
修改了UiScrollBoxMethod.cs,增加了滚动到最底部函数,自行编写:
SetBottom()函数
......
foreach (UiControlsMethod.ADraggableGDIObject item in m_DraggableGDIObjects)
{
set_y = limtY;
......
item.Region = new Rectangle(0, set_y, item.Region.Width, item.Region.Height);
ScrollBox_.Invalidate();
}
修改了UiInputBoxMethods.cs,解决了粘贴带文字样式的问题,本程序中没有使用,可以参照本程序INputForm.cs自行修改。
四、Win7、Win8都可运行,建议Win10运行,效果更好,Vs2017编译,2015也可以。
.Net4.6.1,如其他版本,需重新编译http://www.haolizi.net/example/view_14426.html 的SQK.DLL
一、说明
本程序只是学习应用Socket登录验证和序列化、反序列化的应用,所以只使用了最基本Socket函数,不是框架。
为了便于学习,服务端使用Access数据库,如需修改数据库内的图片,自建程序文件,写代码:
for (int i=0;i<29;i )
{
byte[] imagebytes = ReadImageFile(i ".jpg");
OleDbCommand com = new OleDbCommand("UPDATE UserInfo SET User_Portrait=(@ImageList) WHERE id=" (i 1), Conn);
com.Parameters.Add("ImageList", OleDbType.Binary);
com.Parameters["ImageList"].Value = imagebytes;
com.ExecuteNonQuery();
}
将图片更新到数据库中,本程序中限定图像大小为80*80。
数据结构定义在dataStructure.cs,每条传输数据生成新的验证码,根据验证解密,见每个class中的SecretKey。
总的密钥:
string sKey = "㊣o(╥﹏╥)o"; // 密钥8位
服务端客户端要一致。
二、使用
Client客户端设置服务器地址,可以是本机,Login_Form.cs。private string ServerAddress = "服务器ip"; // 服务器ip地址
public static int port = 51888; // 使用的端口号
Server服务端与客户端一致,Form1.cs。
private IPAddress[] ServerAddress = Dns.GetHostAddresses("服务器ip"); // 服务器ip地址
private int port = 51888; // 使用的端口号
编译后先执行Server.exe,再执行Client.exe,
用户名1000至1028,密码为123456
三、使用的组件和修改
界面使用:http://www.haolizi.net/example/view_14426.html 的SQK.DLL
修改了UiScrollBoxMethod.cs,增加了滚动到最底部函数,自行编写:
SetBottom()函数
......
foreach (UiControlsMethod.ADraggableGDIObject item in m_DraggableGDIObjects)
{
set_y = limtY;
......
item.Region = new Rectangle(0, set_y, item.Region.Width, item.Region.Height);
ScrollBox_.Invalidate();
}
修改了UiInputBoxMethods.cs,解决了粘贴带文字样式的问题,本程序中没有使用,可以参照本程序INputForm.cs自行修改。
四、Win7、Win8都可运行,建议Win10运行,效果更好,Vs2017编译,2015也可以。
.Net4.6.1,如其他版本,需重新编译http://www.haolizi.net/example/view_14426.html 的SQK.DLL
代码片段和文件信息
using System;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text.Regularexpressions;
using System.Windows.Forms;
using static Client.DataStructure;
namespace Client
{
///
/// 显示信息窗体
///
public class appForm
{
public AlphaForm Afrm;
public UiControlsMethod.PanelEx panel_ListMessage;
UiScrollBoxMethod scroll_Meesga;
UiDrawTextMethod ds = new UiDrawTextMethod();
Font fnt = new Font(“微软雅黑“ 9 Fontstyle.Regular);
RichTextBoxEx rich_conter;
TextBox tmpFocus;
int Line_width Line_height; //显示对话内容容器的宽度和高度
int Message_Height = 30;
public IntPtr Handle { get; private se
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 84992 2018-03-25 21:54 Client\.vs\Client\v15\.suo
文件 0 2018-03-17 20:46 Client\.vs\Client\v15\Server\sqlite3\db.lock
文件 1994752 2018-03-25 21:26 Client\.vs\Client\v15\Server\sqlite3\storage.ide
文件 186 2018-03-18 18:54 Client\Client\App.config
文件 17066 2018-03-25 21:21 Client\Client\appForm.cs
文件 6488576 2018-03-25 21:54 Client\Client\bin\Debug\Client.exe
文件 186 2018-03-18 18:54 Client\Client\bin\Debug\Client.exe.config
文件 77312 2018-03-25 21:54 Client\Client\bin\Debug\Client.pdb
文件 165548 2017-11-04 19:24 Client\Client\bin\Debug\fontawesome-webfont.ttf
文件 47926 2002-05-02 04:05 Client\Client\bin\Debug\Paintdrp.ttf
文件 1089 2018-03-25 11:22 Client\Client\bin\Debug\ResFile\0-min.png
文件 16058 2018-03-24 22:23 Client\Client\bin\Debug\ResFile\0.png
文件 1118 2018-03-25 11:25 Client\Client\bin\Debug\ResFile\1-min.png
文件 16094 2018-03-24 22:25 Client\Client\bin\Debug\ResFile\1.png
文件 1094 2018-03-25 11:24 Client\Client\bin\Debug\ResFile\10-min.png
文件 16080 2018-03-24 22:27 Client\Client\bin\Debug\ResFile\10.png
文件 1140 2018-03-25 11:24 Client\Client\bin\Debug\ResFile\11-min.png
文件 16135 2018-03-24 22:30 Client\Client\bin\Debug\ResFile\11.png
文件 1129 2018-03-25 11:24 Client\Client\bin\Debug\ResFile\12-min.png
文件 16130 2018-03-24 22:29 Client\Client\bin\Debug\ResFile\12.png
文件 1090 2018-03-25 11:24 Client\Client\bin\Debug\ResFile\13-min.png
文件 16092 2018-03-24 22:29 Client\Client\bin\Debug\ResFile\13.png
文件 1156 2018-03-25 11:24 Client\Client\bin\Debug\ResFile\14-min.png
文件 16102 2018-03-24 22:29 Client\Client\bin\Debug\ResFile\14.png
文件 1077 2018-03-25 11:24 Client\Client\bin\Debug\ResFile\15-min.png
文件 16044 2018-03-24 22:29 Client\Client\bin\Debug\ResFile\15.png
文件 1162 2018-03-25 11:24 Client\Client\bin\Debug\ResFile\16-min.png
文件 16220 2018-03-24 22:29 Client\Client\bin\Debug\ResFile\16.png
文件 1111 2018-03-25 11:24 Client\Client\bin\Debug\ResFile\17-min.png
文件 16089 2018-03-24 22:29 Client\Client\bin\Debug\ResFile\17.png
............此处省略114个文件信息
相关资源
- c#入门经典 第七版 中文版 非扫描版
- .netc#新手菜鸟mvc5的仓库管理系统 so
- C# NPOI生成word插入图片和表格
- C#程序设计基础C#程序设计及应用教程
- 深入.NET平台和C#编程
- .net 美萍超市管理系统源码C#
- WinForm GeckoFx33 Demo JS与C#互交 窗口浏览
- 《ASP.NET程序设计项目教程》周虎,王
- 计算机图形学 三维模型处理算法初步
- C# KTV 点歌系统,C#项目源码带数据库
- C#实验--A.1 视频动态绘制练习.
- c#实现动态规划法——求解矩阵连乘问
- c#winform中完美代替WebBrowser最新的控件
- C#高级编程第9版:C#5.0 & .NET 4.5.1 par
- Illustrated C# 2010 C# 4.0图解教程
- C# WINFORM框架源碼
- C# WinForm实践开发教程清晰版
- 3D打印机上位机源码Reprap Host 是C#写的
- C#设计模式+源码JamesW.Cooper.zip
- C#程序开发范例宝典(第3版).(配套
- C#写的年会抽奖软件包含源代码.zip
- 大型ERP C#源码
- asp.net完整项目带数据库
- 清大出版社 段德亮 《C#课程设计案例
- C#人事管理系统/人力资源管理系统
- C# 7 and .NET Core: Modern Cross-Platform Deve
- C# 5.0 in a Nutshell 5th Edition.pdf
-
C# 6.0 and the .NET 4.6 fr
amework(7th). - C# .NET webservices简单使用
- C# 6.0 in a Nutshell.pdf
评论
共有 条评论