C++编写计算机短信发送程序
扫描二维码
随时随地手机看文章
手机短信已经成为当今的流行时尚,但怎样在计算机之间体验短信的方便与快捷呢?其实我们利用Windows 2000提供的信使服务就可以自制一个短信发送程序,令笔者最为得意的是它几乎可以穿越各种网络防火墙,不受限制。
信使服务是指“计算机管理”中的“发送控制台消息”。“计算机管理”将多个Windows 2000管理工具合并到了一个控制台树中,使用户可以轻松地访问特定计算机的管理属性和工具,实现了用一个统一的桌面工具来管理本地或远程计算机。
在“我的电脑”上单击右键,选择“管理”,即显示“计算机管理”主界面。依次选择“操作”、“所有任务”、“发送控制台消息…”,就可打开“发送控制台消息”窗口。
你看到的界面很简洁,操作也很简单。在上面的编辑框中输入要发送的信息,在下面的编辑框中添加/删除收件人(初始状态显示本机的计算机名),然后点击发送即可。但在实际使用中,我感觉操作步骤实在有些烦琐,于是,略加改造了一下。具体实现过程如下:
1.运行 C++ Builder 5.0,然后通过菜单File|New Application创建一个新的工程。
2.再在窗体中添加一个Edit组件、一个Memo组件、多个Label和Button组件。编辑框用于输入收件人的计算机名或IP 地址;Memo用于输入要发送的信息,消息可以是多行文本;多个按钮用于触发不同的操作。
3.核心程序是“发送”按钮的OnClick事件的处理过程:
void __fastcall TForm1??BtnSendClick?TObject ?Sender
AnsiString str
str=″NET SEND″
str=str+″ ″
str=str+Edit->Text? ?第6行
str=str+″ ″
str=str+Memo->Text
WinExec?str.c_str? ?SW_HIDE
以上只是完成了发送短信的基本功能,还可以进行功能扩展。比如说将程序的第6行改为“str=str+″?″”或是“str=str+″/domain??domainname?″”,就可以对工作组或域内的所有计算机以广播的方式发送消息;如果想要向所有参与服务器会话的用户发送消息,则语句为“str=str+″/users″”。
说明:首先,要想接收消息必须运行信使服务。换句话说,就是要在Windows 2000上运行,Windows 98是不支持信使服务的。其次,本程序没有接收消息的功能。因为,Windows 2000会自动启动信使服务,接收消息,弹出对话框显示信息。
注:本程序在Windows 2000 & C++ Builder 5.0环境下调试通过