Search code examples
c#web-servicesdllvb6sap-basis

Virtual Interface Method not supported when DLL used by VB6 program


Ok, right to the point here is my background story:

  1. I got a vb6 app that will now retrieve data from SAP
  2. A SAP web services was created
  3. I created a DLL using C# that contains the service reference to the web service, makes the call and creates a XML in an ADO Recordset compatible format.
  4. All these has been successfully tested using a Windows Form
  5. There's no problem yet

Now, that being "said", when I integrate that DLL to VB6 I successfully call the DLL's functions. But when I call the function that will return the XML I got the following error:

Virtual Interface Method >WebServiceObject::urn:sap-com:document:sap:soap:functions:mc-style< not supported

And I received an incomplete XML. However when I make the same call from a .NET test web form I got the full XML and everything looks beautiful.

Any hints on this?


Solution

  • Alright, After a long day looking for this, frustrated with the idea that all my logic looked good I found that the error was on my part. For all of you getting this error please check that methods, parameter, objects in your WSDL matches you endpoint. My problem was that I am setting the end points programmatically using the endpoint's URL and a different end point address was passed from VB6, hence the error that the method called was not supported since it did not belong to that end point.

    Good luck all!