Writing to the Internet Explorer Cache

Nginx架构及配置详解 概述 Nginx采用C进行编写,是俄罗斯程序员开发的一款轻量级的可构建Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器的软件, Nginx服务器是一个高性能的HTTP和反向代理web服务器,同时也可提供了IMAP/POP3/SMTP服务。nginx常用作跑静态和做负载反向代理,动态php交给apache处理,因后者比较稳定,jsp交给tomcat、resin或jboss。n...... 阅读详情

Sample Image

Introduction

This article shows how to read a file from Internet Explorer's cache, and write a file to the cache.

Reading from the cache

Retrieving the local cache file name of a URL is simple. You call GetUrlCacheEntryInfo with the URL, and it will return the local file name. The function will return TRUE if the URL is in the cache, and FALSE otherwise. Then, you simply read the page and display it, or do whatever you want with it. Alternatively, you could use the function RetrieveUrlCacheEntryFile or RetrieveUrlCacheEntryStream to return the file or stream directly to your application.

CString strURL;
//get the url to read
m_url.GetWindowText(strURL);
//set up the cache entry
DWORD dwBufferSize = 4096;
LPINTERNET_CACHE_ENTRY_INFO lpCacheEntry = 
  (LPINTERNET_CACHE_ENTRY_INFO) new char[dwBufferSize];
lpCacheEntry->dwStructSize = dwBufferSize;
//retrieve the cache entry
if (GetUrlCacheEntryInfo(strURL,lpCacheEntry,
    &dwBufferSize) == TRUE)
{
    //navigate to the local page
    m_browser.Navigate(lpCacheEntry->lpszLocalFileName, 
                       NULL,NULL,NULL,NULL);
}
//delete the entry structure
delete lpCacheEntry;

Writing files to the cache

Writing files to the cache is a little more complicated. It requires a couple function calls. One method is to use URLDownloadToCacheFile. I am behind a proxy, and so URLDownloadToFile will not work for me. The method I use is just as simple. You first call CreateUrlCacheEntry with the URL and file type and a holder for the cache file name. The function will return a cache file name of where the URL is to be copied. Next, you write the data to the returned cache file. I use a simple local test page as the source of the file to be written, and copy its contents to the cache file. Finally, you call CommitUrlCacheEntry to finalize the entry into the cache. When calling this method, you specify the URL, the cache file name returned in CreateUrlCacheEntry, the expired and modified time if known, and a simple header. Use this header if none is known: (LPBYTE)"HTTP/1.0 200 OK/r/n/r/n".

CString strURL;
m_url.GetWindowText(strURL);
char lpszFileName[MAX_PATH+1];
//create a cache entry for the url
if (CreateUrlCacheEntry(strURL,0,"htm", 
    lpszFileName,0) == TRUE)
{
    /* //This would save to a local file
    //I did not use this function because I am behind a proxy
    //and the webcontrol does not work from behind a proxy
    //or if it does I could not find out how to make it work
    URLDownloadToFile(0,strURL,lpszFileName,0,0);
    //Alternatively you could skip everything after this
    //and just use URLDownloadToCacheFile() */


    //But we copy the local file to the cache file
    char ch;

    //Open the file for reading.
    ifstream fp_read("testme.html", ios_base::in);
    //open the cache file for writing
    ofstream fp_write(lpszFileName, ios_base::out);

    while(fp_read.eof() != true)
    {
        fp_read.get(ch);
        //Check for CR (carriage return)
        if((int)ch == 0x0D)
            continue;
        if (!fp_read.eof())fp_write.put(ch);
    }
    fp_read.close();
    fp_write.close();
    //create a null expire and modified time
    FILETIME ftExpireTime;
    ftExpireTime.dwHighDateTime = 0;
    ftExpireTime.dwLowDateTime = 0;
    FILETIME ftModifiedTime;
    ftModifiedTime.dwHighDateTime = 0;
    ftModifiedTime.dwLowDateTime = 0;
    //commit the cache entry
    //the HTTP/1.0 200 OK/r/n/r/n should be 
    //used for the header or else IE will not read it
    if (CommitUrlCacheEntry(strURL,lpszFileName, 
                ftExpireTime,ftModifiedTime,
                NORMAL_CACHE_ENTRY,
                (LPBYTE)"HTTP/1.0 200 OK/r/n/r/n", 
                20, NULL, NULL) == TRUE)
    {
        //Navigate to the local file
        m_browser.Navigate(lpszFileName,NULL, 
                             NULL,NULL,NULL);
    }
}

