SOCKETS?

xiaorou00 2002-05-09 10:05:30
程序界面 一个MEMO 两个按钮 (一个LISTING 一个SEND)
程序功能 当按下LISTING时 程序处于LISTING状态
当按下LISTING时 程序可以发送BUF(MEMO)的数据到处于LISTING状态的电脑上!

帮我 看看这段代码又什么问题?

//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
#include <winsock.h>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
WSADATA ws;
SOCKET sock;
struct sockaddr_in server_addr;


//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Onlisten(void)
{
int bindflag,acceptflag,listenflag;
int iResult;
long lResult;
char strSubAddr[100], strBuffer[100];

lResult = WSAStartup(0x0101,&ws);
sock = socket(AF_INET,SOCK_STREAM,0);
if(sock<0)
ShowMessage("error!");
server_addr.sin_family=AF_INET;
server_addr.sin_addr.s_addr=INADDR_ANY;//本机地址
server_addr.sin_port=htons(10000);

bindflag=bind(sock,(struct sockaddr *)&server_addr,sizeof(struct sockaddr));

listenflag=listen(sock,2);//最大连接数据为2

if(listenflag<0)
{
ShowMessage("接受连接失败");
exit(1);
}
else
ShowMessage("Listing");
acceptflag=accept(sock,NULL,NULL);//null
if(acceptflag<0)
ShowMessage("接受连接失败");
//MessageBox("接受连接失败","出错",MB_ICONERROR);
}
void __fastcall TForm1::ButtonSendClick(TObject *Sender)
{
send(connectflag,"************欢迎来到************",100,0);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ButtonListenClick(TObject *Sender)
{
Onlisten();
}
//
...全文
51 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
libamboo 2002-05-10
  • 打赏
  • 举报
回复
学习
xiaorou00 2002-05-09
  • 打赏
  • 举报
回复
详细点!!
大大怪老张 2002-05-09
  • 打赏
  • 举报
回复
if(sock<0)
{
ShowMessage("error!");
return ;
}


if(sock<0)
ShowMessage("error!");
else
{
...//绑定,监听的代码
}

xiaorou00 2002-05-09
  • 打赏
  • 举报
回复
要学习嘛 要是不用API 就没什么含义了!
RedGuest 2002-05-09
  • 打赏
  • 举报
回复
为什么一定要用api呢?:)呵呵
================================================================

CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!

★ 浏览帖子速度极快![建议系统使用ie5.5以上]。 ★ 多种帖子实现界面。
★ 保存帖子到本地[html格式]★ 监视您关注帖子的回复更新。
★ 可以直接发贴、回复帖子★ 采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录!
★ 支持在线检测程序升级情况,可及时获得程序更新的信息。

★★ 签名 ●
可以在您的每个帖子的后面自动加上一个自己设计的签名哟。

Http://www.ChinaOK.net/csdn/csdn.zip
Http://www.ChinaOK.net/csdn/csdn.rar
Http://www.ChinaOK.net/csdn/csdn.exe [自解压]

RedGuest 2002-05-09
  • 打赏
  • 举报
回复
为什么一定要用api呢?:)呵呵

关注.............................................
RedGuest 2002-05-09
  • 打赏
  • 举报
回复
为什么一定要用api呢?:)呵呵

关注......................................................
================================================================

CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!

★ 浏览帖子速度极快![建议系统使用ie5.5以上]。 ★ 多种帖子实现界面。
★ 保存帖子到本地[html格式]★ 监视您关注帖子的回复更新。
★ 可以直接发贴、回复帖子★ 采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录!
★ 支持在线检测程序升级情况,可及时获得程序更新的信息。

★★ 签名 ●
可以在您的每个帖子的后面自动加上一个自己设计的签名哟。

Http://www.ChinaOK.net/csdn/csdn.zip
Http://www.ChinaOK.net/csdn/csdn.rar
Http://www.ChinaOK.net/csdn/csdn.exe [自解压]

xiaorou00 2002-05-09
  • 打赏
  • 举报
回复
详细点!!
xiaorou00 2002-05-09
  • 打赏
  • 举报
回复
详细点!!
目录 第一章 简介 1.1 什么是WINDOWS SOCKETS规范? 1.2 BEKELEY套接口 1.3 MICROSOFT WINDOWS和针对WINDOWS的扩展 1.4 这份规范的地位 1.5 曾经作过的修改 第二章 使用WINDOWS SOCKETS 1.1编程 2.1 WINDOWS SOCKETS协议栈安装检查 2.2 套接口 2.3 字节顺序 2.4 套接口属性选项 2.5 数据库文件 2.6 与BERKELEY套接口的不同 2.7 在多线程WINDOWS版本中的WINDOWS SOCKETS 第三章 WINDOWS SOCKETS 1.1应用实例 3.1 套接口网络编程原理 3.2 WINDOWS SOCKETS编程原理 3.3 WINDOWS SOCKETS与UNIX套接口编程实例 3.4 另一个精巧的应用程序实例-WSHOUT 第四章 WINDOWS SOCKET 1.1库函数概览 4.1 套接口函数 4.2 数据库函数 4.3 针对MICROSOFT WINDOWS的扩展函数 第五章 套接口库函数参考 5.1 WINDOWS SOCKET 1.1库函数参考 5.2 数据库函数 5.3 WINDOWS扩展函数 第六章 WINDOWS SOCKET 2的扩展特性 6.1 同时使用多个传输协议 6.2 与WINDOWS SOCKET 1.1应用程序的向后兼容性 6.3 在WINDOWS SOCKETS中注册传输协议 6.4 协议无关的名字解析 6.5 重叠I/O和事件对象 6.6 使用事件对象异步通知 6.7 服务的质量(QOS) 6.8 套接口组 6.9 共享套接口 6.10 连接建立和拆除的高级函数 6.11 扩展的字节顺序转换例程 6.12 分散/聚集方式I/O 6.13 协议无关的多点通讯 6.14 新增套接口选项一览 6.15 新增套接口IOCTL操作代码 6.16 新增函数一览 第七章 WINDOWS SOCKETS 2扩展库函数简要参考
Windows Sockets规范以U.C. Berkeley大学BSD UNIX中流行的Socket接口为范例定义了一套Micosoft Windows下网络编程接口。它不仅包含了人们所熟悉的Berkeley Socket风格的库函数;也包含了一组针对Windows的扩展库函数,以使程序员能充分地利用Windows消息驱动机制进行编程。 Windows Sockets规范本意在于提供给应用程序开发者一套简单的API,并让各家网络软件供应商共同遵守。此外,在一个特定版本Windows的基础上,Windows Sockets也定义了一个二进制接口(ABI),以此来保证应用Windows Sockets API的应用程序能够在任何网络软件供应商的符合Windows Sockets协议的实现上工作。因此这份规范定义了应用程序开发者能够使用,并且网络软件供应商能够实现的一套库函数调用和相关语义。 遵守这套Windows Sockets规范的网络软件,我们称之为Windows Sockets兼容的,而Windows Sockets兼容实现的提供者,我们称之为Windows Sockets提供者。一个网络软件供应商必须百分之百地实现Windows Sockets规范才能做到现Windows Sockets兼容。 任何能够与Windows Sockets兼容实现协同工作的应用程序就被认为是具有Windows Sockets接口。我们称这种应用程序为Windows Sockets应用程序。 Windows Sockets规范定义并记录了如何使用API与Internet协议族(IPS,通常我们指的是TCP/IP)连接,尤其要指出的是所有的Windows Sockets实现都支持流套接口和数据报套接口. 应用程序调用Windows Sockets的API实现相互之间的通讯。

13,871

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