idhttp + TImage 获取网页验证码
来源:互联网 发布:我赢职场java视频网盘 编辑:程序博客网 时间:2024/06/05 14:51
源于网络:
本人用的Delphi7,让我没有想到的是,它的TImage竟然不能显示GIF,但是我又要让它能显示,这个时候怎么办?
去网上找了很久,终于找到了TGIFImage的源码pas文件,就是那个广为流传的2.2版本,之所以选择源码文件pas,而不用dcu文件,是因为害怕Delphi的版本问题。
下面就开始它的应用。新建一个工程,菜单栏project-->Add to project-->选择GIFImage.pas-->打开,编译,是不是发现你的项目文件夹下面多了个dcu文件,好了,已经成果完成第 一步了,你可以将这个dcu和pas复制到Delphi的安装文件夹下的<lib>文件夹
在你的项目的开头interface部分中的uses中加入GIFImage,下面我们来看看一个TImage控件是怎么显示GIF的。
http://hi.baidu.com/spitcold/blog/item/7eaec93ad26da42d97ddd89e.html
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
IdHTTP, StdCtrls, ImgList, ExtCtrls, jpeg;
type
TForm1 = class(TForm)
Button: TButton;
IdHTTP: TIdHTTP;
Image: TImage;
btn1: TButton;
procedure ButtonClick(Sender: TObject);
procedure btn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ButtonClick(Sender: TObject);
var
url:string;
ms:TMemoryStream;
jpg: TJPEGImage; //ctrl+鼠标左键单击,提示查找不到.jpg.pas单元文件,但可以正常编译运行。
begin
url := 'http://captcha.qq.com/getimage?aid=15000701&0.9129723031485226';
ms := TMemoryStream.Create;
jpg := TJPEGImage.Create;
IdHTTP.Get(url,ms);
ms.Position := 0;
jpg.LoadFromStream(ms);
Image.Canvas.Draw(100,100,jpg);
ms.Free;
jpg.Free;
{
Timage控件不能显示gif图片;
如果Url验证码图片为gif格式就会出错;
可以使用 TGIFImage 代替; TGIFImage手动安装,不自带,非控件,pas单元;
}
end;
procedure TForm1.btn1Click(Sender: TObject);
begin
Image.Picture.LoadFromFile('F:/123.jpg'); //jpg格式正常;
Image.Picture.LoadFromFile('F:/123.gif')l //gif格式就出错了;
end;
end.
- idhttp + TImage 获取网页验证码
- idhttp获取验证码范例
- 关于在网页上获取信息.idhttp
- idhttp用代理IP获取网页源码
- Delphi中idHttp获取网页源文件
- Delphi 用idhttp 获取网页源码
- IDHTTP获取网页的内容或源码
- Idhttp Post 模拟提交验证码
- delphi2009 用idhttp获取网页内容中文乱码
- 用IdHTTP获取UTF-8编码的网页
- 获取网页中的验证码图片
- 获取网页中的验证码图片
- 获取网页中的验证码图片
- 获取网页中的验证码图片
- 获取网页中的验证码图片
- C#如何获取网页验证码图片
- C#获取网页中的验证码图片
- Delphi IDhttp 获取Cookie
- office2007中如何从任意一页显示页码以及如何从第二页显示页码
- c#如何使用socket发送一条记录再接收一条记录,服务器端及客户端如何编写,初学。。最好有代码,谢谢!
- 激励程序员的9句名言
- Qt程序 与 CMD窗口弹出的控制
- 在MFC类中各种类的指针的获取和应用
- idhttp + TImage 获取网页验证码
- 什么是中间层,什么是三层网络结构
- Delphi中的Record
- Gray码
- Android---文字中插入表情
- phpBB3风格的模板文件列表
- 互联网还留给我们这些出路
- 注意CSS代码中的!important属性
- AjaxPanel