资源简介
利用Wcf实现聊天程序,WCF很好的学习资料
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.ServiceModel;
namespace WCFChatClient
{
public partial class ChatForm : Form IChatServiceCallback
{
///
/// 该函数将指定的消息发送到一个或多个窗口。此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回。
///
/// 其窗口程序将接收消息的窗口的句柄
/// 指定被发送的消息
/// 指定附加的消息指定信息
/// 指定附加的消息指定信息
[DllImport(“user32.dll“)]
private static extern int SendMessage(IntPtr hWnd int msg int wParam IntPtr lParam);
//当一个窗口标准垂直滚动条产生一个滚动事件时发送此消息给那个窗口,也发送给拥有它的控件
private const int WM_VSCROLL = 0x115;
private const int SB_BOTTOM = 7;
private int lastSelectedIndex = -1;
private ChatServiceClient proxy;
private string userName;
private WaitForm wfDlg = new WaitForm();
private delegate void HandleDelegate(string[] list);
private delegate void HandleErrorDelegate();
public ChatForm()
{
InitializeComponent();
ShowInterChatMenuItem(true);
}
///
/// 连接服务器
///
private void InterChatMenuItem_Click(object sender EventArgs e)
{
lbOnlineUsers.Items.Clear();
LoginForm loginDlg = new LoginForm();
if (loginDlg.ShowDialog() == DialogResult.OK)
{
userName = loginDlg.txtUserName.Text;
loginDlg.Close();
}
txtChatContent.Focus();
Application.DoEvents();
InstanceContext site = new InstanceContext(this);//为实现服务实例的对象进行初始化
proxy = new ChatServiceClient(site);
IAsyncResult iar = proxy.BeginJoin(userName new AsyncCallback(OnEndJoin) null);
wfDlg.ShowDialog();
}
private void OnEndJoin(IAsyncResult iar)
{
try
{
string[] list = proxy.EndJoin(iar);
HandleEndJoin(list);
}
catch (Exception e)
{
HandleEndJoinError();
}
}
///
/// 错误提示
///
private void HandleEndJoinError()
{
if (wfDlg.InvokeRequired)
wfDlg.Invoke(new HandleErrorDelegate(HandleEndJoinError));
else
{
wfDlg.ShowError(“无法连接聊天室!“);
ExitChatSession();
}
}
///
/// 登录结束后的处理
///
///
private void HandleEndJoin(string[] li
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1425 2009-08-31 14:13 WCFChat\WCFChat.sln
..A..H. 47616 2009-09-04 13:33 WCFChat\WCFChat.suo
文件 930 2009-09-02 23:02 WCFChat\WCFChatClient\App.config
文件 61440 2009-09-04 13:02 WCFChat\WCFChatClient\bin\Debug\WCFChatClient.exe
文件 936 2009-09-03 15:11 WCFChat\WCFChatClient\bin\Debug\WCFChatClient.exe.config
文件 44544 2009-09-04 13:02 WCFChat\WCFChatClient\bin\Debug\WCFChatClient.pdb
文件 14328 2009-09-04 19:51 WCFChat\WCFChatClient\bin\Debug\WCFChatClient.vshost.exe
文件 936 2009-09-03 15:11 WCFChat\WCFChatClient\bin\Debug\WCFChatClient.vshost.exe.config
文件 490 2007-07-21 01:33 WCFChat\WCFChatClient\bin\Debug\WCFChatClient.vshost.exe.manifest
文件 31290 2009-09-03 15:11 WCFChat\WCFChatClient\bin\Debug.rar
文件 9698 2009-09-03 15:01 WCFChat\WCFChatClient\ChatForm.cs
文件 9222 2009-09-03 14:57 WCFChat\WCFChatClient\ChatForm.Designer.cs
文件 25497 2009-09-03 14:57 WCFChat\WCFChatClient\ChatForm.resx
文件 4572 2009-09-01 23:29 WCFChat\WCFChatClient\ChatProxy.cs
文件 545 2009-09-04 13:02 WCFChat\WCFChatClient\LoginForm.cs
文件 3768 2009-09-04 13:02 WCFChat\WCFChatClient\LoginForm.Designer.cs
文件 25299 2009-09-04 13:02 WCFChat\WCFChatClient\LoginForm.resx
文件 13562 2009-09-03 14:57 WCFChat\WCFChatClient\obj\Debug\WCFChatClient.ChatForm.resources
文件 1571 2009-09-04 19:51 WCFChat\WCFChatClient\obj\Debug\WCFChatClient.csproj.FileListAbsolute.txt
文件 1031 2009-09-04 13:02 WCFChat\WCFChatClient\obj\Debug\WCFChatClient.csproj.GenerateResource.Cache
文件 61440 2009-09-04 13:02 WCFChat\WCFChatClient\obj\Debug\WCFChatClient.exe
文件 13562 2009-09-04 13:02 WCFChat\WCFChatClient\obj\Debug\WCFChatClient.LoginForm.resources
文件 44544 2009-09-04 13:02 WCFChat\WCFChatClient\obj\Debug\WCFChatClient.pdb
文件 180 2009-09-01 22:55 WCFChat\WCFChatClient\obj\Debug\WCFChatClient.Properties.Resources.resources
文件 13562 2009-09-01 22:55 WCFChat\WCFChatClient\obj\Debug\WCFChatClient.WaitForm.resources
文件 497 2009-08-31 14:27 WCFChat\WCFChatClient\Program.cs
文件 1358 2009-08-31 14:05 WCFChat\WCFChatClient\Properties\AssemblyInfo.cs
文件 2876 2009-08-31 14:05 WCFChat\WCFChatClient\Properties\Resources.Designer.cs
文件 5612 2009-08-31 14:05 WCFChat\WCFChatClient\Properties\Resources.resx
文件 1098 2009-08-31 14:05 WCFChat\WCFChatClient\Properties\Settings.Designer.cs
............此处省略82个文件信息
相关资源
- 《WCF服务编程(第三版)》.pdf
- 初学Visual Basic 2010代码
- swift-模仿类似聊天的UI
- 易语言服务器源码易语言简易聊天室
- 易语言P2P聊天源码
- 嵌入式局域网聊天系统客户端
- QQ米i吗破解
- 漫言阁个人博客 V3.0 全功能版
- GG2014版源码。仿QQ聊天软件
- SignalR net版本的在线聊天室
- linux网络聊天室
- 基于ajax的web聊天室
- FLASH局域网免服务器P2P聊天室源码(
- 易语言客户端源码易语言服务端源码
- 易语言易聊天客户端源码易语言易聊
- 易语言聊天室客户源码易语言聊天室
- .net 实现 简单的QQ聊天
- 利用同步TCP编写网络聊天程序
- 微信机器人 v3.5绿色免费版.zip
- 网页版聊天程序--网络程序设计课程大
- 基于QTsocket的局域网聊天室
- 通用QQ聊天记录查看器.rar
- 基于图灵的智能聊天机器人.zip
- ActiveMQ实战——实现一个简易版的聊天
- 智能聊天机器人之图灵机器人
- springmvc+netty实现聊天功能
- 局域网多人语音聊天
- nodejs聊天室
- QQ视频聊天
- 聊天界面对话效果
评论
共有 条评论