本人使用WebBrowser方法如下:始终无法设置文件域中的值Private Sub Command1_Click()
    WebBrowser1.Navigate "http://localhost/upload/t.asp"
End SubPrivate Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
    Dim Doc As IHTMLDocument2
    Set Doc = WebBrowser1.Document
   
    If URL = "http://localhost/upload/t.asp" Then
        '填充带输入标记的元素集合
        Dim Inputs As IHTMLElementCollection
        Set Inputs = Doc.All.tags("INPUT")
        '选择第一个输入标记
        Dim Element As IHTMLElement
        Set Element = Inputs.Item(, 0)
        '使用正确的界面
        Dim finput As IHTMLInputFileElement
        Set finput = Element
        finput.Value = "file://D:\t.gif"  '<------此处是否有错??
        '调用此页第一个窗体上的提交
        Dim formsub As IHTMLFormElement
        Set formsub = Doc.Forms.Item(, 0)
        formsub.submit'<----------------------这一句可以提交表单
    End If
End Sub
ASP表单部分:<form action="t.asp" method="post" enctype="multipart/form-data" name="form1">
  <input type="file" name="ImageFile">
  <input type="submit" name="Submit" value="提交">
</form>

解决方案 »

  1.   

    基于安全性考虑,<input type=File>不能用程序设置它的值。不然应用程序就可以像你这么自动上传本地文件了
      

  2.   

    晕倒楼上的老大,那如果说我想用Inet控件的Execute方法上传可以吗?Inet1.Execute strURL, "POST"……后面还有两个参数InputData和InputHdrs,不知道是什么意思?
      

  3.   

    http://community.csdn.net/Expert/topic/3500/3500314.xml?temp=1.145571E-02上面的贴子里面提问的人贴出了自己的上传代码。