Windows with C++: Windows Web Services

My latest Windows with C++ column, Windows Web Services, just went live on the MSDN Magazine website. Here I’m taking a break from Direct2D to highlight the new SOAP stack introduced with Windows 7 for building both clients and servers. It’s completely native, has minimal overhead, and is incredibly fast. From the article:

One of the main reasons many developers flocked to the Microsoft .NET Framework, and Java to a lesser degree, was the fact that it made it much easier to write software for the Internet. Whether you were writing an HTTP client or server application, the .NET Framework had you covered with classes for making HTTP requests and processing XML easily. You could even generate SOAP clients from WSDL documents and implement SOAP servers with ASP.NET. As the standards around Web services matured, Microsoft developed the Windows Communications Foundation (WCF), also built on the .NET Framework, to make it easier to use the increasingly complex Web standards for handling different transports, such as TCP and UDP, and provide more versatile security options.

C++ developers, however, were left wondering whether it was even practical to use C++ to write Web applications. Microsoft had provided a couple of temporary solutions in the form of ATL classes and a COM-based toolkit, but in the end these couldn’t keep up with the progress that the managed SOAP stacks had made and thus were largely abandoned.

I hope you enjoy it.

Here are links to some of the most recent Windows with C++ columns:

September 2009 –  Drawing with Direct2D

June 2009 – Introducing Direct2D

April 2009 – The Virtual Disk API in Windows 7

February 2009 – Visual C++ 2010 and the Parallel Patterns Library

December 2008 – x64 Debugging With Pseudo Variables and Format Specifiers

October 2008 – Exploring High-Performance Algorithms

August 2008 – Asynchronous WinHTTP

And here is a complete list.

Published Wednesday, November 04, 2009 8:35 AM by KennyKerr
Filed under: , ,

Comments

# Twitter Trackbacks for Windows with C++: Windows Web Services - Kenny Kerr [asp.net] on Topsy.com

Pingback from  Twitter Trackbacks for                 Windows with C++: Windows Web Services - Kenny Kerr         [asp.net]        on Topsy.com

# re: Windows with C++: Windows Web Services

Thursday, November 05, 2009 2:43 AM by Steve Lamb

Thanks for the article, very interesting. Would love to see an example with complex data, structures within structures, exchanged between client and server. Some of the older technologies did not address such cases.

A couple of notes:

In figures 5 & 7, the default constructor of WsError is incorrect.

It shows

WsError* m_h(0)

{}

instead of

WsError() : m_h(0)

{}

It might be clearer to remove WsError from Figure 7 as it is there to show WsHeap.

# re: Windows with C++: Windows Web Services

Thursday, November 05, 2009 2:58 AM by KennyKerr

Steve: thanks for the feedback. The production folks really screwed up the figures in this article. I’ve reported it – hopefully they can get it cleaned up. WWS does a great job of supporting structured data with a powerful serialization layer. Unfortunately I didn’t have enough space in this article to cover it all.

Leave a Comment

(required) 
(required) 
(optional)
(required)