学习indy组件之一idhttp的使用方法
关于delphi中idhttp网页提交的方法?
这是一个申请key的页面:https://license.avira.com/en/promotion-hylm9fbv7chaxs8zbl83?id=JVgkM1BNUn 我想要用idhttp.post方法进行自动提交,如下
procedure TForm1.Button1Click(Sender: TObject);
var
sPost, shtml: TStringlist;
sData: TMemoryStream;
begin
sPost := TStringlist.Create;
sData := TMemoryStream.Create;
try
sPost.Add('customerSalutationId=MR');
sPost.Add('customerFirstname=sdjl');
sPost.Add('customerLastname=sfjljkio');
sPost.Add('customerEmail=sdfsdfjoj@qq.com');
sPost.Add('customerCountryId=Italy');
IdHTTP1.Post('https://license.avira.com//en/promotion-hylm9fbv7chaxs8zbl83?id=Y8on000002',
sPost, sData);
except
ShowMessage('error');
sPost.Free;
sData.Free;
end;
sPost.Free;
sData.Free;
end; 但是点击button后出现"无效指针操作"的错误提示,请问问题出现在哪里了,另外提交后返回的应该是一个浏览授权文件的页面,请问应该如何接收这个页面?
提问者采纳
function GetString(tStr,sStr,eStr :string):string;
var
sPos,ePos :integer;
begin
Result := '';
sPos := Pos(sStr,tStr);
if sPos > 0 then
begin
tStr := Copy(tStr,sPos+Length(sStr),Length(tStr)-sPos-Length(sStr)+1);
ePos := Pos(eStr,tStr);
if ePos > 0 then
Result := Copy(tStr,1,ePos-1);
end;
end; procedure TForm1.Button1Click(Sender: TObject);
var
sl :TStringList;
s :string;
begin
s := Utf8ToAnsi(IdHTTP1.Get('https://license.avira.com/en/promotion-hylm9fbv7chaxs8zbl83'));
s := GetString(s,'
');
sl := TStringList.Create;
try
sl.Add('customerSalutationId=MR_');
sl.Add('customerFirstname=sdjl');
sl.Add('customerLastname=sfjljkio');
sl.Add('customerEmail=sdfsdfjoj@qq.com');
sl.Add('customerCountryId=CN');
sl.Add('buttonActivate=Request license now');
s := Utf8ToAnsi(IdHTTP1.Post('https://license.avira.com/'+s,sl));
if Pos(UpperCase('A license file has been already generated for this email address'),UpperCase(s)) > 0 then
ShowMessage('该邮箱已经使用')
else
begin
s := GetString(s,'License Overview');
s := Utf8ToAnsi(IdHTTP1.Get('https://license.avira.com/en/'+s));
ShowMessage('License No.: ' + GetString(s,'License No.: ',' '));
end;
finally
FreeAndNil(sl);
end;
end;
- 提问者评价
-
多谢大哥!

cb120520025 | 九级 采纳率57%
擅长: 其他编程语言
其他类似问题
- 2012-05-03delphi 的 Idhttp 如何向网站提交文件?(使用P...1
- 2009-06-19delphi如何向网页提交数据?1
- 2007-08-03DELPHI idhttp问题,高手进,完全解决追加200分8
- 2012-07-31delphi如何用idhttp的方法向网页里的嵌套表单提交数...
- 2009-12-19如何在delphi里用idhttp提交application...
为您推荐:
idhttp的相关知识
- 2009-11-22Identifier redeclared: 'idhttp' delphi 2
- 2010-01-10delphi idhttp.post的问题 7
- 2011-01-20cookie是什么意思 819
- 2010-02-05delphi技术IdHttp控件 2
- 2012-12-04idhttp.post问题(delphi7)
等待您来回答
- 0回答 30 云南腾晋物流股份有限公司仓储中心石山强挖土石方—001标段
- 0回答 20 哪里可以下载delphi6实务经典的配套光盘?
- 0回答在县城开跨境电商体验店好做吗?
- 0回答 30 红桥 五矿 兴文 这一代有人看到这辆摩托车吗川q938c6白色的钱...
- 0回答 30 从大渡口到北碚城南双元大道88号阳光华府加油站如何走
- 0回答 30 从东莞大朗去广州嘉禾要多久
- 0回答 30 云南腾晋物流股份有限公司仓储中心石山强挖土石方—001标段
- 0回答 15 delphi 要给datetimepicker控件加上背景图,只要加在控件上,控...
- 1回答 20 电商送货后私自打开包装,发现货品损坏,如何维权
- 0回答中国五矿集团公司投资水口山
- 0回答 30 请问在大渡口镇火炬住宅区购置二手房能亨受政府补贴吗?
- 0回答 30 嘉禾橙天影院 蚁人什么时候放
- 0回答 30 别的公可以加入宁波好国际物流发展股份有限公司跨境购项目吗...
- 1回答 20 Delphi7中如何将edt的文字右对齐
- 0回答 20 智尚s30电商版有天窗吗
知道日报
2015.08.12往期回顾

还没有百度账号?立即注册



学习indy组件之一idhttp的使用方法的更多相关文章
- [ExtJS5学习笔记]第七节 Extjs5的组件components及其模板事件方法学习
本文地址:http://blog.csdn.net/sushengmiyan/article/details/38487519 本文作者:sushengmiyan ------------------ ...
- Hadoop YARN学习之组件功能简述(3)
Hadoop YARN学习之组件功能简述(3) 1. YARN的三大组件功能简述: ResourceManager(RM)是集群的资源的仲裁者, 它有两部分:一个可插拔的调度器和一个Applicati ...
- Vue学习之组件切换及父子组件小结(八)
一.组件切换: 1.v-if与v-else方式: <!DOCTYPE html> <html lang="en"> <head> <met ...
- Jetpack Compose学习(5)——从登录页美化开始学习布局组件使用
原文:Jetpack Compose学习(5)--从登录页美化开始学习布局组件使用 | Stars-One的杂货小窝 本篇主要讲解常用的布局,会与原生Android的布局控件进行对比说明,请确保了解A ...
- 八、Android学习第七天——XML文件解析方法(转)
(转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 八.Android学习第七天——XML文件解析方法 XML文件:exten ...
- C#学习笔记(八):扩展方法
还记得第一次使用DOTween时,发现缓动方法竟然是可以直接用Transform对象中调用到,当时就被震撼到了(那是还是C#小白一只).好了不多说了,今天来学习一下C#的这个特性——扩展方法. 扩展方 ...
- Linux下查看内核、CPU、内存及各组件版本的命令和方法
Linux下查看内核.CPU.内存及各组件版本的命令和方法 Linux查看内核版本: uname -a more /etc/*release ...
- AspUpload组件的安装及使用方法介绍
http://soft.huweishen.com/soft/47.html AspUpload对ASP编程人员来说要实现ASP网站文件上传功能它是首选.本文就为大家介绍一下AspUpload组件的安 ...
- VS2008安装“Visual Studio Web 创作组件”安装失败的解决方法
VS2008安装“Visual Studio Web 创作组件”安装失败的解决方法 今天在单位电脑安装VS2008,当安装到“Visual Studio Web 创作组件”时出现错误. 准备手动安装 ...
随机推荐
- serialVersionUID的作用
Java的序列化机制是通过在运行时判断类的serialVersionUID来验证版本一致性的.在进行反序列化时,JVM会把传来的字节流中的serialVersionUID与本地相应实体(类)的seri ...
- Codeforces Round #174 (Div. 2)
A. Cows and Primitive Roots 暴力. B. Cows and Poker Game 模拟. C. Cows and Sequence 线段树维护. D. Cow Progra ...
- 关于vue.js中表单控件绑定练习
html: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8 ...
- LeetCode-Combinations
Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. For exampl ...
- 【java规则引擎】之Drools之Rete算法
一:规则引擎--->规则引擎的核心是Pattern Matcher(模式匹配器).不管是正向推理还是反向推理,首先要解决一个模式匹配的问题.--->对于规则的模式匹配,可以定义为: 一个规 ...
- Android学习八:获取网络图片
看到QQ群里有个朋友说加载图片内存溢出的问题,所以就按照自己的想法试试的.但是按照他的方法,不知道为何没有发生内存溢出,不知道什么情况. 写这篇文章主要有三个目的: 1.多线程的学习 2.图片加载的学 ...
- windows脚本调用批处理
set ws=wscript.createobject(“wscript.shell”)ws.run “batchfn.bat /start”,0 save as xxx.vbe file.
- backbone学习总结(一)
入职第三天,新公司项目用到backbone+underscore+require等框架,前两天把项目的开发环境都配置好啦,项目也能跑起来,现在准备好好学习公司自己的框架以及用到的框架,有点想吐槽,开发 ...
- cuda-convnet windows8下编译
编译环境: windows8.1 Anaconda python2.7 Visual studio 2012 CUDA6.0 Pthread for windows Intel Math Kernel ...
- [转]Windows 下的进程间通讯及数据共享
http://blog.codingnow.com/2005/10/interprocess_communications.html Windows 下有很多方法实现进程间通讯,比如用 socket, ...