<form action="http://211.x.x.x/kp.dll" method="post" name="frm1">
   车次<input type="text" name="para1"> <input type="submit" value="查询"> 
</form>
这是一段web代码 我现在需要在程序里将参数代入其中(比如para1=177) 提交 接收返回的结果 该怎么做呢? 请教

解决方案 »

  1.   

    可以用ICS的组件HTTP,Indy的必须使用HTTP的Post方法才可以的
    利用D7的WebAppDebugger分析Post的内容,就可以添加你自己的内容了自己去研究HTTP的Post方法吧
      

  2.   

    服务端不在我的控制范围内 如何利用WebAppDebugger呢
      

  3.   

    var
      EncodedDataString: string;
      PostData: OleVariant;
      Headers: OleVariant;
      j: Integer;
      AddressStr:string;
    begin
      AddressStr:='http://211.x.x.x/kp.dll';
      EncodedDataString := 'paral=177';
      PostData := VarArrayCreate([0, Length(EncodedDataString) - 1], varByte);
      for j := 1 to Length(EncodedDataString) do
         PostData[j-1] := Ord(EncodedDataString[j]);
      Headers :='Content-Type: application/x-www-form-urlencoded'+ #10#13;
      try
        WebBrowser1.Navigate(AddressStr, EmptyParam, EmptyParam, PostData, Headers);
      except
      end;
    end;
      

  4.   

    大侠 前面我没说清楚 html代码实际是这样的 有一个hidden的参数 不知道是做什么用的
    车次<input type="hidden" name="para"><input type="text" name="para1">
    你的方法用过 显示 有错误发生 和网页代码里去掉<input type="hidden" name="para">时查询结果一样 另外 <form ... name="frm1">这个参数上面的代码里似乎没有体现 是什么原因