动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   .Net → 阅读文章

 Visual C#实现Windows信使服务

作者来源: 
阅读 1564 人次 , 2006-4-27 10:04:00 


  现在有很多网络管理软件都具备网络上信息实时传送的功能,虽然有些网络通讯软件功能比较强大,有的软件不仅可以传送文本信息,还可以传送二进制文件等。 但它们都有一个无法克服的缺点,那就是分发比较困难,信息传送双方计算机都需要安装通讯软件的客户端和服务器端软件,并且只有但双方都打开相应软件时,才可能进行信息传送。而信使通讯就可以克服上述缺点,由于信使服务在Windows 2000系统以上都是自带的,并且此服务在安装完Windows 2000以上后的缺省状态是打开的。所以只要网络的二台计算机安装Windows 2000以上系统,不再需要安装其他软件,就可以通过此服务实现信息传送了。当然这种网络信息传送分发也有先天不足,就是只能传送文本信息,如果您需要传送二进制文件等复杂的信息或数据,就无法使用这种方法了。

  一.简介Windows的信使服务及其使用方法:

  首先进入"控制面板",在"管理工具"中选择"服务"后,就可以得到如图01所示界面,图01就是Windows服务的运行窗口:

Visual C#实现Windows信使服务
图01:计算机Windows"服务"运行界面

  信使服务在Windows操作系统中对应的服务名称是"Messager"。Windows操作系统给此服务的定义是"发送和接收系统管理员或者"警报器"服务传递的消息。"在缺省状态信使服务是启动的,如果发现它处于"停止"或者"已禁用"状态,请启动它,因为后面介绍的程序能够正常运行的条件之一就算此服务处于"启动"状态。

  利用Windows系统也可以通过信使服务发送信息,具体操作如下:

  1. 在"桌面"上选中"我的电脑"后,单击鼠标右键,在弹出的菜单中选择"管理"后,弹出"计算机管理"对话框:

  2. 打开"共享文件夹",选中"共享"后,单击鼠标右键,在弹出的菜单中选择"所有任务"中的"发送控制台消息",具体如图02所示,当完成以上操作就可以得到如图03所示界面:

Visual C#实现Windows信使服务
图02:利用"信使服务"实现信息发送界面之一

  3. 在图03所示界面中,单击"添加"按钮,输入要发送到的计算机的IP地址或主机名称,在"消息"文本框中输入要发送的信息后,单击"发送"按钮,则信息就通过信使服务发送到对方了。

Visual C#实现Windows信使服务
图03:利用"信使服务"实现信息发送界面之一

  以上就是利用Windows的自身的信使服务来发送信息的具体步骤。

  二.Visual C#通过信使服务实现网络信息传送关键技术:

  虽然.Net FrameWork SDK中提供了许多开发网络程序的类库,但这些类库中却没有提供调用信史服务的方法,所以要调用信史方法只有使用WinAPI函数,这个WinAPI函数NetMessageBufferSend,它位于"Netapi32.dll"文件中。以下就是NetMessageBufferSend函数在Visual C#中的声明方法:

[DllImport ( "Netapi32" , CharSet = CharSet.Unicode ) ]
public static extern int NetMessageBufferSend (
string servername , //服务器名称,为NULL
string fromname , //接收方名称,可为IP或计算机名称
string msgname , //信息名称,为NULL
string buf , //信息
int buflen ) ; //信息长度

  对照NetMessageBufferSend函数参数分别输入相应的接收方名称和信息内容即可,可见NetMessageBufferSend的使用方法还是非常简单的。下面就来详细介绍Visual C#通过信史服务实现网络信息传送的具体实现方法。
  
 本文TagsC#  Windows  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:利用Visual C#实现Reversi游戏开发
· 下一篇:用Visual C#.NET编写服务器日期控件
· 一步一步安装VB.Net
· Microsoft .NET 框架常见问题(一)
· 从 Visual Basic 6.0 到 Visual Basic.NET 的转换(1)
· IIS组建Intranet完全手册(二)
· asp.net高级教程(五)-实战篇(中)


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077