wininet.dll中包含很多win32下和网络有关的函数,包括internet,ftp等,下面演示一个IE下不过期的cookie。
比如csdn的登陆信息可以保存2个星期,你在登陆后把系统时间改为2周后,登陆信息就失效了,使用InternetSetCookie可以自己设置过期日期。
首先在IE中登陆,登陆时选择信息保存2周,然后运行如下代码,运行之后你可以把日期调整到2010年看效果:
using System;
using System.Text;
using System.Runtime.InteropServices;
namespace ConsoleApplication1
{
class Program
{
/// <summary>
/// 设置cookie
/// </summary>
[DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)]
public static extern bool InternetSetCookie(string lpszUrlName, string lbszCookieName, string lpszCookieData);
/// <summary>
/// 获取cookie
/// </summary>
[DllImport("wininet.dll", CharSet = CharSet.Auto, SetLastError = true)]
public static extern bool InternetGetCookie(
string url, string name, StringBuilder data, ref int dataSize);
static void Main(string[] args)
{
//获取旧的
StringBuilder cookie = new StringBuilder(new String(' ',2048));
int datasize = cookie.Length;
bool b= InternetGetCookie("http://community.csdn.net", null, cookie, ref datasize);
//删除旧的
foreach (string fileName in System.IO.Directory.GetFiles(System.Environment.GetFolderPath(Environment.SpecialFolder.Cookies)))
{
if (fileName.ToLower().IndexOf("csdn") > 0)
{
System.IO.File.Delete("csdn");
}
}
//生成新的
foreach (string c in cookie.ToString().Split(';'))
{
string[] item = c.Split('=');
string name = item[0];
string value = item[1] + ";expires=Sun,22-Feb-2099 00:00:00 GMT";
InternetSetCookie("http://community.csdn.net",name,value);
InternetSetCookie("http://forum.csdn.net", name, value);
InternetSetCookie("http://webim.csdn.net", name, value);
}
}
}
}
分享到:
相关推荐
Wininet.dll是Windows操作系统中的一个核心动态链接库(Dynamic Link Library),主要负责处理网络相关的功能,尤其是Internet应用程序的网络通信。这个库包含了多种API(应用程序编程接口),供开发者使用,以便...
【描述】: "这个脚本可能揭示了wininet.dll库中潜在的安全漏洞。wininet.dll是Windows操作系统中的一个关键组件,主要用于处理互联网相关的网络通信。通过分析这个脚本,我们可以深入理解wininet.dll的工作原理以及...
需要注意的是,由于这个函数依赖于`wininet.dll`库,因此在运行时必须确保该库已加载,否则可能引发运行时错误。此外,考虑到隐私和安全问题,直接访问用户的Cookie信息应谨慎处理,遵循相应的权限和最佳实践。
接下来,我们定义了一个 DLL 导入函数 InternetGetCookieExW,该函数来自 wininet.dll 库。该函数用于获取指定 URL 的 Cookie。 二、猎取 Cookie 类 现在,我们可以开始实现获取浏览器 Cookie 的类了。我们将创建...
进口函数 InternetGetCookieA, 整数型, "wininet.dll", "InternetGetCookieA", 文本型, 文本型, 整数型, 整数型 ``` 其中,第一个文本型参数是URL,第二个文本型参数是Cookie名,第三个整数型参数是缓冲区大小,第...
对于简单的Cookie获取,可以使用`InternetGetCookie`函数,它是Windows API的一部分,存在于`wininet.dll`库中。该函数的声明如下: ```vba Private Declare Function InternetGetCookie Lib "wininet.dll" Alias ...
对于更复杂的任务,如管理Cookie、处理重定向、自定义请求头等,可能需要使用更高级的HTTP库,如 Indy 或 WinINet。 总之,Delphi中的UrlMon组件为开发者提供了一个简洁、高效的解决方案来实现从网页链接下载文件并...
这里的关键是`InternetSetOption`函数,它是Windows API的一部分,位于`wininet.dll`库中。这个函数可以用来设置与网络连接相关的选项。为了抑制Cookie的持久化,我们需要使用`INTERNET_OPTION_SUPPRESS_BEHAVIOR`...
1. 首先,你需要在VB6项目中导入`Wininet`库,这可以通过在工程属性中添加`mswininet.dll`作为引用完成。 2. 然后,声明`InternetGetCookie`函数。其原型为: ```vb Declare Function InternetGetCookie Lib ...
首先,我们需要了解用于与IE进行交互的主要类库——`Microsoft Internet Controls`,它包含在`System.Windows.Forms`命名空间内,通常通过引用`Interop.SHDocVw.dll`来使用。这个库提供了`InternetExplorer`和`...
5、新增“文本_是否为双字节字符”与OPenGL支持库->文字轮廓 中的 是否为双字节字符功能相同。 6、新增“文本_是否为字母”,判断指定文本是否为字母。 7、新增“目录_取桌面目录”获取当前系统桌面目录。 MD5:...
因为原命令调用特定的dll,只对win7以上系统有效,并会附加一个特殊功能支持支持库 8.重写“音量_静音” 增加“音量_增加”“音量_减少”,对声卡操作,XP,WIN系列均有效 精易模块 V3.54 what’s new:(20131221...