delphi 获取webbrowser的cookies给Idhttp用
网上方法一:(可获取,但不完全)
引用mshtml;
IHTMLDocument(wb1.Document).cooke;
网上方法二:(获取不到!)
引用winnet,使用InternetGetCookieEx
function GetCookie(url: string): string;
const
INTERNET_COOKIE_HTTPONLY = $00002000;
INTERNET_COOKIE_THIRD_PARTY = $00000010;
INTERNET_FLAG_RESTRICTED_ZONE= $00020000;
var
hModule:THandle;
InternetGetCookieEx:function(lpszUrl, lpszCookieName,lpszCookieData: PChar; var lpdwSize: DWORD;dwFlags:DWORD;lpReserved: Pointer): BOOL;StdCall;
CookieSize:DWORD;
cookiedata:PWideChar;
thebool:bool;
begin
result := '';
hModule:=GetModuleHandle('wininet.dll');
if hModule<>0 then
begin
@InternetGetCookieEx:=GetProcAddress(hModule,'InternetGetCookieExW');
if @InternetGetCookieEx<>nil then
begin
CookieSize:=10240;
Cookiedata := AllocMem(CookieSize);
thebool:=InternetGetCookieEx(PWideChar(url),nil,CookieData,CookieSize,INTERNET_COOKIE_HTTPONLY,nil);
if thebool then result := CookieData;
FreeMem(Cookiedata);
end;
FreeLibrary(hModule);
end;
end;
方法三:
引用winnet,直接调用InternetGetCookie
function GetWBCookies(URL: string): string;
var
data : array[0..10240] of Byte;
datalen : cardinal;
begin
Result := '';
datalen := sizeof(data);
if InternetGetCookie(PChar(URL), nil, @data,datalen) then
Result := PChar(@data);
end;
delphi 获取webbrowser的cookies给Idhttp用的更多相关文章
- delphi中webbrowser的用法
WebBrowser1.GoHome; //到浏览器默认主页 WebBrowser1.Refresh; //刷新 WebBrowser1.GoBack; //后退 WebBrowser1.GoForw ...
- delphi的webBrowser操作HTML研究
测试例子: 外网电脑D:\TEST\delphiTest\webbrowsetest 参考文档: delphi 操作WebBrowser 元素值 http://hi.baidu.com/kinglik ...
- Delphi 获取进程路径及命令行参数
Delphi 获取进程路径及命令行参数, 但有的进程获取时会报错,不知为啥 type PVOID64 = UINT64; _UNICODE_STRING = packed record Length ...
- delphi 获取硬盘序列号、cpu号、bios号、网卡号
delphi 获取硬盘 序列号 function GetIdeNum: String; type TSrbIoControl = packed record HeaderLength : ULONG; ...
- selenium获取百度账户cookies
[效果图] 效果图最后即为获取到的cookies,百度账户的cookies首次获取,需要手动登录,之后就可以注入cookies,实现免密登录. [代码] public class baiduCooki ...
- Delphi 获取当前鼠标下的控件内容
Delphi 获取当前鼠标下的控件内容 主要函数: GetCursorPos://获取鼠标的位置 WindowFromPoint://获取制定point下的handle GetClassName:// ...
- python接口自动化测试七:获取登录的Cookies,并关联到下一个请求
获取登录的cookies:loginCookies = r.cookies 把获取到的cookies传入请求:cookies=loginCookies 此方法需每一次都调用登录方法,并且每一次发送请求 ...
- Delphi获取本机的MAC地址
Delphi获取本机的MAC地址: uses NB30; function GetAdaPterInfo(lana: Char): string; var Adapter: TAdapterS ...
- Delphi获取其他exe程序版本号
delphi获取Exe文件版本信息的函数 Type TFileVersionInfo = Record FixedInfo:TVSFixedFileInfo; {版本信息} CompanyName:S ...
随机推荐
- 13机器学习实战之PCA(2)
PCA——主成分分析 简介 PCA全称Principal Component Analysis,即主成分分析,是一种常用的数据降维方法.它可以通过线性变换将原始数据变换为一组各维度线性无关的表示,以此 ...
- DevExpress DateEdit控件选择精确到秒
先看看下面的效果图: 设置以下属性 dateEdit1.Properties.VistaDisplayMode = DevExpress.Utils.DefaultBoolean.True; date ...
- Ts基础
//typeof 用来判断变量类型 var s: string = 'egret'; var isString: boolean = typeof s === 'string'; console.lo ...
- Jmeter的NON-GUI模式
一般来讲,Jmeter执行压测,都是用Jmeter的命令模式,脚本调试好, 测试脚本能够大大缩减所需要的系统资源. 1.1命令介绍: jmeter -n -t <testplan filenam ...
- DNS压力测试
安装 queryperf cd /usr/local/src wget http://ftp.isc.org/isc/bind9/9.12.1/bind-9.12.1.tar.gz 编译querype ...
- 文件上传失败 -nginx报错 client intended to send too large body: 1331696 bytes
location / { root /data/fastdfs/data; include gzip.conf; ngx_fastdfs_module; client_max_body_size 10 ...
- angularjs 外部调用controller中的方法
angular.element(document.querySelector('[ng-controller=mainCtrl]')).scope().viewGo('tab.VIPPay_Succe ...
- ML平台_Angel参考
Angel 是腾讯开源基于参数服务器(Parameter Server)理念的机器学习框架(为支持超大维度机器学习模型运算而生).核心设计理念围绕模型,它将高维度的大模型切分到多个参数服务器节点,并通 ...
- Django的版本选择
自从1.0版本开始,Django按照以下形式命名版本编号: 按照A.B或A.B.C的形式命名版本编号.A.B是主版本号,包含新功能以及对原有功能的改进,每一个新版本都向前兼容,Django大概每8个月 ...
- List<T>Distinct 过滤
public class TestDuplicateDefine : IEqualityComparer<student> { public bool Equals(student x, ...