PDB 下载工具 2017-01-02 Tips 前段时间微软的符号服务器特别不稳定,Windbg下载符号文件老是失败,所以就专门写了个pdb的下载工具(pdbdownloader)放到Github上。 P.S. 用WPF写界面确实是很有趣 ...
快速抛出失败的方法 INT 29H 2016-12-13 Debugging 从Windows8开始,Windows设计了一个新的中断,INT 29H,用来快速的抛出失败。在sdk中,他被声明为 __fastfail: #define FAST_FAIL_LEGACY_GS_VIOLATION 0 #define FAST_FAIL_...
windbg的lua脚本扩展luadbg 2016-11-15 Debugging 2012年的时候,我在blog上写到过开发了一个windbg的lua扩展dbglua,当时觉得windbg的原生脚本语法太奇怪了,而且太不容易使用。现在来看,依旧如此,只不过我已经很熟悉这个原生脚本了。而这个lua扩展反倒是没什么用,因为用起来也不太方便,比如访问结构体。 最近无...
编译时自动增加build number 2016-10-18 Tips 最近和朋友讨论版本号常用的几种规范,前三位<主版本>.<子版本>.<修正版本>基本上一致,不需要详说。主要区别产生在最后一位,有的是build number,有的是时间日期,还有的是git或者svn的revision。我习惯用build num...
验证文件签名 2016-09-21 Tips Sysinternal(http://forum.sysinternals.com/howto-verify-the-digital-signature-of-a-file_topic19247.html)上有关于验证签名的代码,不过代码有点问题,他只能验证PE签名,无法验证文件...
在NTFS元文件目录里创建文件 2016-08-23 Tips 说到Rootkit就不能提到他的文件隐藏,Rootkit隐藏文件的方式千奇百怪,这里说其中一个通过NTFS元文件目录无法被普通程序显示的特性隐藏文件的方法。 我们都知道NTFS是有元文件的,比如$MFT(NTFS主文件表),这种文件是我们看不到的,但是系统能访问。同样还有一种元文...
关于Windows Timer精确度 2016-07-24 Tips Windows Timer相比大家都用过,WM_TIMER, WM_SYSTIMER, Waitable Timer, Multimedia Timer, Timer Queue Timer,这么多种Timer,给我们变成提供了很大的方便,有窗口无窗口都能自如选择。所以尽量也不要...
Windows 10 任务管理器结束任务流程 2016-06-26 Tips 从Win8开始,任务管理已经悄然发生变化了,这篇文章要说的就是结束任务这一个功能。以Win10的任务管理器为主来说明,没有了从窗口关闭进程的标签。取而代之的是一个区分前台和后台程序的进程树。通过这个界面结束进程也不再像以前一样调用User32的EndTask(https://ms...
Windows 8 Shell API对于长路径文件名的支持 2016-05-17 Tips 在Windows 8之前,Shell API对于长路径的文件名的支持并不理想。比如PathAppend这个函数,函数规定pszPath,也就是第一个参数,它的buffer大小必须要能够容纳MAX_PATH个字符。第二个参数pszMore也不能超过MAX_PATH的长度。这样的AP...
获取桌面图标位置 2016-04-12 Tips 用来干什么就不用说了,反正不是什么好事情 =v= typedef struct _DESKTOP_ICON_INFO { LVITEMW item; WCHAR item_text[MAX_PATH]; RECT rc; &...