Welcome to MSDN Blogs Sign in | Join | Help

Nicolas Moreau's Blog

Thoughts from .NET Large Scale Real Life projects
Calling WebServices from a VB6 Application
 

I recently faced a situation in which a customer had to interoperate between a Visual Basic 6 application and existing WebServices. Interesting challenge, with many different options.

 

The following direction were foreseen as follows :

  1. Use XMLHTTP an code SOAP call and serialization by hand
  2. Using SOAP Toolkit : it is deprecated by the Framework .NET and support policy sticks to the issue of the Extended Support lasting until March 31, 2008
  3. Using .NET assemblies on the client called by VB6 components through COM Interop, thus leveraging the ability of .NET to easily deal with WebServices (Proxy generation, Serialization)
  4. Using Liquid XML http://www.liquid-technologies.com/default.aspx

A solution that "mimics" VB6/COM world what VS & .NET do : class generation & handling serialization

 

Finaly an interesting alternative was seen. The existing applicaiton was already using a COM+ middle tier. So the solution used was the following ;

  1. Use a COM+ .NET Enterprise Services Middle tier component that
    1. Make the WebService call
    2. Deserialize the objets into .NET Structs
    3. Pass by value the objects back to the VB6 Client using DCOM, and marshalling the Struct byValue.

And it works !

 

Interesting integration Pattern to reuse to call WebServices from a VB6 Application that cannot sustain .NET framework on the client station.

 

 

Posted: Thursday, April 13, 2006 10:56 PM by nmoreau

Comments

No Comments

Anonymous comments are disabled
Page view tracker