geelaw 最近的时间轴更新
geelaw's repos on GitHub
PowerShell · 94 人关注
PowerShellThingies
My PowerShell thingies.
TeX · 87 人关注
ahbtr
An “open-thoughts” research — Ad Hoc Broadcast, Trace, and Revoke.
JavaScript · 24 人关注
bio-site
Yet another academic homepage builder.
C# · 17 人关注
PreviewHost
An example `IPreviewHandlerFrame` implementation using WPF.
JavaScript · 14 人关注
SinaWeiboFansRemover
Sina Weibo 粉丝删除器,一个 Microsoft Edge 扩展。
Smalltalk · 11 人关注
Dock-PS
Archived in favour of PowerShellThingies.
TeX · 10 人关注
laomian
老面 (sourdough, lit. "old dough") is used as the starter for fermenting dough. This repository contains my digital 老面.
C# · 10 人关注
Use-RawPipeline
Archived in favour of PowerShellThingies.
PowerShell · 7 人关注
newsstand
A list of email addresses of newsletter / social update. One can build their own email categoriser with this list.
C# · 6 人关注
AcademicdataBaseChain
Academic dataBase Chain.
TypeScript · 6 人关注
bibtex-ts
General-purpose format-preserving BibTeX parser in TypeScript (JavaScript).
PowerShell · 5 人关注
psguy.me
Archived in favour of PowerShellThingies.
3 人关注
daily-restore-point
Creating a restore point every day is a good habit.
JavaScript · 3 人关注
strcmp.cc
An online line-based file comparator.
C# · 2 人关注
bibtex.net
BibTeX.NET is a .NET library for working with BibTeX files.
C++ · 2 人关注
onenote-object-model
Unofficial documentation of the component object model API of OneNote.
JavaScript · 2 人关注
RemoteShutdown
Remotely shut Windows down in case your Welcome Screen crashes.
Shell · 1 人关注
haoel-github-io
Mirror of haoel/haoel.github.io.
HTML · 1 人关注
ReproduceLiveTileIssue
PowerShell · 0 人关注
1drv-layout
OneDrive layout and file mover. Built for sorting photos. Born in the removal of On-Demand Sync for OneDrive.
SMT · 0 人关注
cse507-boolector
Forked from https://github.com/Boolector/boolector
0 人关注
fork-heshijun_v_360
见 saved 分支
Python · 0 人关注
i7h
【i18nglish】自动i18n!
TypeScript · 0 人关注
immersive-translate-backup
Backup of https://github.com/immersive-translate/immersive-translate.
C++ · 0 人关注
mem-layouts-binary-search
Forked from https://github.com/rlunding/alg_eng
Assembly · 0 人关注
microsoft-MD-DOS
Mirror of https://github.com/microsoft/MS-DOS
0 人关注
mirror-clash-verge
A Clash GUI based on tauri. Supports Windows, macOS and Linux.
JavaScript · 0 人关注
page-archivist.js
固定化保存互联网上的文章的小工具
0 人关注
PowerShell-HelpFile-Bug
For reporting a bug in PowerShell updatable help files produced on 2025-09-08.
0 人关注
ShiArthur03
C++ · 0 人关注
vecole-redux
Constructs OLE from vector-OLE. See http://eprint.iacr.org/2017/617/20170627:191617
geelaw

geelaw

