windows网络套接字库

1)#include <winsock2.h>  //注意到W是大写的
  #pragma comment(lib, "ws2_32.lib")
2)	//初始化网络网络套接字,尽管没有过多的进行判断是否成功
	WORD wVersionRequested;
	WSADATA wsaData;
	wVersionRequested=MAKEWORD(2,0);
	WSAStartup(wVersionRequested,&wsaData);

3)	//需要加载Winsocket套接字库
	char szHostName[128];
	CString strIP;
	//获取信息保存在字符串StrInfo中
	CString strInfo="主机名: ";
	//获取主机名
	if(::gethostname(szHostName,128)==0)
	{
		//获取主机IP地址
		struct hostent* pHost;
		pHost=::gethostbyname(szHostName);
		strInfo+=szHostName;
		strInfo+="\nIP地址:";
		int j;
		int h_length=4;
		for(j=0;j<h_length;j++)
		{
			CString straddr; 
			strIP+=".";
			straddr.Format("%u",
				(unsigned int) ((unsigned char*)pHost->h_addr_list[0])[j]);
			strIP+=straddr;
		}
		strInfo+=strIP;
	}
	MessageBox(strInfo,"信息提示",MB_OK);

使用WSAStartup函数多次加载网络套接字库,会产生什么样的问题,尤其是并没有
使用WSACleanup()撤销库的使用
时间: 2024-10-16 17:16:22

windows网络套接字库的相关文章

windows网络编程的一些理论

参考自<VC++深入详解> 这是我在看书时记录下来的东西. 注:下面的Socket其实都应该是socket 第14章网络编程 Socket是连接应用程序与网络驱动程序的桥梁,Socket在应用程序中创建,通过绑定与驱动程序建立关系. 此后,应用程序给Socket的数据,由Socket交给驱动程序向网络上发送出去. 计算机从网络上收到与该Socket绑定的IP地址和端口号相关的数据后,由驱动程序交给Socket,应用程序便可从该Socket中提取接收到的数据. 14.1 计算机网络基本知识. 1

Windows 网络编程(2)--重叠I/0模型

5).重叠I/O模式(overlapped) 常用函素: 1.WSASocket : 创建套接字 2.TCP WSASend WSARecv 3.UDP: WSASendTo WSARecvFrom 4.AccepEx (Mswsock.lib库导出) WSAIoctl 5.数据类型 WSAOVERLAPPED (wsaoverlapped) 函数: WSAGetOverlappedResult 使用: 缓冲区对象 typedef struct _BUFFER_OBJ { OVERLAPPED

Windows网络编程--选择(select)模型

选择模型是I/O模型中最简单的一个.Server端通过创建两个套接字集合fdOld和fdNew,在循环中通过事件添加和移除未决IO套接字句柄.测试的时候先启动服务端再启动客户端. 以下为Server端源代码(在VS2010下测试通过): #include "stdafx.h"#include<WinSock2.h>#include<Windows.h> #include<iostream> #pragma comment(lib,"ws2_

Windows网络编程 2 【转】

Windows网络编程使用winsock.Winsock是一个基于Socket模型的API,在Windows系统中广泛使用.使用Winsock进行网络编程需要包含头文件Winsock2.h,需要使用库ws2_32.lib,包含方法:可以使用语句来告诉编译器连接该库#pragma comment(lib, “ws2_32.lib”);如果使用VS,可以通过“项目” --> “XX属性”--> “连接器”-->“输入”--> “附加依赖项”添加ws2_32.lib. (XX为当前工程名

windows 网络编程[转]

利用winsock编写网络应用程序服务端的步骤简述如下WSAStartup 初始化网络编程库 socket 创建套接字 bind 指定地址.端口,绑定套接字 listen 进入监听状态 accept 等待接收新连接 send/recv 收发数据 closesocket 关键套接字 WSAStartup 释放对动态库的使用 下面详细介绍各API 1. Winsock初始化 调用int WSAStartup ( WORD wVersionRequested, LPWSADATA lpWSAData

Windows网络命令

Windows 自带网络小工具介绍 网络工具多多,但精品甚少,我们不必舍近求远,所以先把 Windows 自己带的几个网络工具给大家做一下介绍.需要指出的是,这些工具都在 Windows 的目录中,别再问我到哪里去找了!不特殊说明的话,这里的 Windows 是指 Windows98! 1 . PING.EXE ping 只有在安装了 TCP/IP 协议以后才可以使用 . 该命令主要是用来检查网络是否能够连通.它的使用格式是在命令提示符下键入: ping IP 地址或主机名 执行结果显示响应时间

1.socket编程:socket编程,网络字节序,函数介绍,IP地址转换函数,sockaddr数据结构,网络套接字函数,socket相关函数,TCP server和client

 1  Socket编程 socket这个词可以表示很多概念: 在TCP/IP协议中,"IP地址+TCP或UDP端口号"唯一标识网络通讯中的一个进程,"IP 地址+端口号"就称为socket. 在TCP协议中,建立连接的两个进程各自有一个socket来标识,那么这两个socket组成的socket pair就唯一标识一个连接.socket本身有"插座"的意思,因此用来描述网络连 接的一对一关系. TCP/IP协议最早在BSD UNIX上实现,

Windows网络连接指示器,NCSI

从Windows Vista时代开始,当计算机连接到网络后,Windows系统就开始检测网络连接状态,是否可以上网等.具体的工作原理:1.当计算机网络发生更改时(重启,更改IP地址,连接到不同的网络等).2.计算机尝试连接:http://www.msftncsi.com/ncsi.txtncsi.txt是一个文本文档,文件编码格式为ANSI,内容只有一行 Microsoft NCSI,无回车符等,其他多余字符.3.计算机尝试解析域名:dns.msftncsi.com ,解析结果为固定值:131.

Windows网络服务---dns

享受生活  热爱挑战