如何使用 C# 读取 Microsoft Edge 历史记录

2023-12-05

我想访问 Microsoft Edge 的历史记录,我该怎么办? 根据我的研究,我们可以通过删除 %LOCALAPPDATA%\Packages\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\AC 文件夹中以 # 开头的文件夹以编程方式删除 Edge 的历史记录,但就我而言,我想读取它们。

当我打开一个以#开头的文件夹,即#!001时,那里有很多子文件夹,我不知道应该在哪里查看数据。在我的调查中,当我访问网站时,似乎会在临时文件夹中创建一个 URLXXX.tmp 并且该文件已加密。这是我应该查看的文件吗?另外,还有一些*.dat文件,有相关的吗?


是的,历史记录存储在 WebCacheV01.dat 文件中。它是一个 ESE 数据库(以前称为 Jet Blue)。微软提供了API来访问这个数据库。查找 JetOpenDatabase、JetAttachDatabase api。但是,此文件始终由名为 CacheTask 的任务使用(请参阅任务计划程序中的 Microsoft\Windows\WinInet 文件夹)。在访问此数据库之前,您需要停止此任务。然后立即再次开始此任务。因为另一个 COM 代理会在几秒钟后启动 DllHost.exe (3EB3C877-1F16-487C-9050-104DBCD66683),这将阻止您访问 WebCacheV01.dat。所以你需要在上面的COM Surrogate启动之前完成阅读。 COM 代理仅在 CacheTask 未运行时启动。因此,如果立即重新启动CacheTask,则COM Surrogate将不会启动。

UPDATE:请注意,由于 Microsoft 已将旧版 Microsoft Edge 替换为基于 Chromium 的 Microsoft Edge,因此历史记录/书签文件格式与 Google Chrome 相同。它是一个 sqlite 数据库。使用 sqlite API 从该数据库访问数据相当容易。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 C# 读取 Microsoft Edge 历史记录 的相关文章

  • 将运算符 << 添加到 std::vector

    我想添加operator lt lt to std vector
  • Qt - QProcess 不工作

    我尝试启动 Internet Explorer 所以我使用下面的代码 QProcess process new QProcess this QString temp C Program Files Internet Explorer iex
  • 更新面板工作速度非常慢

    我正在编写一个用户可以注册的应用程序 注册时 可以选择多个选项 并根据这些注册字段可见或不可见以及是否必需 我想出了一个想法 所有字段都将位于 updatePanel 中 当用户更改注册选项时 我将在服务器端设置这些字段的可见性 它可以工作
  • 使用 CMake 时如何导出 Emscripten 中的 C 函数

    In 本教程 https emscripten org docs porting connecting cpp and javascript Interacting with code html interacting with code
  • Grpc - 将消息从一个客户端发送到连接到同一服务器的另一个客户端

    是否可以将消息从一个客户端发送到连接到同一服务器的另一个客户端 我想将数据从一个客户端发送到服务器然后发送到特定客户端 我想我需要获取客户端 ID 但我不知道如何获取此 ID 以及如何从服务器将此消息发送到该客户端 我这里有一个样本 这是一
  • 将类对象放置在向量中?

    我注意到我可以将一个类放置在一个向量中 这是我的程序 我收到以下错误 out blackjack exe blackjack obj blackjack obj error LNK2019 unresolved external symbo
  • 如何在类文件中使用 Url.Action() ?

    如何在 MVC 项目的类文件中使用 Url Action Like namespace 3harf public class myFunction public static void CheckUserAdminPanelPermissi
  • 前向声明类型和“已声明为类类型的非类类型”

    我对以下代码有问题 template
  • 如何将 SOLID 原则应用到现有项目中

    我对这个问题的主观性表示歉意 但我有点卡住了 我希望之前处理过这个问题的人能够提供一些指导和建议 我有 现在已经成为 一个用 C 2 0 编写的非常大的 RESTful API 项目 并且我的一些类已经变得巨大 我的主要 API 类就是一个
  • extern 声明和函数定义都在同一文件中

    我只是浏览了一下gcc源文件 在gcc c 我发现了类似的东西 extern int main int char int main int argc char argv 现在我的疑问是extern是告诉编译器特定的函数不在这个文件中 但可以
  • 如何将 .txt 文件中的数据转换为 xml? C#

    我在一个文本文件中有数千行数据 我想通过将其转换为更容易搜索的内容来轻松搜索 我希望 XML 或其他类型的大型数据结构 尽管我不确定它是否是最好的对于我的想法 每行的数据如下所示 第 31 册 托马斯 乔治 32 34 154 每本书都不是
  • 是否使用 C# 数据集? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我对 C 中的数据集概念有点困惑 编码 ASP NET 站点 但这并不重要 在我的阅读中 我了解到它们 本质上 用作我的应用程序和我的
  • 已发布的 .Net Core 应用程序警告安装 .Net Core,但它已安装

    我制作了一个 WPF 和控制台应用程序 供某人在我无法访问的私人服务器上使用 我使用 Visual Studio 2019 的内置 发布向导 来创建依赖于框架的单文件应用程序 当该人打开 WPF 应用程序时 他们会看到标准警告 他们单击 是
  • C++ - 多维数组

    处理多维数组时 是否可以为数组分配两种不同的变量类型 例如你有数组int example i j 有可能吗i and j是两种完全不同的变量类型 例如 int 和 string 听起来您正在寻找 std vector
  • 将 Lambda 表达式树与 IEnumerable 结合使用

    我一直在尝试了解有关使用 Lamba 表达式树的更多信息 因此我创建了一个简单的示例 这是代码 如果作为 C 程序粘贴到 LINQPad 中 它可以工作 void Main IEnumerable
  • 代码中的.net Access Forms身份验证“超时”值

    我正在向我的应用程序添加注销过期警报 并希望从我的代码访问我的 web config 表单身份验证 超时 值 我有什么办法可以做到这一点吗 我认为您可以从 FormsAuthentication 静态类方法中读取它 这比直接读取 web c
  • C++:二叉树所有节点值的总和

    我正在准备面试 我被一个二叉树问题困住了 我们如何计算二叉树所有节点中存在的值的总和 优雅的递归解决方案 伪代码 def sum node if node NULL return 0 return node gt value sum nod
  • 是否允许全局静态标识符以单个 _ 开头?

    换句话说 可能static 文件范围 全局变量恰好以一个下划线开头 而不会产生与 C 实现发生名称冲突的可能性 https www gnu org software libc manual html node Reserved Names
  • 我可以使用 lambda 函数或 std::function 对象来代替函数指针吗?

    我有一个需要使用的库 它定义了以下内容 typedef void CallbackFunction const int i 并且有一个注册回调的函数 如下所示 void registerCallback CallbackFunction p
  • 如何在 C 中将 char 连接到 char* ?

    我怎样才能前置char c to char myChar 我有c值为 A and myChar值为 LL 我怎样才能前置c to myChar使 ALL 这应该有效 include