🏢  UW / 博士生
V2EX 第 202505 号会员,加入于 2016-11-22 23:09:06 +08:00
今日活跃度排名 11270
求指导 .cn 域名的使用方法
站长  •  geelaw  •  255 天前  •  最后回复来自 fenglangjuxu
10
在 V2EX 摸鱼引出的密码学研究,论文终于出版了,感谢一下 @sillydaddy
  •  33   
    分享创造  •  geelaw  •  2024-07-19 16:55:56 PM  •  最后回复来自 good1uck
    90
    Clubhouse 真的很像不久以前我测试过的一个 app
    分享发现  •  geelaw  •  2021-06-25 16:12:06 PM  •  最后回复来自 nullcoder
    9
    C# 泛型、duck typing、高效枚举
    C#  •  geelaw  •  2020-09-28 04:59:01 AM  •  最后回复来自 good1uck
    1
    HTML 里的“词边界”
    分享发现  •  geelaw  •  2020-02-25 05:22:00 AM  •  最后回复来自 geelaw
    3
    如何自动化“固定到任务栏”
    分享创造  •  geelaw  •  2020-02-14 19:00:25 PM  •  最后回复来自 ysc3839
    4
    geelaw 最近回复了
    7 天前
    回复了 dream2716098767 创建的主题 问与答 Win11 下 Telegram Desktop 无法启动
    我的建议是检查网络问题,是不是有超长延时所以 Telegram 其实在等超时?如果你把网络禁用,Telegram 是否可以瞬间打开并告诉你没有网络?

    更高层的建议是用原版的 Windows 而非“精简版”。

    24H2 和 LTSC 的关系是,有很多 LTSC ,每个 LTSC 可以对应不同的常规版本,目前 Windows 11 只有两个 LTSC ( IoT Ent 和 Ent ),都是基于 24H2 的。
    7 天前
    回复了 cpalead 创建的主题 分享发现 电脑上的微信是不是监控你的操作?
    @TimG #9 我的评论单纯是技术可行性,安装虚拟机当然是合适的。除非你用一些技巧,否则百度云管家安装的时候就获得过管理员权限,因此创造透明窗口并记录并接棒所有输入是技术可行的;当然,存在着安装百度云管家但从不授予管理员权限的情况,因此理性作者不会把百度云管家弄成通过透明窗口记录所有事件的样子。

    > 没有使用管理员模式,是否可能通过其他手段做到类似的功能,或者直接挑明说,这里认为是使用漏洞的操作都是无法判断的

    这种漏洞价值太高,在普通用户的程序中利用是非理性决策。未经管理员权限越过 UIPI 是 Windows bug ,目前不知道这种 bug 的存在,所以答案是“不能”。

    另外“以上没有表示百度云网盘是恶意软件”是免责我前面描述的用管理员权限的可能场景(而且我个人认为百度云管家并不会让 Windows 不是 Windows ,即“搞这么复杂的事情”),不是你说的“会出来一个全屏广告”。

    另外软件打开一个全屏窗口是再稀松平常不过的一件事了,比如很多游戏都是。如果你想说“用户没有点击任何按钮就打开了全屏窗口”,那么答案是桌面 app 的模型里用户是否触发操作和程序能做的事情无关,系统不会监视或知道这件事。
    8 天前
    回复了 cpalead 创建的主题 分享发现 电脑上的微信是不是监控你的操作?
    Hmmm 首先我自己运行微信,静息状态下并没有疯狂使用网络。所以我觉得大概是楼主的微信在同步数据(包括下载聊天记录、自动下载附件、自动下载表情包、更新朋友圈,等等)。

    @TimG #3 如果你安装恶意软件的时候授予了管理员权限,那么之后操作系就就已经不是原来的操作系统了,此时任何安全性都无意义,因为理论上来说恶意软件可以完全劫持操作系统的 API 并返回伪造数据。

    以上没有表示百度云网盘是恶意软件。此外,我觉得百度云网盘应该不会搞这么复杂的事情。

    如果你安装、使用时没有授予管理员权限,那么在 Windows 上可以确定两件事:

    1. 任何提权进程都受到 UIPI 的保护,因此低权限进程的透明窗口无法把输入传递到高权限窗口,而且高权限窗口会具有失焦样式。
    2. 按 Ctrl+Alt+Delete 后,可以确保交互的操作由 Windows 直接处理。

    我认为百度云网盘应该受到 1 的限制,所以做透明窗口记录所有事情应该不可行。
    @chairuosen #2 每个 tab 里都有自己的 isRefreshing 。

    @crazzy #3 在 if (!isRefreshing) 和 isRefreshing = true 之间不可能有任何 JavaScript 代码执行。

    @IWSR #4 这个好像是楼主代码的意思。

    @supuwoerc #9

    楼主可以多考虑一下读者,尝试简化代码,使之不需要借助外部语境就很容易理解,比如我们不知道 user.useLoginStore.getState() 的状态是否是 session/local 级别的,还是 tab 级别的。如果 user.useLoginStore.getState() 是 session/local 的状态,那么不同的 tab 有自己的 isRefreshing ,当然两个 tab 可以同时看到过期的 token 并分别决定刷新。

    @irisdev #8 放在 local/session 都不好,因为用户可以在 tab 1 刷新的时候关闭之,但 tab 1 通过共享的 isRefreshing 锁定了刷新的权力,这会导致 local/session 清空之前不再有任何 tab 会进入刷新的逻辑。
    不存在针对 isRefreshing 的竞态条件,原因很简单:JavaScript 没有多线程,而只有 JavaScript 代码会读写 isRefreshing 。

    和 worker 也没有任何关系,因为 worker thread 之间不共享对象,要共享数据必须 postMessage 。
    14 天前
    回复了 zficode 创建的主题 Windows 2025 年, Windows 的开发体验已经赶上 Mac 了
    @w568w #3

    1. Windows 从上古时期就支持 / \ 了,可以两者混用,命令解析方面只要不混淆即可,解析歧义这点和 Unix 差不多(对比:~, -a, * 的含义)。
    2. 需要 & 'path to' 的情况是路径里面有空格(不加 ' 会导致和 path 加参数 to.exe 混淆,加 ' 不加 & 导致和表达式语句混淆),和是否是绝对路径没有关系。
    https://www.reddit.com/r/MacOSBeta/comments/1lq8cfu/in_menu_bar_allow_on_menu_bar_i_have_lots_of/

    传统搜索引擎的答案 ^ 关键字 macos delete app from allow in menu bar
    @Sokranotes #28 首先,你可能没有明确表述问题是什么。

    原帖的内容可以推断,你用的是安装了各种应用软件的 Windows 11 并且每次重启都会被提示文件关联重置,你的问题大概是“这种情况(安装了一堆解题者不知道的软件)下如何让关联不再被重置”。

    这个问题的答案我已经在 #9 说过了,或许不明显,那么我可以说得更明白一些:有一个软件尝试修改你的文件关联,因此 Windows 会重置之,解决方法是删除这个捣乱的软件。

    #26 提到的

    >我为了这个问题重装了一次系统,把所有软件重新装了一次,实实在在的做了很多尝试,而不是像你一样空谈“正确方法”。

    我不确定你的操作方式,但我可以告诉你的是,安装 en-us_windows_11_consumer_editions_version_24h2_updated_aug_2025_x64_dvd_9236d79b.iso (这个文件的 SHA-256 是 12ee1e95dd2173af0fc9b90449e4cc34287289669ed90a1c4c99c015739636ee )里面的 Windows 11 之后安装 google dot com slash chrome 下载的 Chrome (假设这些操作是 2025 年 8 月完成的),那么用自然的方式设置文件关联后不会被重设。(排除电脑被宇宙射线巧妙轰击的情况。)

    所以问题根源依然是你(重新)安装的其他软件之一。

    没有更多信息之前,我认为问题没有发生变化,即“在安装了一些未知的软件之后反复被重设文件关联,要怎么防止被重设”。而且因为从干净的系统安装 Chrome 并不会导致你说的问题,所以我建议的方法依然是更优的。

    ————

    如果你同意问题如上,而不是“在我不给大家透露更多有效信息以细化问题后,如何解决细化的问题”,那么你发现用 SetUserFTA 后在你的环境下不再产生该问题,并不能推出你的方法“解决了问题”,因为可以构造如下场景,使得你的问题依然存在:

    设置一个程序自启动,并且在随机的延时后篡改文件关联。

    此时,如果 SetUserFTA 先完成设置,那么你的问题依然会出现,并且问题是否发生是取决于时延的、随机的。如果你使用 SetUserFTA 后一直没有观测到问题,且取消后又能观测到问题,那么比较合理的推断是:你的 SetUserFTA 程序恰好在文件关联被篡改后、Explorer 检查文件关联完整性之前完成,这样文件关联会是你用 SetUserFTA 设置的版本,并且 Explorer 查看的时候不会发现它曾经损坏过,因此不会重设。我觉得“SetUserFTA 能恰好在这两个时间节点之间完成工作”,并不是很好的假设,因为 Windows 自启动程序的速度、顺序(会影响 SetUserFTA 生效的时间)并不是一成不变的。

    ————

    如果你不同意问题如上,而是认为问题就是你特定装机之后如何避免,那么你可以声称你解决了问题,但是其他人无法验证。

    此外,知道哪个程序篡改关联很重要,是因为:

    1. 文件关联的 hash 校验是 Windows 8 之后才引入的
    2. 任何按照 Windows 7 及之前的方式注册、修改文件关联(包括修改默认关联)的程序,都不会导致这一行为

    由此推断,任何导致文件关联被篡改从而重设的程序,必然是刻意绕过 Windows 8 之后设计的“只有用户主动修改才算数”的机制,属于恶意修改。

    ————

    >你读博做研究也会这样吗,问题都没有搞清楚的情况下,就发表自己的看法。

    你为什么会觉得研究和 Windows 用法是类似的问题?简单的答案是:Windows 文件关联的机制是有官方文档的,因此所有这类问题的答案都是既定的,我的观点是只要问题本身可以在文档的范围内解决,都应该按照文档记载的方式来;我做研究是自己定义问题或者解决已经定义好但是不知道怎么解的问题,不存在你说的“搞不清楚”的情况。

    ————

    当然,没有必要非要用最好的方法,凑合凑合也挺好的。
    @Sokranotes #26 Good 和 better 的区别,睡觉喜欢踢被子并不能用强行把腿绑在床上,并且绳子快断的时候重新绑上(每次登录都重设文件关联)解决。

    >你觉得一个会尝试注册表修改的人会不知道尝试默认修改吗?

    很多人会不知不觉把简单问题复杂化。

    >实实在在的做了很多尝试,而不是像你一样空谈“正确方法”。

    努力和效果没有必然联系,看起来 #9 的信息比尝试更有效。
    @Sokranotes #24, appendix 3

    感到十分困惑,为什么不能简单地用 Settings | Apps | Default apps 选择需要的关联,而要每次重启都重设一次?有人修改过你的注册表的权限导致正常方式设置不能正确存储?如果是后一种情况,推荐的做法是删除 HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts 和 HKCU\Software\Microsoft\Windows\CurrentVersion\ApplicationAssociationToasts 里面所有的内容(但这两个键本身不删除),然后登出再登入,这样 Windows 会认为一切文件关联都是新鲜的,且会建立正确的权限(除非 FileExts 和 ApplicationAssociationToasts 两个键本身已经损坏)。

    使用 SetUserFTA 本质上是一种 hack ,任何 Windows 的更新都可能导致 SetUserFTA 使用的 hash 函数和 Windows 的不同,于是一大坨文件关联会被重设。即使要用自动化的方式设置,受支持的方法也是使用组策略。

    对社区有益的做法是:回到使用 SetUserFTA 之前的状态,根据 https://techcommunity.microsoft.com/blog/askperf/how-to-configure-file-associations-for-it-pros/1313151 的指导,用 Windows 事件查看器里的 Microsoft-Windows-Shell-Core/AppDefaults 查看文件关联重设的原因,并使用 procmon64.exe 查看哪个程序在篡改文件关联,然后在此贴警告大家不要用那个软件。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   993 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 22:05 · PVG 06:05 · LAX 15:05 · JFK 18:05
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.