卸载 Dll 过程中隐藏的异常

最近测试时发现代码中一处关于 std::function 函数对象的问题。在卸载某个 Dll(记为 A)的时候会触发该模块中一个单例对象的析构,在它析构内部的 std::function 成员时产生了内存访问异常(0xc0000005)。而触发这个异常的 std::function 其实是复制于另一个 Dll(记为 B),卸载 Dll A 时,Dll B 已经卸载掉了。

此时调用它关联的函数会抛异常容易理解,但这时并没有进行调用操作。原因在于函数对象析构时会调用关联的 _Delete_this 方法释放资源,而这个函数一般定义在 std 的 _Func_impl / _Func_impl_no_alloc 模板类中。所以当实例化 function 时对应删除函数的代码也是属于当前模块里的(也就是 Dll B)。现在 Dll B 已经卸载,那么只要有任何触发相关代码执行的操作都会引发异常。


夏空的英仙座——转型之作

巨乳村是 minori 回血之路的第一作,剧本还残留着不少原风格的味道,可以拿来品味下(反正剧本也短,而且感觉也挺实用

这一作的主题围绕着痛苦、拯救来展开。简介就不贴了,就是主角兄妹身怀转移他人痛苦的异能,为了摆脱被各种人利用的生活兄妹俩就躲到了远方亲戚所在的巨乳村里。然后在这个夏天和女孩子们发生了这样的那样的事情。

要是时间充足这个题材也可以继续写更多东西出来,什么人性的善恶啊,温柔与坚强啊,正面的反面的都行。像妹妹线和透香线都可以继续展开,只不过剧本并没有像她们的奶子那样饱满。


Appverif 启动后闪退

最近发现 Appverif 打不开了,公司不少同事的电脑上也遇到这个问题。

涉事的 appverif 版本是: 10.0.18362.1
win 10 的版本是 20H2(19042.867)

主要现象就是启动 appverif.exe 时命令行窗口一闪而过,UI 窗口没有创建就退出了。
用 windbg 调了一下,发现 appverif 在初始化 UI 窗口前会去检查并登记注册表 Image File Execution Options 键值下的 exe,而当遍历到其中的 MsSense.exe 时因为没有权限失败了(STATUS_ACCESS_DENIED)

具体堆栈如下:

00 vrfcore!VfCoreOpenImageFileExecutionOptionsKey+0xc4
01 vrfcore!VerifierOpenLayerProperties+0x4b
02 appverifUI!AppVerif::GetVerifiedImages+0xd6
03 appverifUI!StartUI+0x64
04 appverif!wWinMain+0x43e
05 appverif!__wmainCRTStartup+0x153
06 KERNEL32!BaseThreadInitThunk+0x19
07 ntdll!__RtlUserThreadStart+0x2f
08 ntdll!_RtlUserThreadStart+0x1b

VfCoreOpenImageFileExecutionOptionsKey 中会调用 NtOpenKey 打开每个项,而轮到 MsSense.exe 时因为返回 STATUS_ACCESS_DENIED 而导致初始化过程失败,进程退出。
用注册表编辑器打开一看 admin 确实是没有访问权限,那么给它加上就可以了。

不绕弯子,直接用 NSudo 启动一个注册表编辑器,给 MsSense.exe 手动加上管理员组的读取权限,这样 Appverif 就恢复正常了。

当然,新的 Appverif 已经修复了这个问题,直接更新到最新版就没问题了。


魔女こいにっき 感想

虽然我是断断续续玩的,但是前后居然推了 4 个月……这还是后面看那些支线过于脱力快速略过的,剧本确实长得不行。

主要故事流程里包含了三个大的系列,分别是很久以前ジャバウォック王(以下简称 j8wk)的故事、约 1 年前 j8wk(此时已化身为桜井たくみ)的故事、然后就是现在的故事。恶心的地方就在于三个故事是并行展开的,这边讲一段,然后又加载其他故事的进度开始推进,然后讲了一点又换一个……看的让人比较蒙,而且 1 年前的支线剧情大多都不重要,前面堆了很多支线故事非常消耗耐心,会让人觉得是个雷作。


Xperia Z3+ 换电池

换了新手机后 Xperia z3+ 就吃灰度日了,现在需要备用机,又把它翻出来了。

至少还是得换个电池才能续命。到底是过气机型,淘宝搜了一圈也只有华强北几家店了,卖的应该都是拆机货。不过不打紧,说不定有品相好的,反正老电池也撑不住……

到底是三防手机,贼难开……看来对我这初心者还是有点难度。期间就一直电吹风,划片,电吹风,划片……后面发现用一字螺丝刀代替塑料划片效果拔群。


区块链原理、设计与应用

大纲

    理论篇

  • 介绍区块链、比特币、以太坊(智能合约)相关概念和技术
  • 共识问题。(FLP不可能:网络可靠但允许节点失败时不存在解决一致性问题的确定共识算法)(Paxos 算法、Raft 算法)
  • CAP:一致性、可用性、分区容忍性(节点间的通讯不保障)
  • 拜占庭问题——工作量证明(改进:权益证明(PoS)等)
  • 智能合约:图灵完备,配合区块链来保存合约的运行结果,达到去中心化、不可篡改的效果
    实践篇

  • 超级账本 Fabric 的部署、使用和技术架构
  • 智能合约(链码)和应用程序开发
  • 云区块链服务平台介绍

ぼくの一人戦争 感想

小镇上存在着“会”这种超自然现象,每场“会”就是进行一次战斗。所谓战斗说白了就类似塔防游戏,引发“会”的那个人在“会”里作为王,也是敌人的目标,士兵则负责拦住来袭的敌人。虽然王能掌握战局但是没法动弹,只能负责指挥。士兵的人选则是以王的人际关系出发,按关系好坏可被招聘至“会”中进行战斗的人。士兵的战斗力也是按关系好坏划分的,王持有一定点数作为招聘士兵的花销。当士兵在“会”中受伤死亡时便会无法再进入“会”,此时王的点数会增加,反映到现实中则是失去了和王之间的羁绊和记忆并且反目。如果有士兵牺牲那么本次战斗会立即结束,相反如果王被敌人干掉则王会在后面一段时间内变得口无遮拦、忠于自己的欲望,还会选择性失忆,仿佛活在梦里。


9-nine ゆきいろゆきはなゆきのあと 感想

趁着第四作发布,于是我就四作一起推了,不用蛋疼得等上一年还是挺舒服。

九次九日九重色 / ここのつここのかここのいろ

主人公新海翔所在的小镇因为一场地震导致一部分人拥有了超能力。作为被选中的人类,主人公和他的魔法少女后宫团开始与同样获得超能力的邪恶势力作斗争。超能力依附在名为 artifact 的道具上,持有 artifact 的人就可以激发它的能力使用异能。
第一作的轮班女主角是男主的同班同学九条都。九条的能力可以夺取物品的所有权(也可以是视力、记忆等没有实体的东西)。虽然男主一开始坚持自我催眠超能力是不存在的,但因为镇上出现被石化的无辜市民,男主才不得不接受。当然这时候石化事件的犯人还没有找到。很快男主又和九条一起解决了学校里少年 A 因能力失控而引发的火灾事件,最终九条夺取了他的 artifact 后平息了火灾。


MinDeaD BlooD~献给支配者的狂死曲~ 感想

MDB 高度自由的行动方式果然难搞,自己选的时候不明就里到处乱逛,到后面区域间吸血鬼力量失衡走上跑路 ending。然后就果断照着攻略打了。

花了一天时间通下来,但说结果感觉也只是一部过激游戏这样,单纯地得到了感官上的刺激。因为其他的剧情算不上出彩,出彩就在于过激之处。至于是不是要在过激行为里表达什么东西之类的,害,我也不喜欢什么事都要往人性扯一扯才算有深度。终究只是一部爽游( ̄。。 ̄)

各种过激玩法看过没看过的都有了。。真·悠香线的几个结局还算有点感觉的。嘛,用了大量猎奇吸引住眼球,然后在不断虐妹的坑里放上几颗糖,这就是所谓的 true end 了吧。


世界と世界の真ん中で 感想

故事从春假开始。男主角近江连理(おうみれんり)在鍵の森学舍“厄多斯”与舍友月館美紀(つきだてみのり)、白取爱良(しらとりあいら)、朱音遥(あかねはるか)和弐相中(にしょうあたる)准备迎接久病出院的妹妹近江小小路(おうみこころ)作为一年级新生来宿舍入住。然后在这次大扫除中连理在阁楼上的笔记本里发现了一把神秘钥匙。