> Basically I need to call a dotnet web service from a client application
> written in VB6 and (if possible) avoid packaging a dotnet component with
> this VB6 application.
Its possible, but its a LOT more difficult because VB6 AFAIK doesnt have
native webservice support. Interpreting WSDL is not a trivial task.
> Is it possible to call a Web Service directly from VB6?
Yes. But the question should be "how hard is it"? A lot also depends on the
complexity of the webservice you want to call. Simple ones can be easily hand
hacked with HTTP.
> Alternatively could I create a COM wrapper class with dotnet in a
> central location (i.e. a machine with dotnet installed on it) on their
> network and then reference that wrapper class from the various client
> machine's VB6 app?
Using DCOM yes, but I wouldnt recommend it. Thats just another weak link that
will get broken.
Why not just install .NET framework? The users will never even notice.
--
Chad Z. Hower (a.k.a. Kudzu) - http://www.hower.org/Kudzu/
"Programming is an art form that fights back"
Blog: http://blogs.atozed.com/kudzu
lozd - 11 May 2005 18:04 GMT
Thanks for the response.
> Why not just install .NET framework? The users will never even notice.
If it were my choice I'd be doing this but unfortunately people higher up
won't allow this without a fair bit of reviewing, etc.
The webservice isn't too complex, basically providing a set of details to
the webservice to be written to a DB at the webservices end and waiting on a
boolean response. Since there could be a large number of fields being sent
I'm guessing hand-hacking with HTTP would be quite awkward.
The problem is the details are collected in a large VB6 app (which is
installed and used over most of the network) so I need some way to present
them to the webservice.
I'll try pushing for installing the .NET framework on a wider basis but
failing that I think I'll be forced to try the DCOM approach :-(
Thanks for the clarification, I appreciate it a lot.
> > Basically I need to call a dotnet web service from a client application
> > written in VB6 and (if possible) avoid packaging a dotnet component with
[quoted text clipped - 24 lines]
>
> Blog: http://blogs.atozed.com/kudzu
Chad Z. Hower aka Kudzu - 11 May 2005 18:15 GMT
> The webservice isn't too complex, basically providing a set of details
> to the webservice to be written to a DB at the webservices end and
> waiting on a boolean response. Since there could be a large number of
> fields being sent I'm guessing hand-hacking with HTTP would be quite
> awkward.
Sending is easy, its the response that proves more difficult. If its return
value is simple, you can easily use a soap spy and look at whats submitted.
Cosntruct a string with the same, and POST it. Get response, extract. Pretty
easy - and use a C#/VB.NET client to make the initial go.
For HTTP post you might consider Indy, its free:
http://www.indyproject.org/
--
Chad Z. Hower (a.k.a. Kudzu) - http://www.hower.org/Kudzu/
"Programming is an art form that fights back"
Blog: http://blogs.atozed.com/kudzu
lozd - 11 May 2005 19:26 GMT
Thanks a lot, I'll give that a try. Aside from my two thoughts (calling from
VB6 directly or using a central COM wrapper) I was short on ideas.
Cheers, you've been more than helpful!
> > The webservice isn't too complex, basically providing a set of details
> > to the webservice to be written to a DB at the webservices end and
[quoted text clipped - 15 lines]
>
> Blog: http://blogs.atozed.com/kudzu