本人需要做一个通信模块,客户端需要传送一些命令、信息还有文件(文件可能会有几百M)到服务器端,但服务器端只要接受连接传送一些命令给客户端即可…
不知道有没有达人可以给一个小例子,服务器端采用完成端口模型,客户端不限,但客户端能够传送文件给服务器的…
(本人要的是文件传输的例子,谢谢)
主要是目前本人对IOCP只是略微了解,都没找到TransmitFile(不知这个函数可否在非IOCP的客户端使用?)的用法,希望有个小例子可以借鉴一下,在codeproject上找了一个例子实在太大了,恕我愚钝,而《Windows网络编程》一书中又只有ECHO的例子(我只看前6章)…
如果有的话,告诉我链接吧
或者我的mail:Missccu@gmail.com
不胜感激!
12 个解决方案
#1
IOCP那样这样的例子,都是一些原理性的。楼主还是靠自己吧,只要自定义好协议。其实就是socket的收发数据,没什么特别的东西。
#2
up!
#3
http://www.cppblog.com/niewenlong/archive/2007/08/17/30224.html
#4
http://blog.csdn.net/scq2099yt/archive/2008/03/21/2202617.aspx
#5
楼上两位给的例子,这些基本我都清楚,不过还是谢谢两位!
然后重申一下:我想要的完成端口模型文件传输的例子…
主要是想看看使用TransmitFile API的服务器和客户端是怎么写的…
#6
ACE->ACE_Handle->handle_transmit()
你看一下ACE 的 Proactor 的 example.
在 Windows 下是用完成端口做的,传输文件就是几行代码的事,example 里有。
你看一下ACE 的 Proactor 的 example.
在 Windows 下是用完成端口做的,传输文件就是几行代码的事,example 里有。
#7
发文件倒不是什么问题,倒是读写文件那里问题较大.读写文件本身没有异步的API,万一读写文件出现阻塞的话,那么整个IOCP流程就阻塞在那里.至于发送数据那部分,满大街有这种发送数据的IOCP代码,基本是通用的.
#8
看楼上的说得好轻松啊,看来写程序这东西还真是会的不难,难的不会!
ACE也是我一直想学的东西…
奇怪的是满大街的IOCP发送文件的代码我怎么找不到呢…
#9
不会,帮顶
#10
IOCP只是为你解决大量并发连接的一个好办法,传输文件是之后的事情啊,当然一套完整的解决方案还是需要时间和经验的
#11
http://blog.csdn.net/firebird321/archive/2008/05/08/2417168.aspx
我自己写着玩的(改别人的),没在项目里面应用过。麻烦你帮忙我测试一下(鄙视自己一把^_^),顺便帮忙完善一下。回头我找你要点代码收藏,呵呵。别拍砖
我自己写着玩的(改别人的),没在项目里面应用过。麻烦你帮忙我测试一下(鄙视自己一把^_^),顺便帮忙完善一下。回头我找你要点代码收藏,呵呵。别拍砖
#12
写个http下载服务器,就是个发送文件的东西了.IOCP发送文件就是发送数据呀,满大街是IOCP发送数据的代码,所以这东西要解决的只是读文件那部分要做到不阻塞.
#1
IOCP那样这样的例子,都是一些原理性的。楼主还是靠自己吧,只要自定义好协议。其实就是socket的收发数据,没什么特别的东西。
#2
up!
#3
http://www.cppblog.com/niewenlong/archive/2007/08/17/30224.html
#4
http://blog.csdn.net/scq2099yt/archive/2008/03/21/2202617.aspx
#5
楼上两位给的例子,这些基本我都清楚,不过还是谢谢两位!
然后重申一下:我想要的完成端口模型文件传输的例子…
主要是想看看使用TransmitFile API的服务器和客户端是怎么写的…
#6
ACE->ACE_Handle->handle_transmit()
你看一下ACE 的 Proactor 的 example.
在 Windows 下是用完成端口做的,传输文件就是几行代码的事,example 里有。
你看一下ACE 的 Proactor 的 example.
在 Windows 下是用完成端口做的,传输文件就是几行代码的事,example 里有。
#7
发文件倒不是什么问题,倒是读写文件那里问题较大.读写文件本身没有异步的API,万一读写文件出现阻塞的话,那么整个IOCP流程就阻塞在那里.至于发送数据那部分,满大街有这种发送数据的IOCP代码,基本是通用的.
#8
看楼上的说得好轻松啊,看来写程序这东西还真是会的不难,难的不会!
ACE也是我一直想学的东西…
奇怪的是满大街的IOCP发送文件的代码我怎么找不到呢…
#9
不会,帮顶
#10
IOCP只是为你解决大量并发连接的一个好办法,传输文件是之后的事情啊,当然一套完整的解决方案还是需要时间和经验的
#11
http://blog.csdn.net/firebird321/archive/2008/05/08/2417168.aspx
我自己写着玩的(改别人的),没在项目里面应用过。麻烦你帮忙我测试一下(鄙视自己一把^_^),顺便帮忙完善一下。回头我找你要点代码收藏,呵呵。别拍砖
我自己写着玩的(改别人的),没在项目里面应用过。麻烦你帮忙我测试一下(鄙视自己一把^_^),顺便帮忙完善一下。回头我找你要点代码收藏,呵呵。别拍砖
#12
写个http下载服务器,就是个发送文件的东西了.IOCP发送文件就是发送数据呀,满大街是IOCP发送数据的代码,所以这东西要解决的只是读文件那部分要做到不阻塞.