windows网络编程基础教程,windows编程入门

1,windows编程入门呵呵我也再学WINDOWS 编程我介绍给你一本书啊自己看下很出名的直接下载http://www.czvc.com/tech/WindowsProgramming_tw.rar呵呵,有意思,你可以去看windows程序设计,,侯捷的还有一本windows api for 2000/xp实例精解也不错的...找不到可以来找我...有空传你...
2,如何使用windows网络编程select1. select系统调用select系统调用是用来让我们的程序监视多个文件描述符的状态变化的 。程序会停在select这里等待,直到被监视的文件描述符有某一个或多个发生了状态改变 。select()的机制中提供一fd_set的数据结构 , 实际上是一long类型的数组,每一个数组元素都能与一打开的文件句柄建立联系,建立联系的工作由程序员完成,当调用select()时 , 由内核根据IO状态修改fd_set的内容 , 由此来通知执行了select()的进程哪些Socket或文件可读可写 。select函数原型:#include <sys/select.h> #include <sys/time.h>#include <sys/types.h>#include <unistd.h>int select(int nfds, fd_set * readfds, fd_set * writefds, fd_set * exceptfds, const struct timeval * timeout);ndfs:select监视的文件句柄数,视进程中打开的文件数而定,一般设为要监视各文件中的最大文件描述符值加1 。readfds:这个文件描述符集合监视文件集中的任何文件是否有数据可读,当select函数返回的时候,readfds将清除其中不可读的文件描述符,只留下可读的文件描述符 。writefds:这个文件描述符集合监视文件集中的任何文件是否有数据可写,当select函数返回的时候,writefds将清除其中不可写的文件描述符,只留下可写的文件描述符 。exceptfds:这个文件集将监视文件集中的任何文件是否发生错误,其实 , 它可用于其他的用途 , 例如,监视带外数据OOB,带外数据使用MSG_OOB标志发送到套接字上 。当select函数返回的时候,exceptfds将清除其中的其他文件描述符,只留下标记有OOB数据的文件描述符 。timeout:本次select()的超时结束时间 。这个参数至关重要,它可以使select处于三种状态:(1)若将NULL以形参传入 , 即不传入时间结构 , 就是将select置于阻塞状态,一定等到监视文件描述符集合中某个文件描述符发生变化为止;(2)若将时间值设为0秒0毫秒,就变成一个纯粹的非阻塞函数 , 不管文件描述符是否有变化,都立刻返回继续执行,文件无变化返回0,有变化返回一个正值;(3)timeout的值大于0,这就是等待的超时时间 , 即select在timeout时间内阻塞 , 超时时间之内有事件到来就返回了 , 否则在超时后不管怎样一定返回 , 返回值同上述 。函数的返回值:正值:表示监视的文件集中有文件描述符符合要求零值:表示select监视超时负值:表示发生了错误,错误值由errno指定 。宏操作:FD_ZERO(fd_set *set): 用来清除描述词组set的全部位FD_SET(int fd,fd_set*set): 用来设置描述词组set中相关fd的位FD_ISSET(int fd,fd_set *set): 用来测试描述词组set中相关fd 的位是否为真FD_CLR(inr fd,fd_set* set): 用来清除描述词组set中相关fd 的位注意事项:(1)对于可写性的检查,最好放在需要写数据的时候进行检查 。如果和可读性放在同一个地方进行检查,那么select很可能每次都会因为可写性检查成功而返回 。(2)select()调用会清空传递给它的集合参数中的内容,也就是会清空readfds、writefd、exceptfds这三个指针参数所指定的描述符集合 。因此,在每次调用select()之前,必须重新初始化并把需要监视的描述符填写到相应的描述符集合中 。select()调用也会清空timeout指针所指向的struct timeval结构,所以在每次调用select()之前也要重新填充timeout指针所指向的struct timeval结构 。【windows网络编程基础教程,windows编程入门】
3 , 网络编程 从哪开始入门先把《TCP/IP 详解》看看吧 , 网络协议是必须要懂的 , 当然还要会一种语言,比如C语言初学编程一般从c或c++开始学起,可以自学,自己买本书,根据书里讲的环境下个编译器,然后就看书,打代码,等c或c++学完了 , 再学数据结构、数据库原理与应用,再学java、.net之类的编程语言 。这个问题我回答过了http://wenwen.sogou.com/z/q898469920.htm建议你去这看看 。简单来说就是从简单的VB开始 。因为较为通俗易懂,比C语言较为容易,VB学完后你就可以考虑VB.net,或者C++这些优秀的编程软件 。但是C语言语法结构VB会有些出入 。
4,请给一些Windows中网络编程的资料ASP.NET开发实践系列-ASP.NET实现在服务器端控制网页 http://www.so138.com/so/so138.aspx?id=2477 台湾吕聪贤教授网页三剑客教程 http://www.so138.com/so/so138.aspx?id=2103 动态网页制作视频教程ASP.PHP.JSP http://www.so138.com/so/so138.aspx?id=1793 网页制作技术(北京交通大学) http://www.so138.com/so/so138.aspx?id=1595 吉林大学-internet网页设计 http://www.so138.com/so/so138.aspx?id=1531 计算机网页设计与制作视频教程 http://www.so138.com/so/so138.aspx?id=1193 电子科技大学 网页设计(制作) http://www.so138.com/so/so138.aspx?id=940 Perl动态网页制作 http://www.so138.com/so/so138.aspx?id=763 JSP动态网页制作例程 http://www.so138.com/so/so138.aspx?id=760 ASP动态网页制作计 http://www.so138.com/so/so138.aspx?id=759 PHP动态网页制作 http://www.so138.com/so/so138.aspx?id=758 网页设计在线教程 http://www.so138.com/so/so138.aspx?id=640 Dreamweaver网站设计系列多媒体教程 http://www.so138.com/so/so138.aspx?id=2075 边用边学Dreamweaver http://www.so138.com/so/so138.aspx?id=1234 新概念Dreamweaver_mx视频教程 http://www.so138.com/so/so138.aspx?id=781 Dreamweaver MX 2004 视频教程 http://www.so138.com/so/so138.aspx?id=292 ] 计算机精彩视频教程 电脑维修视频教程 http://www.so138.com/so/so138.aspx?id=2136%20 VC++6.0 经典视频 http://www.so138.com/so/so138.aspx?id=2104%20 张孝祥 java 视频教程 http://www.so138.com/so/so138.aspx?id=2007%20 电脑报 2004 年装机视频教程 http://www.so138.com/so/so138.aspx?id=2137%20 C 语言程序设计 32 讲 http://www.so138.com/so/so138.aspx?id=347%20 FLASH MX 2004 实例视频教程( FIF ) http://www.so138.com/so/so138.aspx?id=318%20 Dreamweaver 网站设计系列多媒体教程 http://www.so138.com/so/so138.aspx?id=2075%20 架设局域网与应用服务器 http://www.so138.com/so/so138.aspx?id=2133%20 北京大学计算机网络教程 http://www.so138.com/so/so138.aspx?id=2134%20 Excel 学习指南 http://www.so138.com/so/so138.aspx?id=2135%20 清华大学手把手教你学习数据库 http://www.so138.com/so/so138.aspx?id=2279%20 台湾吕聪贤教授网页三剑客教程 http://www.so138.com/so/so138.aspx?id=2103%20 Excel 视频教程 http://www.so138.com/so/so138.aspx?id=1965%20 VFP6.0 视频教程下载 http://www.so138.com/so/so138.aspx?id=629%20 Word 使用视频教程 http://www.so138.com/so/so138.aspx?id=1969%20 黑客视频教程 - 灰鸽子远控使用教程 http://www.so138.com/so/so138.aspx?id=1956%20 计算机专业英语(中山大学) http://www.so138.com/so/so138.aspx?id=1973%20 Photoshop CS2 视频教程 http://www.so138.com/so/so138.aspx?id=1951%20 孙鑫 VC++ 20 集 + 讲义 ptt~ http://www.so138.com/so/so138.aspx?id=642%20 东南大学 - 汇编语言程序设计(共 34 讲) . http://www.so138.com/so/so138.aspx?id=2105%20 计算机基础知识视频教程 http://www.so138.com/so/so138.aspx?id=1967%20 PowerPoint 使用视频教程 http://www.so138.com/so/so138.aspx?id=1977%20 电脑硬件组装完全 DIY 手册 2005 全新版 http://www.so138.com/so/so138.aspx?id=2270%20 微机原理与应用视频 http://www.so138.com/so/so138.aspx?id=2130%20 Mysql 网络数据库开发视频教程 http://www.so138.com/so/so138.aspx?id=2132%20 BIOS 视频教学 http://www.so138.com/so/so138.aspx?id=2277%20 网络视频教程 http://www.so138.com/so/so138.aspx?id=296%20 数据库原理与技术 http://www.so138.com/so/so138.aspx?id=2280%20 金鹰 FlashMX 视频教程 http://www.so138.com/so/so138.aspx?id=1978%20 Oracle9 全集 http://www.so138.com/so/so138.aspx?id=2268%20 VC++ 视频教程 http://www.so138.com/so/so138.aspx?id=2269%20 通信原理 http://www.so138.com/so/so138.aspx?id=2127%20 CCNA 视频教学 http://www.so138.com/so/so138.aspx?id=2278%20 黑客视频教程 - 建立超级隐藏帐户 http://www.so138.com/so/so138.aspx?id=1964%20 微软中国研究院清华讲座 http://www.so138.com/so/so138.aspx?id=2100%20 金鹰 Authorware 视频教程 ( 入门篇) http://www.so138.com/so/so138.aspx?id=107%20 SQL 数据库视频教程 [ 北大 ] http://www.so138.com/so/so138.aspx?id=827%20 Windows2000 使用视频教程 http://www.so138.com/so/so138.aspx?id=1968%20 因特网的初步知识和简单应用 http://www.so138.com/so/so138.aspx?id=1966%20 局域网组网精彩视频教学 http://www.so138.com/so/so138.aspx?id=1791%20 Photoshop7 中文版入门视频教程 http://www.so138.com/so/so138.aspx?id=43%20 数据结构视频教程下载 [ 清华大学 ] http://www.so138.com/so/so138.aspx?id=621%20 Premiere pro7.0 视频教程 http://www.so138.com/so/so138.aspx?id=1950%20 ORACLE 内部培训视频教学 http://www.so138.com/so/so138.aspx?id=371%20 oracle 视频讲座 http://www.so138.com/so/so138.aspx?id=2273%20 北京大学计算机硕博答辩 http://www.so138.com/so/so138.aspx?id=2129%20 ASP 动态网页制作计 http://www.so138.com/so/so138.aspx?id=759%20 JSP 动态网页制作 http://www.so138.com/so/so138.aspx?id=760%20 电脑调试与维修视频教程 http://www.so138.com/so/so138.aspx?id=472%20 protel 2004 光盘教程 http://www.so138.com/so/so138.aspx?id=757%20 3dmax 室内装饰实例视频 http://www.so138.com/so/so138.aspx?id=1949%20 vpn 视频讲座 http://www.so138.com/so/so138.aspx?id=2274%20 动态网页制作视频教程 ASP.PHP.JSP http://www.so138.com/so/so138.aspx?id=1793%20 步步学 BIOS 视频教程 http://www.so138.com/so/so138.aspx?id=468%20 PHOTOSHOP 视频教程完整版 http://www.so138.com/so/so138.aspx?id=184%20 金鹰电脑教程 Flash ActionScript 编程视频教程 http://www.so138.com/so/so138.aspx?id=1623%20 黑客视频教程 - 网络神偷使用教程 http://www.so138.com/so/so138.aspx?id=1952%20 API 编程视频教程 http://www.so138.com/so/so138.aspx?id=2276%205,网络编程 需要学习什么网络编程的话,建议还是学C#吧由于网络编程基本涉及编程语言的所有基础知识,所以所谓“快速”,也不可能在几个星期内完成 。1.学习一种编程语言(c or c++ or c#)2.学习网络协议《TCP/IP 详解》 卷1-33.操作系统下的网络编程《UNIX网络编程》,《Windows网络编程》都是零基础入学的 , 这是网络编程的全部课程,要是感兴趣的话可以了解一下:第一阶段1、计算机操作基础2、Office办公自动化3、计算机组装与维护4、C语言第二阶段1、SQL Server2005数据库设计2、和高级查询3、数据结构4、C#面向对象程序设计5、HTML5与CSS3开发6、JavaScript7、jQuery高级编程8、PHP开发第三阶段APP Development1、JavaScript特效制作2、jQuery应用开发3、HTML5与CSS3开发4、Java面向对象程序设计第四阶段JAVAWEB Development1、产品流程应用2、移动平台界面设计3、Oracle数据库开发4、JavaWeb应用开发Mobile APP Development1、实训一:WEB前端设计与开发2、实训二:J2EE项目开发先认真想一下:自己是否想学编程 。你也可以搜索 80x86汇编小站,去这个网站看如下文章,体会一下编程的基础入门和快乐如何正确入门Windows系统下C/C++学习领域?掌握C/C++后,如何在Windows系统下开发有界面的程序?如何正确入门Windows系统下驱动开发领域?如何正确进入基于x86-64Bit Windows系统商业软件破解领域?如何正确的待汇编学习和反汇编学习?成为VC++程序员,我需要学会哪些东西?6 , Windows下C语言网络编程快速入门C语言的学习,一般的方式是,先学C,然后是C++ , 最好还要有汇编语言和微机原理基?。缓蟛攀荲isual C++ 。这样的方式,对学习者来说,要花费很多时间和耐力 。而在学校教学中,也没有时间深入学习Windows编程的实用技术了 。其实,具有了C语言基础后,再有一些基本的C++类的概念,就可以直接学习Windows C编程了 。一、走近Windows C语言很多语言都把显示一个“Hello,World!”做为第一个入门程序,C语言的第一个程序是这样的:#include<stdio.h>main()如果把main函数写成带参数的main函数,应该是:#include<stdio.h>main(int arge,char *argv[])Windows C的第一个程序和这个程序在形式和原理上都是一致的,只是有两点不同:1. 主函数接收的形参不只是命令行中的字符串的个数和字符串的首地址 。2. C语言的很多函数在Windows C中都可以继续使用,但象printf()屏幕显示等函数就不能继续使用了 。因为Windows是多任务操作系统,屏幕已不再为某一个应用程序所独有 , Windows C应用程序要显示字符串,需要使用Windows提供的API函数 , 开自己的窗口下面是一个最简单的,显示“Hello,World!”的Windows C程序:#include<windows.h>APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)主函数的形参有四个:1) Hinstance:接收程序运行时当前实例的句柄;2) HprivInstance:前一个实例的句柄;3) LpCmdLine:程序命令行指针;4) NcmdShow:一个用来指定窗口显示方式的整数 。这几个参数的使用我们会在深入的学习中介绍的 。显示Hello,Word!字符串,我们使用了一个MessageBox函数,这个函数会在屏幕上显示一个对话框,它的原型是:int MessageBox(HWND hWnd,LPCTSTR lpText,LPCTSTR lpCaption,UNIT uType)四个参数分别是:1) HWnd:父窗口的句柄;2) LpText:要显示字符串的指针;3) LpCaption:对话框标题字符串的指针;4) UType:显示在对话框上的小图标的类型 。使用这个函数要包含windows.h头文件 。调试一下,怎么样?窗口上弹出了一个“第一个Windows C程序”对话框,上面有一行字:“Hello,World!” 。世界真的很美好?。。?你连答案也发啦,晕!

    推荐阅读