自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

LPWSTR的博客

知行合一 不忘初心

  • 博客(12)
  • 资源 (2)
  • 收藏
  • 关注

原创 Windows下使用C++(Win32SDK)编程无需提权读取硬盘序列号(XP、Win7和Win10都可用)

在需要对计算机进行标识的场景下,我们一般会选择获取一些硬件信息。Windows下硬盘序列号的获取本身并不复杂,而关键在于如何在无需权限提升的情况下获取到硬盘序列号。为了解决这个问题,我也查了很多资料,基本上各大博客中贴出的都是需要权限提升的代码。

2017-12-30 08:35:45 9074 10

原创 Java虚拟机原理分析之Win10下VS2017编译OpenJDK8与单步调试HotSpot VM过程详细记录

继上一篇文章我们在Win7+VS2010环境下成功编译出了x86版本的OpenJDK后,本文记录了Win10下VS2017编译OpenJDK8与单步调试HotSpot VM的过程,着重介绍其中遇到的错误与解决方案。

2017-12-20 09:35:09 4518 3

原创 Java虚拟机原理分析之Win7下VS2010编译OpenJDK8与单步调试HotSpot VM过程详细记录

上周五偶然翻到本讲JVM原理的书,看着觉得很过瘾,居然因此错过了晚饭,很久没这么酣畅淋漓过了。然而过瘾之余,看不到JVM源码、也无法调试,总觉得未能尽兴。Linux的老爸Linus大牛曾说“Talk is cheap, show me the code”,光看书,总觉得像在吃别人已经吃剩下的饭,远不如自己动手看看源码、调试跟一跟来得实在。遂决定在Windows平台上自己动手编译一个Java虚拟机,...

2017-12-19 10:50:27 4267 3

原创 AT&T风格与Intel风格的x86汇编语法区别

无论采用何种语法,都需要有支持该种语法的汇编器负责将汇编源代码“翻译”成x86机器指令,而Intel与AT&T风格的汇编语发差异,只存在于汇编源码层面

2017-12-16 00:51:44 3238

原创 Sublime Text 3143 Win32版本破解后续——排除暗桩与完美注册

本文是对上一篇记录《Sublime Text 3143 Win32版本暴力破解过程》的补充之一。整个破解工作到目前为止,似乎一切都很顺利,随便输入一个序列号就能完成注册了。然而今早起床刷牙时猛然想起一个细节:Sublime的作者在3126版本中就已经有了对注册函数进行验证的环节,故意传入了一个全0的参数,此时作为异常情况,注册函数应该返回代表注册失败的值,当初我们第一次破解3126版本的时候就因为没

2017-12-15 01:25:09 1269

原创 Sublime Text 3143 Win32版本暴力破解过程

Sublime Text是一款强大的文本编辑器,在不注册的情况下也可以使用,但标题栏的未注册字样与时不时弹出的nag窗口有时也让人感觉很不爽,于是尝试对其注册过程进行分析与破解。本文详细记录了对Sublime 3143 Win32版本的暴力破解过程,

2017-12-12 15:37:41 1335 1

原创 Sublime Text 3126 Win32版本暴力破解过程

Sublime Text是一款强大的文本编辑器,在不注册的情况下也可以使用,但标题栏的未注册字样与时不时弹出的nag窗口有时也让人感觉很不爽。虽然网上很容易就能找到它的注册码,但是通过自己的分析和双手将其破解掉,还是会很有成就感的。这里分析的是Sublime 3126 Win32版本,目前已有更新的版本(3143版本)。这里选择分析旧版本,一方面是因为旧版本的注册逻辑相对更加清晰,并且由旧到新的分析

2017-12-11 22:03:08 844

原创 Windows异常世界历险记(二)——Win32用户层下SEH机制之对RtlUnwind的逆向分析

RtlUnwind函数是一个用户层的Windows API函数,其作用是执行SEH的展开操作(正是由于Windows的SEH机制不自动进行展开操作,才提供了此API,供需要执行该操作的用户调用)。下面介绍其用处并进行逆向分析。

2017-12-04 22:06:13 2746 2

原创 Windows异常世界历险记(一)——Windows系统用户级结构化异常处理机制(SEH)的基础知识和Unwind展开操作

Windows系统的用户级结构化异常处理机制(SEH)是基于线程的,因此可为不同的线程指派不同的异常处理函数。且由于其形成了链结构,还可据此为一个线程指定多个异常处理函数,异常发生后,操作系统会沿此链表调用各异常处理函数,直到某个异常处理函数修复了该异常或已达末尾。通常处理完异常后,需要执行展开(Unwind)操作,该操作先通知目标结点前的各异常处理函数释放资源,然后将之前的SEH链全部删除。

2017-12-04 17:33:19 1408 2

原创 Visual C++异常处理机制原理与应用(五)——C/C++结构化异常处理之try-except异常处理的使用(下)

在前面几篇文章中,我们介绍了VC++结构化异常处理的相关内容,目前其用途仅限于捕获代码中本来就存在的异常,比如访问违规、除数为0等异常情况。其实在很多场合,我们也完全可以利用这种机制,触发一个异常,然后让执行流程转入异常处理阶段。

2017-12-04 16:37:40 565

原创 Visual C++异常处理机制原理与应用(四)——C/C++结构化异常处理之try-except异常处理的使用(中)

在上一篇博文《Visual C++异常处理机制原理与应用(三)——C/C++结构化异常处理之try-except异常处理的使用(上)》中,我们已经对VC中C/C++结构化异常处理的异常处理机制的特点进行了分析。这篇文章主要通过一个实例讲解C/C++结构化异常处理中可能最令人困惑之处——即多级异常处理与终止处理嵌套时程序的执行流程。

2017-12-04 13:41:50 898

原创 Visual C++异常处理机制原理与应用(三)——C/C++结构化异常处理之try-except异常处理的使用(上)

在微软的VC++中,C/C++结构化异常处理机制一共包含两部分内容:终止处理程序和异常处理程序,本文主要介绍异常处理程序的相关内容。

2017-12-03 21:45:10 2329 2

win2003_prepatched_v10a.zip

操作系统源码编译构建所需的文件,即Windows Server 2003 (NT 5.2.3790.0) build guide中提到的prepatched文件10a版本。详情请参考压缩包内的readme文件,推荐使用7z/WinRAR解压。

2021-05-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除