• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 11453
  • Last Modified:

Sending a HTTP Request using VB6

Hi all!

I need to send a HTTP request to a certain asp file on the internet so as to trigger a action like sending emails, etc...

how should i do it??

thanks a million
0
boonhui78
Asked:
boonhui78
  • 3
  • 3
  • 3
  • +1
1 Solution
 
shankarkrupaCommented:
Put an inet transfer control (microsoft internet transfer controls)

inet1.Execute "http://website.com/page.asp", "POST", "TEST=TEST"
0
 
shankarkrupaCommented:
If that does not work, try this:
inet1.Execute "http://website.com/page.asp", "POST", "TEST=TEST", "Content-Type: application/x-www-form-urlencoded"
0
 
boonhui78Author Commented:
hi shankarkrupa!

i forgot to mention that my application is actually an activex dll... so it doesnt have any forms

so is it possible to create this object at run time?

thanks
0
Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

 
shankarkrupaCommented:
Of course, you can do it by latebinding...

Like this:

set inet1 = CreateObject("InetCtls.Inet.1")

then all those code...

Maybe, it is better to first place the inet1.cancel before all those codes, after creating the object...
0
 
CJ_SCommented:
Following is the code I use. it needs at least IE 5 installed. the function makes use of the XMLHTTP object...if you want you can adjust it to make use of early binding instead of late binding like in the example.

Private Function GetHTML(url) As String
    Dim objXML As Object
    Set objXML = CreateObject("Microsoft.XMLHTTP")
    objXML.Open "GET", url, False
    objXML.send
    If (objXML.Status = 404) Then
        GetHTML = "404 Error"
    Else
        GetHTML = objXML.responseText
    End If

    Set objXML = Nothing
End Function

It sends the http request, and will return you the contents of that url, or a 404 error. The 404 error can be replaced by an err.raise, but that's all up to you to design it the way you want it to.

regards,
CJ
0
 
hongjunCommented:
Using XMLHTTP Object

Private Sub Send_HTTP_REquest
     Dim DataToSend As String
     Dim objXML As Object


     DateToSend = "id=1"

     Set objXML = CreateObject("Microsoft.XMLHTTP")
     objXML.Open("POST", "http://www.domain/your_page.asp", false)
     objXML.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
     objXML.send DataToSend
End Sub


More information here
http://support.microsoft.com/support/kb/articles/Q290/5/91.ASP

hongjun
0
 
boonhui78Author Commented:
hi hongqiun!
that xml solution works however it removes all the spaces inside my data...

for example, if i set
DateToSend = "name=Eric Ang&body=Hello World"

i would recieve "EricAng", and "HelloWorld"

Any solutions??

Thanks

0
 
hongjunCommented:
Try this then

DateToSend = "name=Eric Ang&body=Hello World"
DateToSend = replace(DateToSend," ", "+")

hongjun
0
 
boonhui78Author Commented:
Hey Man! You are great!!

Thanks a million!
0
 
hongjunCommented:
I am still learning like everyone here.

hongjun
0

Featured Post

The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

  • 3
  • 3
  • 3
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now