老师让做一个VC++MFC聊天程序怎么实现发送图片?

VC++MFC聊天程序,我只会实现基本的文本对话功能,怎么实现发送图片?采用的是客户端/服务器模式。希望热心人帮帮忙啊!

去查查对象的序列化和反序列化。
把图片序列化为一个字符串,把字符串发送过去,在接收端将此字符串反序列化为一个图片对象,然后显示。

发送图片和发送文字的区别在于,一般文字是通过人工输入,然后程序获取并保存到内存变量或缓存中,通过SOCKET发送出去。而图片要么通过剪切板复制,或者读取硬盘中的图片文件到内存中后再通过SOCKET发送。因此你可以把任何图片数据当做二进制数据,通过CFile这样的类读入一个分配好的char型数组,然后再发送出去。你可以先发送图片文件的长度,然后再发送实际的图片数据。这样在服务器端完整接收了所有的图片数据,才显示图片。

什么文件都是文件,怎么打开txt就怎么打开jpg,然后读出文件内容,发送出去。

很简单,用 ReadFile 把图片读到 BYTE 数组里,返送就行了。

显示图片用 RichEditBox.

发送端,打开文件,把文件名和图片的内容发送到接收方,接收方创建文件,写入文件内容

创建一个char*类型的buffer放你的图片的二进制数据,然后发送这个buffer

把图片分段读入缓冲区,并用socket发送,读图片可以使用Win32API,CreateFile GetFileSize ReadFile。
接收方把图片写入到临时文件( CreateFile WriteFile ),并用Picture Control显示

用 ReadFile 把图片读到 BYTE 数组里,返送就行了