That's all there is to it

前端犄角旮旯,非常规面试题总结(不断更新....) 27、判断类型的方式有哪些?1、typeof操作符:用来检测数据的类型,返回的是一个表示类型的字符串。2、instanceof操作符:用来检测对象是否为指定的构造函数的实例。3、方法:可以返回对象的准确类型。4、方法:用来判断一个变量是否为数组。(一)typeof和instanceof区别typeof返回的是一个字符串,表示变量的数据类型,可能的返回值有numberstringbooleanfunctionundefinedobject。instanceof返回的是一个布尔值,true或。 阅读详情

相关推荐

国央企创新负责人如何通过平台提升技术需求挖掘与资源配置的精准性?.docx

国央企创新负责人如何通过平台提升技术需求挖掘与资源配置的精准性?

网站出现Can not write to cache files解决方法

多人在迁移网站或安装网站后,会出现Can not write to cache files, please check directory ./data/ and ./data/sys的错误提示!很多人设置了777权限也不能解决,这里我来给大家说一下怎么解决这个问题! 工具/原料 linux准备SSH终端连接器 Windows准备远程桌面 linux

qq_14989227的博客 5826

两路半桥LLC谐振变换器软开关Simulink仿真(模拟谐振参数不同、分裂电容)

内容概要:本文介绍了“两路半桥LLC谐振变换器软开关Simulink仿真”资源包,重点在于基于Simulink平台对两路半桥LLC谐振变换器进行高精度建模与动态仿真,特别考虑了谐振参数不一致及分裂电容等非理想工况对系统性能的影响。该仿真模型不仅涵盖了主电路拓扑、软开关实现机制与谐振网络设计,还深入分析了不同参数配置下系统的启动特性、稳态效率、动态响应及软开关条件的满足情况。通过参数扫描与对比仿真,帮助用户掌握LLC变换器的关键设计要素与优化方法,具备较强的工程指导价值和科研教学意义。; 适合人群:电力电子、电气工程及其自动化等相关专业的高校师生,以及从事高频开关电源、新能源变换器、车载充电机等领域的研发工程师和技术人员。; 使用场景及目标:① 掌握两路并联半桥LLC谐振变换器的建模与仿真方法;② 理解软开关技术在提升变换器效率与降低EMI方面的关键作用;③ 分析谐振参数偏差与分裂电容结构对系统均流特性、增益曲线及软开关范围的影响;④ 支持科研项目中的拓扑验证、控制策略开发与故障工况分析; 阅读建议:建议结合Simulink仿真模型与配套说明文档进行学习,重点关注谐振腔参数设置、驱动时序设计及软开关波形观测;可通过调整谐振电感、电容值或引入参数失配,观察系统行为变化,深入理解LLC变换器的稳定边界与优化设计原则。

pycharm修改远程服务器文件后,上传报错无法传输文件 ‘D:\xxx‘: could not write to xxxx

