Currently the only version of Visual Studio I own is VS6. I have developed a Web Service using VC++ 6 and the Soap Toolkit 3 Microsoft deployed prior to the .NET Web Service support. It has since been deprecated.

I cannot afford to get a newer version of Visual Studio currently, so I am stuck for the moment using VS6. The client is a c++ application that connects via the low level connection technique described in the SOAP toolkit documentation (and also explained here). On the server side, I wrote a COM dll. The COM dll provides functionality for my web service. It exports multiple functions. The functions take BSTR, BSTR*, int, int*, and MSSOAPLib30::ISentAttachments** parameters, and are capable of modifying pointer parameters for BSTR, int, and MSSOAPLib30::ISentAttachments to return data back to the client. In order to get the SOAP request sent from the client to be processed on the server side, I used the WSDL generator provided by the SOAP Toolkit. I then setup the appropriate listener in IIS. The Web Service functions properly setup like this.

Here are my questions given the setup described above:
1.) Is there a better and free way to implement the stage where the incoming SOAP request is sent to the COM dll? Currently, I have to use the SOAP Toolkit (which is no longer receiving support) because I do not know of a free alternative. Is there an alternative that I do not have to pay for?

2.) Do other VS Web Service capabilities in newer versions of VS support overloaded functions? Do they support default parameters?

3.) Is there anything wrong with the technique I have described for implementing a web service? It seems to work well. My only complaint is that is uses a Toolkit that is no longer supported.

Thank you for any help you can provide. If this is not the correct forum to post on I apologize. If you can recommend another forum that might also be able to help me get these questions answered, I would appreciate it as well. Thanks again.