如何截取、调包ASP参数?例如
某网页部分源码
<form action="password.asp" method="post">
请输入名称:<Input Type=Text Name=uname Size=10 value=""><br>
请输入密码:<Input Type=Password Name=pass Size=10 value=""><br>
<br>
<Input Type=Submit value=" 确 定 ">
<Input Type=Reset value="重新输入">
</form>
当别人填完名称及密码点击确定时,我的程序如何实时监测到它的参数uname、pass,并替换它的值发送出去?请各位大侠赐教,万分感谢!

解决方案 »

  1.   

    在password.asp 里边写上uname=replace(request("uname"),"你想要替换的值","替换成的值")
    然后response.redirect "password2.asp"不就可以了么?也可以用js.不过感觉js不是很可靠
      

  2.   

    Public WithEvents myIe As InternetExplorer
    Private Sub Command1_Click()
    Set myIe = New InternetExplorer
    myIe.Visible = True
    myIe.Navigate "http://office.9zp.com"
    End SubPrivate Sub myIe_BeforeNavigate2(ByVal pDisp As Object, URL As Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers As Variant, Cancel As Boolean)
    Debug.Print PostData
    End Sub
      

  3.   

    不知道能否截到ie窗口里的button的单击消息
      

  4.   

    当名称为aa,密码为bb时,Debug.Print PostData出来的结果是:
    湵浡?扢瀦獡?乱码,如何才能知道它的参数值分别是aa、bb呢?
      

  5.   

    楼主真可爱,那是被IE加过密的
    最来一招吧
    Public WithEvents myIe As InternetExplorer
    Private Sub Command1_Click()
    Set myIe = New InternetExplorer
    myIe.Visible = True
    myIe.Navigate "http://office.9zp.com"
    End SubPrivate Sub myIe_BeforeNavigate2(ByVal pDisp As Object, URL As Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers As Variant, Cancel As Boolean)
    If CStr(PostData) <> "" Then
    Call ggg
    End If
    End Sub
    Sub ggg()
    Dim vDoc, vTag
        Dim i As Integer
          
        Set vDoc = myIe.Document
        For i = 0 To vDoc.All.length - 1
            If UCase(vDoc.All(i).tagName) = "INPUT" Then
                Set vTag = vDoc.All(i)
                If vTag.Type = "text" Or vTag.Type = "password" Then
                    Debug.Print vTag.Value
                End If
            End If
        Next i
    End Sub
      

  6.   

    你可以对该窗口的keypress进行拦截,或者对它的text进行sendmessage 来GETTEXT,不一定拦截呀
      

  7.   


      我用的是Iris的嗅探器。另外,pass=1 or 1=1 这种办法有点过时了。
      

  8.   

    hhjjhjhj(大头) ( ) 
    非常感谢!现在能够监测到它的参数的值了,但是我如何才能利用调包参数的值呢?
      

  9.   

    利用BeforeNavigate2中有个参数Cancel来取肖提交,同时,激活一个timer,用代码重新提交(当然这时也会有BeforeNavigate2事件,这时不能使Cancel=true了)
      

  10.   

    假如,此表单中需要提交的还有其它参数,它们也都有默认值了,那么如何指定参数uname、pass的值,再一起全部提交?
      

  11.   

    看来你对这个问题只是一个想法而已,没有一点基础
    取肖提交后,网页并没有刷新,客户填写的数据还在,你只要改你想改的数据
    赋值:vTag.Value=“XXXXXX”
    提交:If vTag.Type = "submit"
          vTag.click
      

  12.   

    hhjjhjhj(大头) ( )再次谢谢你!