VSCode 在 Windows 上的哪里存储其最近使用的 (MRU) .NET 项目和解决方案列表?
还有一些开源代码可以获取 VSCode 的 MRU 吗?
我扫描了该目录中的所有文件(递归)
C:\Users\pat\AppData\Roaming\Code
但没有运气
对于你来说,它应该在
C:\Users\pat\AppData\Roaming\Code\User\globalStorage\state.vscdb
;这个文件是一个 SQLite 数据库,您可以寻找打开此类文件的工具(因为它不能以纯文本形式读取),以查看里面的内容并决定是否可以跨计算机同步它(如果您就是这样的话)之后)。
也参考这个答案,那里有非常有用的东西。
编辑:谢谢,这确实是我正在寻找的文件。
可以使用工具SQLitebrowser读取。
我不容易找到一个 .NET 库来读取
state.vscdb
文件 + 我们非常不愿意为了一个小功能而在我们的产品中嵌入整个库。
希望
state.vscdb
包含明文 JSON 格式的 MRU 文件列表。
所以我所做的就是以文本形式打开这个文件,然后找到 JSON 并读取它。显然它很丑陋,但 JSON 不应该很快在这样的文件中加密,如果有一天失败,这个功能对我们来说并不重要,只是为用户提供了一个方便的帮助。
关键是history.recentlyOpenedPathsList
要定位的 JSON 如下所示:
{"entries":[
{"fileUri":"file:///c%3A/Dir/treeItem.ts"},
{"fileUri":"file:///c%3A/Dir/YourSolution.sln"},
...