找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 15|回复: 0

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

[复制链接]
发表于 2023-4-19 14:05:32 | 显示全部楼层 |阅读模式
悬赏5金钱未解决
TCP服务端能正常连接,但是SSL服务端连接怎么都有问题,连接进入马上就断开了,错误代码13
9 `0 G, i/ i* u0 O
1 D) Z, o0 v6 y: D! E# o% j# }6 O# f! s! p$ ]6 n
using System;+ ~/ o7 T; Z6 ^0 P' ^1 k
using System.Threading.Tasks;
% `9 M5 z% ^) q& i: dusing HPSocket;
! g, Q: x* ^4 y, T$ x0 Y. X6 rusing HPSocket.Ssl;9 M- o5 j% N) d& _
using HPSocket.Tcp;/ `( ^/ F# S0 f2 I

+ z+ r& P! j5 C" l" `namespace SslServerDemo
9 G7 X* C; ?5 h7 x0 {{
, n# @* N7 U. \! ~, Y    class Program
- k" N; o# P0 B9 o' `$ L& H    {8 Z' r! r, p% ?; w, e4 c
        static void Main(string[] args)
5 H* i, d' O/ i4 U3 ?, ]        {- s% Y8 ]& e/ h' {+ P0 Z% M, j' {, O
            // 创建SSL服务端1 L; a% w6 L- [/ W- n
            //var server = new SslServer();/ M& V( n; m- D, b
            ISslServer server = new SslServer();
% V  ^- e; M1 q' a, {/ K6 }& h% X" P4 ]2 S( {2 e9 o2 P( F7 H
            // 设置证书和私钥0 W1 E/ x+ y9 x& n- o- m# Q2 [/ a% E
           
0 E6 T! R. u9 t2 U! F" X            server.Initialize(false);
' B' r3 b  Y; V; Z- \; V  V            server.VerifyMode = SslVerifyMode.None;
, G1 {3 O0 L, ]( k            server.PemCertFile = "D:/cxiapu/zs/server.crt";  s' s9 p$ Q, @. y
            server.PemKeyFile = "D:/cxiapu/zs/server.key";
( H. Q9 O/ J& S) M            server.KeyPassword = "mwyfeeq568";: d0 f, A; y( Y1 r! d- g% X/ F
            server.CaPemCertFileOrPath = "D:/cxiapu/zs/ca.crt";
; B4 Y; ~, a' v1 K7 s* U
& X( T! H( W4 }$ W- r: I. G  ]            //server.AddContext(SslVerifyMode.None, "D:/cxiapu/zs/server.crt", "D:/cxiapu/zs/server.key", "mwyfeeq568", "D:/cxiapu/zs/ca.crt");
. C2 l  A9 Z$ O( b7 `. D# B5 x( A            server.Address = "0.0.0.0";. V" {% l9 M% Y, |% r
            server.Port = 5001;: Y3 S6 c5 y7 v( n* P! U9 h/ k1 Q+ ^

( z1 k0 |  S* X- d" m            // 启动服务端
7 p* ]3 S5 l/ f& h+ |& S            Console.WriteLine(server.Start());- K1 }# O6 u2 j3 o' v
            Console.WriteLine("SSL服务启动 127.0.0.1:5001");* A; _% U& o( p! [* S
7 k3 H( K# a' y# F
# ^8 i+ v5 t+ F2 G# i
7 }( W& q# m  _) P% b& t
/ d2 `$ G4 R; q! A

) c- I. E' J$ V( v( K            // 设置事件回调
( g5 K5 ?$ ]; D+ u+ \7 r+ v3 `6 p1 U, S! [' t2 @
            server.OnSend += (sender, connId, data) =>1 a: H% |+ G* g( \
            {
/ l3 W* Y8 x* M2 a! C, C' o7 }# J                Console.WriteLine("发送事件");
( z, W! L& U5 f& [  N( O8 B: V2 K/ H8 j8 i* F+ ?

3 S- A7 o% r( u            return (0);   
2 v3 C8 k) H" N6 i' ?- [! m            };/ h9 v* v7 k) H& ~

% a9 b# Z: {9 g9 b, w% u; f. Y            server.OnHandShake += (sender, connId) =>2 t& D/ m1 z$ g' U
            {
$ i! u3 ?9 H4 ]) Z4 [* a' _5 @5 M% F& m- F6 T( Q' C& q
                Console.WriteLine($"握手事件");( l* ?$ v) {# [% h1 \6 @
                return (0);( w% d* }5 P1 b- r4 u
            };7 A  r9 O! F4 T& p; k9 d* I

; B3 l3 b1 h( P( b/ ^5 b! ]( G+ w/ m) n" Q7 t7 }
            server.OnAccept += (sender, connId, client) =>
5 R( x6 \# A  z/ J$ x$ t0 W% O2 A6 c            {+ o+ B  p. {/ n4 W4 W+ C8 K
                Console.WriteLine($"客户进入: {connId}");
8 ~8 c/ e  o. n& c% z0 \2 }9 ?; n' l" w9 E& ]& w3 c
                // 发送欢迎消息给客户端
+ H; G& U5 z9 @7 F- ^
3 v) @$ I& n( c6 c* i1 f% X1 H( c7 q' K
                //server.Send(connId, "Welcome to SSL server!");1 I- d  k: `8 Q
                return (0);
  g1 [7 ~/ e* m" v8 L( S! g            };
2 k% I; ^, X1 ~) r7 z0 v% a8 s            server.OnReceive += (sender, connId, data) =>( m& J8 g: T; y7 ^0 g
            {# Z9 `5 L2 \& v
                Console.WriteLine($"数据到达: {connId}, data: {data}");
7 l8 A/ C2 y' Z/ ]7 J                return (0);: X* u$ ]0 ~4 P5 D3 U% _0 E$ D
            };. f. v! J9 W# V) W$ G
            server.OnClose += (sender, connId, operation, errorCode) =>
* s$ g* n; s& _% n- W& p, F            {
; d4 I7 F8 d- y  F: U; Z                Console.WriteLine($"客户断开:{connId}错误代码:{errorCode}");
( y$ |' t4 E" N8 d( ~- @                 
4 t2 {  b7 v3 m, G5 _* c                return (0);2 {1 \; q% V% Y7 Z0 h. i  z
            };  ^6 h7 d: s5 j; Y- q4 U
: J1 O4 q+ x$ @  j& _2 V

# x. {' q3 m( Z- j9 A7 p# e; |( y1 g8 N9 G# Y3 ?; r

/ w6 j9 Q: \% A2 d7 w
  @; y( ]" U6 `0 ?& r
; h2 D4 c7 V  z' @3 S            // 等待客户端连接并收发数据' Z; ?. j! G3 A/ z* t( O
            Console.ReadKey();' @; |! O, z; Q0 m7 [% V( |

/ Q# T% d0 K$ Q7 L3 A% I            // 停止服务端) G6 N/ D5 o" J2 L6 T
            server.Stop();3 Q9 X: M0 u" s* D2 u. y2 z
        }# ?9 N3 R$ C. K6 c5 ]/ w
    }; m4 j0 F0 o: m+ g2 v% k" w
}
, ]% l$ E  V, F( m2 T
1 g8 H0 E+ z1 k, S! t1 U, N4 [* K3 V# p! n

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

本版积分规则

关闭

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

QQ|Archiver|手机版|小黑屋|HPsocket-国产高性能通讯框架 ( 豫ICP备19038015号-1 )|网站地图 *//

GMT+8, 2023-6-3 17:09 , Processed in 0.142206 second(s), 18 queries .

Powered by Discuz! X3.5

Copyright © 2001-2020, Tencent Cloud.

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