找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 中文模块 Demo
查看: 595|回复: 0

[C#] 谁能帮忙写一个C#调用hpsocket.net的例子啊求求了

[复制链接]
发表于 2023-4-19 14:05:32 | 显示全部楼层 |阅读模式
悬赏5金钱未解决
TCP服务端能正常连接,但是SSL服务端连接怎么都有问题,连接进入马上就断开了,错误代码13
1 h# Q! ]$ t8 _3 U0 L
* H' |1 V- g  D" {+ h& k/ ~
% Q9 m( T0 E! Ousing System;/ _8 s0 l/ F, b. M/ @
using System.Threading.Tasks;
7 u8 C' g, b9 D2 j# Ausing HPSocket;! h+ i5 L- O6 d2 J7 c, Y* n5 a5 t; v& f
using HPSocket.Ssl;1 c3 \* L) _1 ]( l+ d- M& p9 K" v
using HPSocket.Tcp;$ U, m. E$ @" s$ E) a: O3 G
9 p+ ^* s. d" @( A% E
namespace SslServerDemo
9 B7 ]4 ^# V8 i+ B5 O6 O$ [8 G& H{. [8 h' a4 l, O% ^, u. D8 r+ a9 D
    class Program
2 v& j: J/ I: t1 m& N* p5 x    {% N/ g6 p  B$ T7 T% e
        static void Main(string[] args)2 ~1 j- j/ b1 H) Z$ Q2 G
        {" ]' ]! O6 S8 I" J: u$ O- V
            // 创建SSL服务端  h8 M7 m1 B5 e& u# X: V% N9 @
            //var server = new SslServer();3 L. _! ^) B  [' x6 i% u  R
            ISslServer server = new SslServer(); ( T' J* k* ^+ I0 g$ _/ d1 b! j& y4 w
9 X* y+ u' s. N1 r& V
            // 设置证书和私钥" g* U5 H  k* I; k; a
           
# o$ v* z) w) ?5 n4 t            server.Initialize(false);
3 D& O9 `( ?5 E' K/ a) a            server.VerifyMode = SslVerifyMode.None;
7 l9 [- V. `7 }6 {9 J/ T/ {7 n            server.PemCertFile = "D:/cxiapu/zs/server.crt";4 Z0 c* f0 a3 C! n
            server.PemKeyFile = "D:/cxiapu/zs/server.key";' _) z( W- S7 g* t- `& a5 f9 A
            server.KeyPassword = "mwyfeeq568";- p& }* F& _' b/ p/ n" i: A, S$ }! E- m( \
            server.CaPemCertFileOrPath = "D:/cxiapu/zs/ca.crt";7 ~  r( p& y# c5 V3 r

. ^3 J( y4 ]6 l5 t7 K; |            //server.AddContext(SslVerifyMode.None, "D:/cxiapu/zs/server.crt", "D:/cxiapu/zs/server.key", "mwyfeeq568", "D:/cxiapu/zs/ca.crt");
+ Y  J; Y( n4 l) I% H! b            server.Address = "0.0.0.0";/ q8 ~8 ~' N# L% ?2 [
            server.Port = 5001;5 b' n1 g1 ]6 F# n8 T
9 F) x4 d' L1 Q2 D
            // 启动服务端/ e9 U0 p3 g9 u- B; w" e
            Console.WriteLine(server.Start());
2 g  h$ \4 [: G4 `( q* p            Console.WriteLine("SSL服务启动 127.0.0.1:5001");( v7 g. f" L! b1 i2 x4 P
8 C7 V+ T" k9 N  t

7 z$ h( ?  x9 {2 o! Y- }& ?8 J  Z" @1 r& N. {, r) _
9 T; q( M( r2 V* l7 B. Z

8 A3 ~4 W$ i7 ~            // 设置事件回调
1 X0 ^- R& b4 O5 Z7 P$ ]( ~
& H+ Y4 ?1 E/ T) G5 U, N            server.OnSend += (sender, connId, data) =>; Y# n9 f7 B" h0 N) O3 {  ^& K. {
            {) k' z4 C/ c8 V0 t
                Console.WriteLine("发送事件");! \) u; A( w# Y7 E8 i

" p, i2 E; r# d  T
( Y: b0 O# @" v8 G, E0 t9 o            return (0);    3 W- Z" K$ {4 z  O4 k
            };
' P6 m: I- S* a7 p/ y  m9 h# H* o+ r. }% H: X  |# y. F/ X' {; p
            server.OnHandShake += (sender, connId) =>( X5 w" ?- U- F& O  K
            {
# I+ I0 Z9 q+ @6 S+ l& e
' }3 Y) \' \, Y' D' k/ v1 b; Z                Console.WriteLine($"握手事件");
' g9 u: Y: d8 L: i/ D, Q/ m                return (0);
- _& q# C" b! L6 C2 H6 V, h            };+ A: {" ^: v' Y
1 P: {  ~1 `! Y  {
  p8 p- y% K& E3 X4 R  L$ o
            server.OnAccept += (sender, connId, client) =>- v) p. J# j9 K. z5 b3 D# R  E2 `
            {: O% F: z! `6 u- g9 r
                Console.WriteLine($"客户进入: {connId}");
7 t9 k- O0 K) L4 ~, h2 k5 {5 y# Z' V0 D+ G
                // 发送欢迎消息给客户端  p3 ]5 s; `9 h1 V) V7 F- m7 _
, S* G# P: Y% M" ~1 i5 q

( g, M  u( t2 h2 k                //server.Send(connId, "Welcome to SSL server!");
/ j+ f3 S1 t# y) N4 E; j                return (0);0 n6 w' f8 G2 A$ g6 e, i+ o$ F
            };/ Z! D$ B$ [! V. @
            server.OnReceive += (sender, connId, data) =>* p4 V( N: a9 D( ]) J
            {
% N6 F2 q5 F% d8 E1 A                Console.WriteLine($"数据到达: {connId}, data: {data}");
1 i) Y% f% m% o6 }8 q                return (0);
1 _" l1 l/ {. e2 I3 C            };
, q4 I& I( L& N/ I% g            server.OnClose += (sender, connId, operation, errorCode) =>+ o, S2 B0 I9 D
            {6 R. X0 E2 g0 r$ ?! m% ~
                Console.WriteLine($"客户断开:{connId}错误代码:{errorCode}");
6 I8 v; h$ @9 @/ }                 
$ ~; L$ [  u8 z* ]                return (0);
+ a6 }& Y" a/ @* S4 l( Z8 I% ~            };$ C* B( s+ V+ k! c5 i
5 w8 l% W, x6 H& c  D6 Z
* H) o1 i3 S/ o0 X
1 W6 |% b6 _  |1 b

9 ~7 N* |/ e$ ~, V- p " s& A/ r5 F9 Y' {9 @3 V
0 r' T' p( C$ w* S/ [" i
            // 等待客户端连接并收发数据5 C3 j0 v$ u: I, Z# v, U% f
            Console.ReadKey();
$ R! t7 H9 ~+ \, L( U/ W$ N
! O7 t8 N& d% ]: k( A( k8 c) D            // 停止服务端
' @$ d7 [+ ?7 y# q: e            server.Stop();
1 z/ I( e- t0 ]; p1 I        }
6 e" k# P, t' y6 U7 S- q: X    }
# ^( R9 C- Q- A/ H) g}4 e+ T! R/ S1 Z
. H, }0 q  H9 L: c- J3 u0 ]
) F2 a9 V- V4 u6 A& e$ V2 `4 h  [

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

QQ|Archiver|手机版|小黑屋| HPsocket-国产高性能通讯框架

( 豫ICP备19038015号-1 ) GMT+8, 2025-11-27 22:18 Powered by Discuz! X3.5 *// |网站地图

快速回复 返回顶部 返回列表