找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]
发表于 2023-4-19 14:05:32 | 显示全部楼层 |阅读模式
悬赏5金钱未解决
TCP服务端能正常连接,但是SSL服务端连接怎么都有问题,连接进入马上就断开了,错误代码13
' T8 g5 Q6 y6 C) f3 G* l6 B. B
% j8 D1 y6 i6 }7 o" m
% K( e3 l2 i# p3 q1 F* rusing System;$ ?8 L2 b, o' n! y9 g
using System.Threading.Tasks;& X/ O( `* f% U, `; X: G$ z
using HPSocket;
/ x5 ?* P3 x" |using HPSocket.Ssl;6 g- ~) A. h* w% M
using HPSocket.Tcp;0 d/ U( A5 f  O1 K

4 ]0 k8 c/ d$ ^$ L* E  g$ jnamespace SslServerDemo
+ @% p# e4 x" W) O9 U! u{
/ Y6 _" c5 s, \2 g8 g( f    class Program6 H- A3 ~( R) ?+ [: y) X4 L4 j. D
    {! }! `0 w, i3 E6 l
        static void Main(string[] args)$ \4 h$ Z/ I4 y
        {
% n8 F7 q" w8 _# W- U) E: o$ ~            // 创建SSL服务端$ J: s* e+ p2 l4 q5 U
            //var server = new SslServer();
& R/ ^9 \/ E8 F. k# M# w            ISslServer server = new SslServer(); $ X, a) W' O, z
& r+ H0 ^5 r5 ~% M, G
            // 设置证书和私钥) D9 u4 v0 Z6 a: k1 a. _
           ( V  U+ Z. d7 _6 G+ C, E3 ^
            server.Initialize(false);
1 I3 a3 ]- u- V: ^            server.VerifyMode = SslVerifyMode.None;0 Q4 X' \2 P& ?, M5 B
            server.PemCertFile = "D:/cxiapu/zs/server.crt";
. O8 a" G9 V4 Q6 |! U7 S            server.PemKeyFile = "D:/cxiapu/zs/server.key";* r: Y  z9 j* x
            server.KeyPassword = "mwyfeeq568";
. l8 P( A$ y6 Q! y7 g8 d& t            server.CaPemCertFileOrPath = "D:/cxiapu/zs/ca.crt";. W% P0 G& e5 [7 Z: N

. x4 D% L2 ^3 D% h6 `) V+ y8 ^/ e            //server.AddContext(SslVerifyMode.None, "D:/cxiapu/zs/server.crt", "D:/cxiapu/zs/server.key", "mwyfeeq568", "D:/cxiapu/zs/ca.crt");
5 n- X6 B* o9 z$ j            server.Address = "0.0.0.0";2 I: }8 U1 F* U$ ]
            server.Port = 5001;
8 N# [4 F! [) B& _/ O% j  F& v: u% M; @
            // 启动服务端
% k' @5 n2 V9 E0 T" A8 H" M            Console.WriteLine(server.Start());
' _0 K. d( u0 z6 s3 z            Console.WriteLine("SSL服务启动 127.0.0.1:5001");6 i$ v& t4 }0 z: N8 x/ }, l9 {

- m0 _- v7 I( |: x9 `* i+ {4 J! X4 T3 A$ e9 @' f& o5 s3 W% c6 [

- R; G8 v5 d' X: k# _6 u: Z6 r5 {+ Y5 c; u# [" g- k5 h

' b& ?/ b9 F9 a: z9 ]1 W9 }& v. I$ l' S3 {            // 设置事件回调1 k7 C1 _" Z- N# Y9 j" D% V
8 Z- n) ~4 ]. _: H" _
            server.OnSend += (sender, connId, data) =>
7 b- l8 X/ ^0 V3 X            {
3 ]. k; p7 G* ?) }% E8 v% _                Console.WriteLine("发送事件");
, G% Y/ x% }& D/ @- ^% |; a9 a+ y* O: @& e1 y# C  k
) x! r8 _# _" {% L* E% W9 K
            return (0);    % h+ Q( r5 x- c5 C9 s
            };
4 x4 y4 {0 `5 T% e( z9 s& E: [3 f# v
            server.OnHandShake += (sender, connId) =>
- O( |3 c, I) \6 n            {+ p. u( G9 R5 `  A& j( K( T" a
% [4 `% N: e' M( X- m+ a
                Console.WriteLine($"握手事件");3 A' m% D# x6 \# q6 Y9 d
                return (0);5 I9 j8 M0 J6 h( H2 E0 a* Q+ A
            };2 ~7 Y4 `. `7 \; h( ^: [5 c

! z! q; `2 v8 L2 I- y; N4 e( y8 W' n! \7 F+ l; ^( R
            server.OnAccept += (sender, connId, client) =>
, n! d& L' W. C9 j            {
0 O6 m* K  p$ d) A3 y1 |                Console.WriteLine($"客户进入: {connId}");
$ ^! S# A, w( J7 o; `: x# a2 {( x% I. R
                // 发送欢迎消息给客户端6 T- H( O3 |/ o& e% t
" l3 Y3 k/ G0 d. U
) O1 v/ l. O+ W6 Y
                //server.Send(connId, "Welcome to SSL server!");, ]3 n2 R1 b" }9 X' c6 _8 O
                return (0);3 f6 I( f8 b3 M; W
            };
% w- i: J3 J* s! s/ ?4 z            server.OnReceive += (sender, connId, data) =>3 ]$ F2 H7 s. P. ]- N% ^4 X$ A
            {
9 h7 t! Z3 ~$ h( p4 T6 W                Console.WriteLine($"数据到达: {connId}, data: {data}");+ S+ W# R  n0 A0 Z
                return (0);
; ?' m% F) @& u! @            };
/ A' A' ]* O  A7 x, d            server.OnClose += (sender, connId, operation, errorCode) =>
" ^0 e0 Z( U' a. B) H+ Q            {
! F, K' ~4 S  F0 Q                Console.WriteLine($"客户断开:{connId}错误代码:{errorCode}");
" K' Q0 Q' \  V! b8 b                 
2 H4 {( v5 Z  {8 ~1 T0 @0 n                return (0);; C3 ~- k0 g; w. z7 g$ A( _+ F
            };5 V' g5 o4 W) k; b, e

8 L1 R+ |! j8 N6 U7 I
( x, @8 t# }+ r: X. e2 U1 h+ {3 U0 ?; J

6 M5 y: b3 K+ e , V2 t  M! o* {/ A
: K" \& e  e/ K
            // 等待客户端连接并收发数据- D! |* ?7 s8 }+ b, b/ m
            Console.ReadKey();; w/ S$ O- u+ C: i3 Z( P8 J

2 `$ G* m+ K. `9 P% j6 N            // 停止服务端( c* C/ W' F0 P) h* |
            server.Stop();
6 M: A8 B: t) F8 x, A. B        }
; L* r. |8 Y8 Y, h$ A' I6 \    }
0 l, c0 L3 V+ M9 }}
0 R) E: T$ W$ H5 [2 ]- o/ S& L9 |5 `7 I4 l6 D

& a3 a3 n8 S% a# m/ q$ e

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

本版积分规则

关闭

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

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

( 豫ICP备19038015号-1 ) GMT+8, 2024-11-21 16:45 Powered by Discuz! X3.5 *// |网站地图

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