作为Webservice的底层,SOAP在非托管代码调用Webservice的时期做出了很大的贡献,但是随着微软在.Net这条路上越走越远。SOAP ToolKit的开发也停止了。由于对SOAP ToolKit 的技术支持即将到期,所以我猜测最近发布的SOAP ToolKit 3.0 (http://www.microsoft.com/downloads/details.aspx?FamilyID=C943C0DD-CEEC-4088-9753-86F052EC8450&displaylang=en) 应该就是这个软件的最后一个版本。
MSDN中的文章Migrating from the Microsoft SOAP Toolkit to the .NET Framework 和Integrating Web Services and COM Components这两篇文章可以有助于把应用程序从SOAP移植到.Net。当然,非托管代码也可以通过托管函数来调用Webservice,在Visual C++中使用Managed C++很容易做到这一点(#pragma managed/#pragma unmanaged)。需要考虑的是在非托管代码和托管代码之间切换产生的性能开销。
Never say never. SOAP的生命期肯定比微软对它的支持期要长,至于有多长,Who knows?