Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsFree MagazinesWhite PapersSubmit Content
Discussion GroupsASP.NETWindows FormsLanguages.NET FrameworkVisual Studio.NET
Articles.NET FrameworkASP.NETToolsWindows Forms
.NET DirectoryOpen Source ProjectsUser GroupsWeb Resources
Related Topics
Visual Basic 6SQL ServerMS AccessOther DB ProductsMS Server ProductsMore Topics ...

.NET Forum / ASP.NET / Web Services / May 2005

Tip: Looking for answers? Try searching our database.

Calling Web Service from VB6

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
lozd - 11 May 2005 12:26 GMT
Hi,

I'm building a web service for a client and would like to know if it's
possible to achieve it the way they'd like it.

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.

The client wants the client app used on sales machines which don't have the
dotnet framework installed and wants to avoid installing it on these machines.

Is it possible to call a Web Service directly from VB6?

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?

Any help/pointers would be appreciated.

Thanks.
Chad Z. Hower aka Kudzu - 11 May 2005 17:03 GMT
> 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

Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.