主题:关于建立PPP连接的一些问题? 共有33254人关注过本帖 |
---|
Nigual |
1楼 |
关于建立PPP连接的一些问题? Post By:2005-11-5 9:20:00 [只看该作者]
函数MyPort()和ConnOpen()循环调用时!
第一次所返回的值是对的,但是第二次就不对了!!! 这是为什么啊??? 请尽快回复!!!! 多谢!!!!11 |
|
单帖管理 | 引用 | 回复 |
x10 |
2楼 |
Post By:2005-11-6 9:15:00 [只看该作者]
ConnOpen( )第二次返回是什么值?方便的话,请把调用过程写上,谢谢!
|
|
单帖管理 | 引用 | 回复 |
Nigual |
3楼 |
Post By:2005-11-7 8:56:00 [只看该作者]
if(tt.ti_min%SCY=0)//tt.ti_min为获取的当前时间,SCY为定时服  务器发送的间隔时间
        . . if(Conn<0)  // Conn为每次定时发送时所生成的连接号              { NetPackagePro( );    port = MyPort( );    Conn = ConnOpen(IPStr,"TCP/IP",port,9624,NONBLOCKOPEN);    NB_Delay(5000);    if(Conn>=0 && ConnIsEstablished( Conn )==0)     {        ConnClose( Conn );       Conn=-1;      }     .     .     .   ConnClose(Conn);//收到服务器的回应信息后关闭本次的连接号   Conn=-1;  } 第一次ConnOpen()返回的值为Conn=0,而不是大于0.但是后面的程序能运行,实现了向服务器的发送.第二次返回Conn=-1;自然显示连接没有建立! |
|
单帖管理 | 引用 | 回复 |
x10 |
4楼 |
Post By:2005-11-7 9:55:00 [只看该作者]
可以参考我们的TCPClnt.CPP的例子,执行打开连接的操作后ConnOpen()并不意味连接就已经建立,需要反复检查,实际上是执行网络操作,以完成TCP连接建立过程。
port = MyPort( ); Conn = ConnOpen(IPStr,"TCP/IP",port,9624,NONBLOCKOPEN); for( i1=0; i1<timeoutcnt; i1++) {    if(Conn>=0 && ConnIsEstablished( Conn )) break; } if( i1 >= timeoutcont ) goto err_proc( ); // now Conn is established NB_Delay(5000); ConnClose( Conn ); Conn = -1; |
|
单帖管理 | 引用 | 回复 |