XMS(XHIS Real-time Messaging System)是一个基于TCP/IP的实时消息交换支持平台,用于简捷、快速、可靠地实现网络中多个分布式进程之间的消息通讯。
XMS的应用编程接口简单而易于掌握,有助于快速地开发简单的分布式应用程序(如客户/服务器体系的应用)。
XMS的体系结构灵活而强大,可以作为大型分布式系统的基础通讯平台,在其上实现不同的应用层通讯协议(如HL7),并可用于集成不同架构(如COM、CORBA)的应用软件。
XMS 系统软件包包括以下组成部分:
XMS v1.0 免费版可以从 http://www.xhis.com下载,免费版支持最多5个客户端连接。
在XMS系统的支持下,用户可开发基于XMS的分布式应用系统。基于XMS的分布式应用系统一般包括三个组成部分:
基于XMS的应用系统通过XMS应用编程接口发送/接受消息,发送/接受消息有两种工作模式:
系统安装完成后,XMS服务器被配置为系统服务,并在系统启动时自动启动,如需要启动/停止,或调整服务的设置,可以通过Microsoft Windows的“系统服务”管理工具进行。
系统安装完成后,自动在XMS服务器所在目录建立参数配置文件xms.ini。编辑xms.ini可以改变XMS服务器的监听端口设置。设置改变后,需要重启动XMS服务器方能生效。
XMS应用编程接口通过一个动态链接库 xmapi.dll 提供。基于XMS的应用程序在运行时只需要此文件即可。为便于C/C++编程,软件包中还提供了此动态链接库的头文件与库函数 xmapi.h 与 xmapi.lib。
使用其它语言与开发工具编程,可参考提供的头文件直接调用 xmapi.dll 中的接口函数。
HRESULT WINAPI XmCreateMessage (XMSG *pMsg, DWORD nSize, DWORD hToReply);
HRESULT WINAPI XmDestroyMessage(XMSG *pMsg);
HRESULT WINAPI XmReadMessage (XMSG *pMsg, void *pData, DWORD nMaxSize);
HRESULT WINAPI XmWriteMessage(XMSG *pMsg, void *pData, DWORD nDataSize);
HRESULT WINAPI XmConnect (DWORD *hSession, LPCSTR szHostName, WORD nMode);
HRESULT WINAPI XmDisconnect (DWORD *hSession);
HRESULT WINAPI XmSendMessage(DWORD hSession, XMSG *pMsg);
HRESULT WINAPI XmRecvMessage(DWORD hSession, XMSG *pMsg);
HRESULT WINAPI XmRequest (DWORD hSession, XMSG *pRequest, XMSG *pResponse);