HOWTO: Use the PostData Parameter in WebBrowser Control

ID: Q174923


The information in this article applies to:
  • Microsoft Visual Basic Professional and Enterprise Editions for Windows, version 6.0
  • Microsoft Visual Basic Control Creation and Enterprise Editions for Windows, version 5.0
  • Microsoft Visual Basic Enterprise Edition, 16-bit and 32-bit, for Windows, version 4.0
  • Microsoft ActiveX SDK, version 1.0
    on the following platforms: NT, Win95, x86
  • Microsoft Internet Explorer versions 3.0, 3.01, 3.02, 4.0, 4.01 for Windows 95
  • Internet Client SDK, versions 4.0, 4.01


SUMMARY

The WebBrowser control has a Navigate method with PostData as a parameter. This allows the user to post data to the specified URL with the WebBrowser control.


MORE INFORMATION

Navigate specifications:

Navigates to the resource identified by a Universal Resource Locator (URL), or to the file identified by a full path.

Syntax:

   object.Navigate URL [Flags,] [TargetFrameName,] [PostData,] [Headers] 

PostData Optional:

Data to send to the server during the HTTP POST transaction. For example, the POST transaction is used to send data gathered by an HTML form. If this parameter does not specify any post data, the Navigate method issues an HTTP GET transaction. This parameter is ignored if URL is not an HTTP URL.

NOTE: The post data specified by PostData is passed as a SAFEARRAY structure. The variant should be of type VT_ARRAY and point to a SAFEARRAY. The SAFEARRAY should be of element type VT_UI1, dimension one, and have an element count equal to the number of bytes of post data.

Sample to PostData to URL server

  1. Start Visual Basic. If Visual Basic is already running, choose New Project from the File menu (ALT, F, N). Form1 is created by default.


  2. Add a WebBrowser control (WebBrowser1) to Form1.


  3. Add a CommandButton (Command1) to Form1.


  4. Add the following code to the Command1_Click event of Form1:
    
          Sub Command1_Click()
             Dim URL As String
             Dim Flags As Long
             Dim TargetFrame As String
             Dim PostData() As Byte
             Dim Headers As String
    
             URL = "http://YourServer" ' A URL that will accept a POST
             Flags = 0
             TargetFrame = ""
    
             PostData = "Information sent to host"
    
             ' VB creates a Unicode string by default so we need to
             ' convert it back to Single byte character set.
             PostData = StrConv(PostData, vbFromUnicode)
    
             Headers = "Content-Type: application/x-www-form-urlencoded" & _
                vbCrlf
             WebBrowser1.Navigate URL, Flags, TargetFrame, PostData, Headers
          End Sub
     


  5. Press the F5 key to run the program and the information in the PostData variable will be sent to the server specified in the URL parameter.


Additional query words: POST Navigate kbdsi kbDSupport kbVBp kbVBp500 kbVBp600 kbIndetDev400
kbIE300 kbIE301 kbIE302 kbIE400 kbIE401

Keywords :
Version : WINDOWS:1.0,3.0,3.01,3.02,4.0,4.01,5.0,6.0
Platform : WINDOWS
Issue type : kbhowto


Last Reviewed: May 25, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.