在.Net Micro Framework中使用DPWS2011-11-25 博客园 fox23摘要:DPWS是Windows Rally技术的一个子集, 主要用于在可接入网络的设备上提供对Web Service的 支持. 本文介绍了DPWS及其在.Net Micro Framework v3.0上的支持库, 以及如何利用Visual Studio 2008 sp1在.Net Micro Framework的Device上创建DPWS的host与client, 并让它们在Windows Vista下得 以运行.1.什么是DPWS ?DPWS, 即Device Profile for Web Services, 它定义了在资源有限的终端上使用的, 用于实现安全的 Web service的最小接口集. Windows Vista上内置了DPWS的客户端类库(WSDAPI), 那些支持DPWS的设备( 比如常见的某些支持DPWS的打印机)会自动出现在Windows Vista的Network Explorer中, 一如Windows XP 可以发现UPnP的设备一样. 从某种程度上说, DPWS是UPnP的Web Service实现. DWPS的架构如图所示:

Tips更多关于DPWS的内容请参阅DPWS的手册, 你可以在以下链接下载: http://schemas.xmlsoap.org/ws/2006/02/devprof/2. .Net Micro Framework上的DPWS类库DPWS Host类库 (MFDpwsDevice.dll 和 MFWsStack.dll)包括如下命名空间:
命名空间 | 描述 |
Dpws.Device | 提供一个表现DPWS设备堆栈的类,和一些控制DPWS堆栈属性的类。包含在MFDpwsDevice.dll中 |
Dpws.Device.Services | 包含一个创建和管理事件来源的类和控制主机服务终点、操作和事件的类。包含在 MFDpwsDevice.dll中 |
Ws.Services | 提供管理终端服务器的操作类。包含在MFWsStack.dll中 |
Ws.Services.Faults | 包含用于处理类生成时返回错误提示的类。包含在MFWsStack.dll中 |
Ws.Services.Mtom | 包含用来处理SOAP消息中的MTOM含在MFWsStack.dll中 |
Ws.Services.Soap | 提供了一个类和一个枚举类型解析SOAP消息。包含在MFWsStack.dll中 |
Ws.Services.Transport | 包含一个提供基础网络服务的类。包含在MFWsStack.dll中 |
Ws.Services.Utilites | 提供一个用于展示调试输出,展现持续时间,验证基于UUIDs的URIs的类。包含在 MFWsStack.dll中 |
Ws.Services.WsaAddressing | 包含用于处理WS- Addressing头信息的类。包含在MFWsStack.dll中 |
Ws.Services.Xml | 包含用于处理XML的类。包含在MFWsStack.dll中 |