随机推荐

  • informix jdbc 连接卡住

    我正在尝试使用标准方式使用 jdbc 连接到 Informix 数据库服务器 connection DriverManager getConnection jdbc informix sqli ip sid INFORMIXSERVER s
  • LARGE_INTEGER 和 DUMMYSTRUCTNAME

    当我遇到 LARGE INTEGER 的定义时 我发现一些问题 typedef union LARGE INTEGER struct DWORD LowPart LONG HighPart DUMMYSTRUCTNAME struct DW
  • 在VB.NET中编写洗牌方法

    我有一副标准的 52 张牌 以数组形式表示 每张卡都表示为一个整数 我编写了下面的函数来洗牌 下面的代码看起来没问题吗 Module Module3 Sub Main initialize array Dim Cards 52 As Int
  • 如何使 LINQ 执行 (SQL) LIKE 范围搜索

    我非常需要帮助 我已经尝试这样做有一段时间了 所以我有这个查询 Select name from BlaBlaBla order by case when name like 9 then 1 end case when name like
  • Elasticbeanstalk 在单个 Python 实例上配置 HTTPS:模板中不允许使用 null 值

    我已经在 EB 单实例 环境中部署了一个 Flask 应用程序 并且运行良好 现在我尝试使用自签名证书将其配置为 https 来测试它 因此 我添加了一个配置文件 如 EB 开发人员指南中所示的 ebextensions 其中我有 2 个以
  • 使用 LWUIT 列出带有复选框的列表

    我正在使用 LWUIT 来获取搜索工具以在List 现在我想知道如何显示列表CheckBoxes list new List vector cform addComponent list cform addComponent t cform
  • 如何在HandlerInterceptor中读取请求体?

    我有 Spring Boot 我需要在数据库中记录用户操作 所以我编写了 HandlerInterceptor Component public class LogInterceptor implements HandlerIntercep
  • WPF:调度程序处理挂起错误,没有有用的堆栈跟踪

    我有一个已经运行了 10 多年的 WPF 应用程序 最近 我们在某些计算机上的一些部署启动时开始出现以下异常 主应用程序窗口将加载 并且可以加载一些数据 但随后会出现许多错误 System InvalidOperationException
  • Android:GPS 从精细到粗略的回退

    问候 有谁知道当我没有修复时如何获得粗略的 GPS 坐标 以及当我有修复时如何获得精细的 GPS 坐标 我尝试在谷歌上搜索一些示例代码 但没有成功 我确实找到了这个 http www android10 org index php arti
  • Gmail 应用程序脚本 API 中是否会添加一个函数来获取分配给邮件的星标类型?

    Gmail 设置允许设置不同类型的星标several 黄星 红星 绿勾 Gmail中可以设置可以使用的星号类型数量设置菜单 谷歌应用脚 本 s Gmail 服务包括一个Gmail消息 已加星标它只返回一个布尔值 它不提供所设置的星星的类型
  • python 中的 int('123') - 它是'int'类的函数调用还是构造函数调用?

    我正在学习Python 对Python的数据类型有点困惑 我一遍又一遍地读这句话 Python 中一切都是对象 这包括整数 浮点数 字符串 集合 列表等 当我们这样写时 1 2 3 所以我们实际上创建了一个对象list类 或不类 所以 当我
  • Ubuntu 远程连接 Mysql - 绑定地址失败

    我正在尝试配置我的服务器以允许远程连接 据我了解 我需要取消注释bind address 127 0 0 1 in the my cnf file 然后重新启动mysql 那没有用 我也尝试过将其更改为bind address 0 0 0
  • WordPress 中单个自定义帖子类型的多个 URL

    我有一个房地产代理房地产网站 其自定义帖子类型为 property 因此当前的 URL 结构是 property the address here 现在 在每处房产上 您都可以选择该房产是出售还是出租 我现在想保留单个自定义帖子类型 但单个
  • C# 中的按键事件——移动 PictureBox

    我试图通过按键事件上下移动 PictureBox picUser 我是 C 新手 可以通过 VB 来完成此操作 因此 我对以下代码的问题所在感到困惑 private void picUser keyDown object sender Sy
  • forkjoin 没有返回结果

    我正在使用 forkJoin 合并两个 firebase 请求的结果 两个请求均完成并记录在控制台中 但 forkJoin 本身的映射函数不会触发 因此不会向应用程序返回任何结果 public initGroup groupname use
  • 如何将选择选项值和文本存储在 JSON 对象或数组中?

    我有一个选择列表 示例如下 我想将此选择列表 文本和值 存储在 JSON 对象或数组对象中 这样我以后就可以使用 each 函数来完成它 然后我想根据用户输入显示 隐藏选择选项列表中的记录 所有代码都已准备就绪并可以工作 只是我无法弄清楚如
  • Java 中表达式“new String(...)”的用途是什么?

    在查看在线代码示例时 我有时会遇到通过使用 new 运算符将 String 常量分配给 String 对象的情况 例如 String s s new String Hello World 当然 这与 s Hello World 我不熟悉这种
  • 不同线程中的 Hibernate 断言失败

    我通过一个会话连接到我的数据库 我的整个计划中总是有相同的课程 我的线程 1 从数据库捕获主要数据 必须允许用户取消该线程 因此 如果用户频繁或快速按下取消按钮 这是我的解释 则会发生以下错误 ERROR org hibernate Ass
  • 对 Fortran 多线程程序进行计时

    我有一个调用多线程例程的 Fortran 90 程序 我想从调用例程中计时该程序 如果我使用cpu time 我最终得到的是所有线程 在我的例子中是 8 个 的 cpu time 加在一起 而不是程序运行所需的实际时间 这etime 例行公
  • 如何使用 C# 读取 Microsoft Edge 历史记录

    我想访问 Microsoft Edge 的历史记录 我该怎么办 根据我的研究 我们可以通过删除 LOCALAPPDATA Packages Microsoft MicrosoftEdge 8wekyb3d8bbwe AC 文件夹中以 开头的