关于如何做一个Source Insight外挂插件的全过程都已经写完了,这么一点东西拖了一年的时间才写完,足以说明我是一个很懒的人,如果不是很多朋友的关心和督促,恐怕是难以完成了.许多朋友希望顺着本文的思路也作一个类似于TabSiPlus功能的Source Insight外挂插件,抱歉让他们等了这么长时间,看了本文或许能让大家消消气(大头在后面).其实即使不是为了给Source Insight做外挂插件,本文的很多方法都可以用于给其它软件做外挂. 尽管本文介绍了做TabSiPlus外挂插件的完整…
上一篇文章介绍了“TabSiPlus”是如何进行代码注入的,本篇将介绍如何构建一个外挂软件最重要的部分,也就是为其扩展功能的定制代码.本文前面提到过,由于windows进程管理的限制,扩展代码必须以动态链接库的形式挂载到被挂程序的进程空间中,使用上一篇介绍的方法已经可以通过创建远程线程的方式启动一个线程,让这个线程加载我们的定制动态链接库,现在就看看这个动态链接库是如何实现的. 首先这是一个动态链接库,因为考虑到扩展功能中有大量的界面操作,所以选择支持MFC,同时,还要提供一个名为“InitFu…
一提到外挂程序,大家肯定都不陌生,QQ就有很多个版本的去广告外挂,很多游戏也有用于扩展功能或者作弊的工具,其中很多也是以外挂的形式提供的.外挂和插件的区别在于插件通常依赖于程序的支持,如果程序不支持插件机制,那么就无法为其开发插件,而外挂则不然,它不依赖于程序本身的功能,通常是一个单独运行的程序,“挂”其它程序的方法就是跨进程代码注入.如果这个世界的所有软件都是开放源代码的,而且没有那么多的License限制,黑客们可以自由修改代码发布新功能,那么就不会出现外挂这东西.给别的程序做外挂是一件很麻…
“TabSiPlus 外挂插件”主要有两部分组成,分别是“外挂插件加载器”和“插件动态库”.“插件动态库”完成Source Insight窗口的Hook,显示Tab标签栏,截获Source Insight的窗口消息并根据消息调整Tab标签栏等功能,这是一个动态链接库,不能主动执行,所以还需要一个“外挂插件加载器”,“外挂插件加载器”是一个独立的可执行文件,它的主要功能就是发现Source Insight的进程,并把插件动态库“注入”到Source Insight的进程中.本文将简单介绍这两个组件…
外挂的目的就是将代码注入到其它进程中,所以必须要有目标进程才能完成注入,而所谓的目标进程通常是某软件的一部分或者是全部,所以要对目标程序有深入地了解.一般外挂都是针对某个应用程序开发的,其装载.运行都依赖于宿主进程提供的环境,如果“挂”错了,后果很严重.有一些软件运行时会启动多个进程,每个进程完成各自的任务,所以要分清到底应该“挂”哪个进程,好在“Source Insight”比较简单,所有的功能都在一个进程中完成,分析起来比较简单. 要给“Source Insight”加一个用于文件切换的标签…
上一篇文章介绍了如何发现正在运行的“Source Insight”窗口,本篇将介绍“TabSiPlus”是如何进行代码注入的.Windows 9x以后的Windows操作系统都对进程空间进行了严格的保护,进程之间不能想16位的Windows那样通过一个确定的内存地址互相访问数据,甚至是代码,这就意味着要实现一个软件的扩展功能就必须将自己的代码“注入”到该软件的进程空间中,当然,一个进程也可以利用Windows的消息传递机制或mailslot.pipe之类的进程通信方式影响另一个进程,但是,并不是…
Source Insight可以说是一款程序员必备的开发/阅读源码工具,美中不足的是SI没有标签栏,多个源码之间切换很不方便,于是我就乘闲暇之余写了该作品sihook:标签插件;不过严格意义上来说sihook并不算是插件,而是一个内挂:) 如何给Source Insight添加标签栏呢?可以查看orbit的博客<<给Source Insight做个外挂>>系列;感谢orbit的分析,而且orbit再很早的时候就已经做了一个标签插件,我也下载和试用了他的插件,不过orbit的像个外挂…
一提到外挂程序,大家肯定都不陌生,QQ就有很多个版本的去广告外挂,很多游戏也有用于扩展功能或者作弊的工具,其中很多也是以外挂的形式提供的.外挂和插件的区别在于插件通常依赖于程序的支持,如果程序不支持插件机制,那么就无法为其开发插件,而外挂则不然,它不依赖于程序本身的功能,通常是一个单独运行的程序,“挂”其它程序的方法就是跨进程代码注入.如果这个世界的所有软件都是开放源代码的,而且没有那么多的License限制,黑客们可以自由修改代码发布新功能,那么就不会出现外挂这东西.给别的程序做外挂是一件很麻…
1.字体Source Code Pro 出身于豪门Adobe,从名字上来看就知道是转为编码而生的.基本上也是拥有前面所提的编程字体的所有要素的.这个字体基本上具有编程字体所需的所有要素:等宽.支持ClearType.中文字体大小合适,l和1,o和0很容易区分 下载地址: http://download.csdn.NET/download/u010551118/8824117 复制到    C:\Windows\Fonts 2.SI中的自动对齐设置 在C程序里, 如果遇到行末没有分号的语句,如IF…
原创文章,转载请注明出处. 工欲善其事,必先利其器.Source Insight绝对是阅读C和C++代码的利器,另外,Source Insight的体量很小,安装便捷,显示直观,比vim+cscope或ctags的组合要强不少.本文介绍Source Insight 3.5在ubuntu15.10下的安装过程. 首先,在ubuntu中安装wine.可以利用ubuntu软件中心安装,非常简单.安装后wine会在用户主目录下生成一个.wine隐含文件夹,其中包含一个虚拟的windows文件系统,如下所…