1.急!!!高手指教!!毕业设计,要求:基于Linux的聊天软件设计与
看了下楼上这么多朋友的发言,我也来说两句。
就像楼上一些同学说的,C++本身一样,类库不同,这个就是基于Linux的特点,不然就叫基于Windows了。IM软件的编程思路和算法,这个才是这个课题的难点和要点,基于Linux只是套了个壳子。QT是非常好的工具,至于楼上有人说的gedit和vim,我倒是觉得这个就是Linux 文本编辑器的两派之争,和编程影响不大。
linux需要通过命令行进行编译,这个需要学习的。保守的说,一周内可以基本操作Linux,没有一天就入门那么夸张,因为应届生的基础在这摆着。材料的话我推荐《鸟哥的私房菜》和《红帽官方教程用户基础》。
最后说说毕业设计,基本上,有自己想法,想通过毕业设计突破自己实力的,多数都能拿到优秀毕业设计,毕业设计时老师的会在开题的时候难为学生,因为那个时候时间多,而且起步可以严格要求,但是越临近毕业要求会逐渐下降,尽量让你过,所以不要有心理负担。
2.基于VC局域网即时聊天程序的设计与实现
1) CserverSocket 是服务器端Socket类,关于这部分的核心代码为:
BOOL CserverSocket::Init(UNI port, CChatDlg* dlg)//服务器端初始化
{
m_uPort=port;
m_dlg=dlg;
if(Create(m_uPort)==FALSE)
{
AfxMessageBox(“Server Socket Create Error”);
Return FALSE;
}
if(this->Listen==FALSE)
{
AfxMessageBox(“Server Listen Error”);
Return FALSE;
}
m_dlg->SetDlgItemText(IDC_SHOWTEXT,”Server Has Been Set OK!”);
return TRUE;
}
void CserverSocket::OnAccept(int nErrorCode)
{
m_dlg->ProcessPendingAccept();
Csocket::OnAccept(nErrorCode);
}
2) ClientSocket是客户端Socket类,关于这部分核心代码为:
//通信Socket的初始化,一些关于传输数据串行化的操作
Void CClientSocket::Init(CChatDlg* dlg)
{
m_sfSocketFile=new CsocketFile(this);
m_aSessionIn=new Carchive(m_sfSocketFile,Carchive::load);
m_aSessionOut= new Carchive(m_sfSocketFile,Carchive::store);
m_bClose=false;
this->m_dlg=dlg;
}
//Socket接收到传输过来的数据的消息相应函数
void CClientSocket::OnReceive(int nErrorCode)
{
Csocket::OnReceive(nErrorCode);
Do
{
Cmessg temp;
Temp.Serialize(*m_aSessionIn);
M_dlg->m_sMsgList+=temp.m_strText;
M_dlg->SetDlgItemText(IDC_SHOWTEXT,m_dlg->m_sMsgList);
//如果有声音过来并且本机的声音设备已经准备好,则在本机发出声音
以上参考于三七毕业设计论文网 ,希望能帮到你
3.基于VC局域网即时聊天程序的设计与实现
1) CserverSocket 是服务器端Socket类,关于这部分的核心代码为:BOOL CserverSocket::Init(UNI port, CChatDlg* dlg)//服务器端初始化{ m_uPort=port; m_dlg=dlg; if(Create(m_uPort)==FALSE) { AfxMessageBox(“Server Socket Create Error”); Return FALSE; } if(this->Listen==FALSE) { AfxMessageBox(“Server Listen Error”); Return FALSE; } m_dlg->SetDlgItemText(IDC_SHOWTEXT,”Server Has Been Set OK!”); return TRUE;}void CserverSocket::OnAccept(int nErrorCode){ m_dlg->ProcessPendingAccept(); Csocket::OnAccept(nErrorCode);}2) ClientSocket是客户端Socket类,关于这部分核心代码为://通信Socket的初始化,一些关于传输数据串行化的操作Void CClientSocket::Init(CChatDlg* dlg){ m_sfSocketFile=new CsocketFile(this); m_aSessionIn=new Carchive(m_sfSocketFile,Carchive::load); m_aSessionOut= new Carchive(m_sfSocketFile,Carchive::store); m_bClose=false; this->m_dlg=dlg;}//Socket接收到传输过来的数据的消息相应函数void CClientSocket::OnReceive(int nErrorCode){ Csocket::OnReceive(nErrorCode); Do { Cmessg temp; Temp.Serialize(*m_aSessionIn); M_dlg->m_sMsgList+=temp.m_strText; M_dlg->SetDlgItemText(IDC_SHOWTEXT,m_dlg->m_sMsgList);//如果有声音过来并且本机的声音设备已经准备好,则在本机发出声音以上参考于三七毕业设计论文网 ,希望能帮到你。
4.《基于Socket的C/S模式的局域网聊天室》的毕业设计
代码贴出来,也没工夫写额,以前在学校我做过,我把我的思路给你好了,首先写出服务端和客户端,多线程实现收发,支持点对点聊天,如果这些LZ不会,那就先去看看基础吧,在此基础上,创建登录用户类,有用户ID(String),昵称和socket属性,一个房间管理类,用来管理私聊,群聊或者2个以上人的聊天,有一个MAP属性,以聊天者ID相加的值为建,以保存所有聊天者socket的List为值,其中群聊是MAP的默认属性,登陆一个用户,value就添加他socket,当用户选择一个人私聊,或者几个人群聊时,MAP创建相应的映射,就这样了,当时我是全部实现了,但在关闭socket时有些问题。
具体逻辑和其中BUG,自己调和写吧,例如用ID相加为建有时会有问题。
5.如何在linux下用c语言编写一个类似qq的聊天软件
语言 望采纳谢谢 /** server.c**Created on: 2012-6-15*Author: root*/#include
转载请注明出处众文网 » 毕业论文linux平台下的c聊天系统的设计与实现(急!!!高手指教!!毕业设计,要求:基于Linux的聊天软件设计与)