原因是文件权限问题。 A用户在服务器创建文件,然后让B用户进入改文件操作代码,这个时候会遇到权限问题 解决办法:cd 到需要修改权限的目录下 运行 sudo chmod 777 hhs -R(hhs为需要修改权限的文件夹名称),需要拥有root权限的用户操作 解决完文件权限之后,在pycharm端打开远程服务器的文件,修改之后,要先upload 然后再运行,运行编译器选择远程服务器的编译器。 初次运行不成功,要编辑配置文件 把画红框位置前面的一长串字符删掉(运行远程服务器py文件会自动生成一长串文件

jaffe的博客 5040

双向全桥CLLC谐振变换器仿真模型(Simulink仿真实现)

内容概要:本文系统介绍了双向全桥CLLC谐振变换器的Simulink仿真模型,重点阐述了变频控制、闭环仿真及其与多种电力电子拓扑(如维也纳整流器、DAB变换器、图腾柱PFC等)的联合仿真设计。资源包涵盖2.5kW双向全桥LLC、V2G电动汽车充放电系统、三相PFC、多相交错LLC等多种变换器的仿真案例,并深入展示了三电平VIENNA整流器在双闭环PI控制与SVPWM调制策略下,结合上下电容电压差值补偿实现中点电位平衡的先进控制方法。通过仿真验证,该策略不仅有效维持了800V直流母线电压的稳定,还在动态工况下显著提升了电容电压的均衡度,同时保持了较低的输入电流THD,充分体现了SVPWM与中点平衡控制协同优化的技术优势。; 适合人群:具备电力电子与自动控制理论基础,从事新能源发电、电动汽车、工业电源、微电网等领域的研究生、工程师及科研人员。; 使用场景及目标:① 学习并构建高频谐振变换器(如LLC、CLLC)的Simulink仿真模型,掌握其变频与混合控制策略;② 深入理解并应用中点电位平衡、双闭环PI控制、SVPWM调制等核心技术于VIENNA等三电平变换器中;③ 复现高水平期刊论文中的控制算法,服务于科研项目申报、学术论文撰写或工程产品开发。; 阅读建议:该资源为综合性仿真资料库,建议使用者结合自身研究方向(如电动汽车充电、新能源并网)选择对应案例进行精学,重点关注控制策略的设计逻辑、仿真参数的整定方法以及SVPWM与中点平衡的协同机制,并充分利用附带的计算书和参考文献深化理解,以实现从仿真模型到实际工程应用的顺利转化。

全桥LLC谐振(变频+移相混合控制)变换器闭环仿真模型(Simulink仿真实现)

全桥LLC谐振(变频+移相混合控制)变换器闭环仿真模型(Simulink仿真实现)

mongo error when saving document 1 not primary while writing to

文章目录场景解决 场景 mongo 手动修改数据报错 error when saving document 1 not primary while writing to 解决 选错了库,当前选定的是从库

cominglately的博客 4350

Ubuntu20.04安全重启后WiFi图标消失?MT7922网卡驱动修复全攻略

本文详细解析了Ubuntu20.04安全重启后WiFi图标消失的问题,特别是针对MT7922网卡驱动失效的情况。通过诊断命令和分步解决方案,包括禁用PCIe ASPM、更新无线固件和升级HWE内核,帮助用户快速恢复网络连接。文章还提供了进阶排查技巧和系统优化建议,确保WiFi稳定运行。

weixin_29202687的博客 370

解决:Could not write to output file 'c:\windows\Microsoft.NET\Framework\........dll' -- '拒绝访问。 '

解决办法: 是给Windows目录下的临时文件夹Temp的安全选项卡中加入IIS_IUSERS;NetWork Service用户并赋予全权 依次添加权限: 1. C:\Windows\Temp 2. C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files 3. Restart IIS a

云淡风轻,笑看人生 7439

Cadence 17.4 PSpice仿真555定时器输出方波

这里利用555定时器组成多谐振荡器产生1Hz的方波并用PSpice仿真其输出的方波波形。555定时器是一种广泛应用的中规模集成电路。根据其内部组成的不同,可分为双极型(555B)和CMOS型(555C)两类。两种类型的定时器各有所长。双极型定时器具有较大的驱动能力,其输出电流可达200mA,可直接驱动发光二级管、扬声器、继电器等负载。而CMOS型定时器的输入阻抗高、功耗低。

tj_nonstoper的博客 1万+

阿里巴巴-AI Agent工程师面试题精选:10道高频考题+答案解析(附PDF)

阿里巴巴AIAgent技术面试要点摘要(149字) 阿里巴巴在AIAgent领域布局完整,面试重点考察系统架构、幻觉治理、成本优化等核心能力。候选人需掌握分层架构设计、多Agent协作死锁处理、Token成本优化策略等关键技术。面试强调工程落地能力,包括工具调用容错、记忆系统设计、安全防护等实践要点。评估体系需覆盖效果、效率、成本多维度指标。未来趋势关注垂直领域专业化、多模态融合等方向。建议准备实际项目案例,突出技术深度与业务价值的结合,展现系统思维和工程能力。

ZHHHHH15的博客 620

endnote 同步失败问题 could not connect to the online server

endnote 同步失败问题 could not connect to the online server 一、问题发现 ennote使用过一段时间,突然显示无法同步,显示last sync在几天前,报错是暂时无法连接网络服务。 > sync status:“could not connect to the online server due to temporary internet error or server error”(大概是这么个报错提示)*** 二、解决方案查找 知乎有个endnote

yolandayi2018的博客 2万+

新手必看:电路设计里的‘地’到底怎么接?单点、多点、混合接地保姆级图解

本文深入解析电路设计中的接地技术,涵盖单点、多点和混合接地的原理与应用。通过详细的图解和实战案例,帮助新手理解接地在提供参考电位、构成电流回路及抑制电磁干扰中的关键作用,避免常见设计误区,提升电路稳定性与抗干扰能力。

weixin_28455801的博客 301

CS0016: 未能写入输出文件“c:/WINDOWS/xxxxxsktsuj.dll”--“拒绝访问。”的处理

 CS0016: 未能写入输出文件“c:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET Files/pdms/4bd00155/27c1f67/70sktsuj.dll”--“拒绝访问。 ”错误的处理: 出现CS0016的原因一般是临时目录的权限不够,至于为什么中途出现这种问题,我尚不清楚,解决的办法是给Windows目

yali4313的专栏 1473

【学习笔记-QGIS】 QGIS从零快速上手

安装文章参考:https://zhuanlan.zhihu.com/p/370633306。

Xcong_Zhu的博客 1万+

python画弗里德曼(Friedman) 检验和秩和检验(Nemenyi)检验图

python画弗里德曼(Friedman) 检验和秩和检验(Nemenyi)检验图 画好后效果图 实现代码如下 import matplotlib.pyplot as plt #算法平均排名 _alg_=[1.405,2.643,2.786,2.167] y=[1,2,3,4]#alg1,alg2,alg3,alg4 通过Nemenyi测试计算得到的临界值CD CD=1.024 h_CD=CD/2 plt.figure(figsize=(10,6)) plt.scatter(_alg_,y,s=10

大模型天花板 4465

MongoDB 的坑 & 如何避免采坑

From:http://blog.rainforestqa.com/2012-11-05-mongodb-gotchas-and-how-to-avoid-them/ 翻译版看:http://www.youkuaiyun.com/article/2012-11-15/2811920-mongodb-quan-gong-lue A lot of people hate on MongoDB. In

longxibendi的专栏 2万+

Autosar MCAL-S32K324 Fls配置-基于EB

Autosar MCAL Flash配置,基于S32K324,EB软件

赞的博客 1516

laravel 的安装过程

克隆项目  git clone https://github.com/laravel/laravel.git 进入项目更改源  composer config repo.packagist composer https://packagist.phpcomposer.com composer install

cominglately的博客 353

android 14.0 控制wifi启用禁用功能实现

在14.0的产品rom定制化开发中,在产品开发中,对于功能的开发的功能也是挺多的,而在对于wifi的功能定制需求,有要求需要通过系统属性来控制wifi开关是否可以打开 来控制是否可以连接wifi,打开控制wifi的功能,接下来分析wifi的开启流程来实现该功能的实现

安卓兼职framework和app工程师的博客 1771

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

could not write to the device

仅仅就是 手机内存不够,所以………你懂的。

bellazhouyi的专栏 3333

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

【IE Cache】IE浏览器造成的请求Cache问题 的解决方案

对于普通的静态文件,html、css、js和图片文件而言,是希望浏览器进行缓存,以便再次访问时直接从浏览器获取,减少请求。 对于其它的js请求而言,如果被浏览器缓存了,而不能实时获取到最新的数据是让人抓狂的事情。 IE浏览器(使用IE核的360浏览器、搜狗浏览器等在IE模式下)就有这样一个设定:对于响应头(Response Header)中,没有明确表明是否缓存(强制缓...

weixin_30443813的博客 539

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

mongo集群迁移删除孤立文档

在正常情况下,系统中不会有孤立文档。不过,块迁移过程中的一些失败情况可能会留下孤立文档,孤立文档不属于分片范围。 使用cleanupOrphaned命令从分片中删除孤立文档 语法: db.runCommand( {    cleanupOrphaned: ".",    startingFromKey: ,    secondaryThrottle: ,    writeConcer

发歌的数据架构 3811
上一篇: Entering the kernel without a driver and getting interrupt information from APIC
下一篇: Starting a process from KernelMode
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值