--- lbbs/src/bbs_net.c 2005/03/22 08:59:31 1.8 +++ lbbs/src/bbs_net.c 2005/03/22 12:12:33 1.9 @@ -119,7 +119,7 @@ process_bar (int n, int len) char *ptr3; moveto (4, 0); - prints ("┌───────────────┐\n"); + prints ("┌───────────────┐\r\n"); sprintf (buf2, " %3d%% ", n * 100 / len); ptr = buf; ptr2 = buf2; @@ -134,8 +134,9 @@ process_bar (int n, int len) while (*ptr2 != '\0') *ptr++ = *ptr2++; *ptr++ = '\0'; - prints ("│\033[46m%s\033[m│\n", buf); - prints ("└───────────────┘\n"); + prints ("│\033[46m%s\033[m│\r\n", buf); + prints ("└───────────────┘\r\n"); + iflush (); } int @@ -153,16 +154,20 @@ bbsnet_connect (int n) time_t t_used; struct tm * tm_used; - prints ("\033[1;32m正在测试往 %s (%s) 的连接,请稍候... \033[m\n", - bbsnet_conf[n].host1, bbsnet_conf[n].ip); - prints ("\033[1;32m如果在 %d 秒内无法连上,穿梭程序将放弃连接。\033[m\n", - TIME_OUT); + clearscr (); + + moveto (0, 0); + prints ("\033[1;32m正在测试往 %s (%s) 的连接,请稍候... \033[m\r\n", + bbsnet_conf[n].host1, bbsnet_conf[n].ip); + prints ("\033[1;32m如果在 %d 秒内无法连上,穿梭程序将放弃连接。\033[m\r\n", + TIME_OUT); + iflush (); pHost = gethostbyname (bbsnet_conf[n].ip); if (pHost == NULL) { - prints ("\033[1;31m查找主机名失败!\033[m\n"); + prints ("\033[1;31m查找主机名失败!\033[m\r\n"); press_any_key (); return -1; } @@ -171,7 +176,7 @@ bbsnet_connect (int n) if (sock < 0) { - prints ("\033[1;31m无法创建socket!\033[m\n"); + prints ("\033[1;31m无法创建socket!\033[m\r\n"); press_any_key (); return -1; } @@ -196,7 +201,7 @@ bbsnet_connect (int n) strcpy (remote_addr, inet_ntoa (sin.sin_addr)); remote_port = ntohs (sin.sin_port); - prints ("\033[1;32m穿梭进度条提示您当前已使用的时间。\033[m\n"); + prints ("\033[1;32m穿梭进度条提示您当前已使用的时间。\033[m\r\n"); process_bar (0, MAX_PROCESS_BAR_LEN); for (i = 0; i < MAX_PROCESS_BAR_LEN; i++) { @@ -217,20 +222,20 @@ bbsnet_connect (int n) break; else { - prints ("\033[1;31m连接失败!\033[m\n"); + prints ("\033[1;31m连接失败!\033[m\r\n"); press_any_key (); return -1; } } if (i == MAX_PROCESS_BAR_LEN) { - prints ("\033[1;31m连接超时!\033[m\n"); + prints ("\033[1;31m连接超时!\033[m\r\n"); press_any_key (); return -1; } setsockopt (sock, IPPROTO_IP, IP_TOS, &tos, sizeof (int)); - prints ("\033[1;31m连接成功!\033[m\n"); + prints ("\033[1;31m连接成功!\033[m\r\n"); log_std ("BBSNET connect to %s:%d\n", remote_addr, remote_port);