月度归档:2016年07月

Win7x64 应用层(Ring3)实现文件及进程监控

以前在做网维行业的时候,会用很多监控工具用来监控文件或进程的创建过程,以此来协助解决一些问题。比如 Malware Defender、Process Moniter 等工具,这些工具功能强大但有一些局限性。比如 Malware Defender 不支持 64 位系统、Process Moniter 干扰信息太多等。所以最近自己刚好做 Hook 这块工作,学习着做了一个应用曾下监控文件及进程创建的工具,虽然是应用层监控,但是 Hook 的一些关键函数与 Malware Defender 是同样的。所以监控的效果是差不多的,且支持 64 位系统。但目前只能通过 DebugView 来查看输出的信息,后期我会做一个界面来查看输出信息。以下是效果截图:

继续阅读

CString 与 DWORD IP 互相转换

写网络程序的时候经常会用到 CString 和 DWORD 两种 IP 格式的转换,DWORD 是四个字节无符号类型,每一个字节来表示 IP 地址的点分的一位,理解了这个结构还要清楚网络字节序和本机字节序的概念,他们在内存中的表示方法刚好相反。如果你尚不清楚还请在本站搜索一下相关的关键字。下面示例程序演示了 CString 和 DWORD IP 地址的互相转换。

继续阅读

Windows 字符串处理宏(适应与Unicode及多字节字符集)

如果你进入本文时,若对与 多字节 Unicode ASCII 等这些概念上不清楚的话,请转到如下文章学习:

API入门系列之一 -那‘烦人’的Windows数据类型
http://blog.csdn.net/beyondcode/article/details/4015769

API入门系列之二 -Unicode还是ASCII
http://blog.csdn.net/beyondcode/article/details/4018731

API入门系列之三 -那迷惑人的Windows字符和字符指针类型
http://blog.csdn.net/beyondcode/article/details/4021085

继续阅读

编译 EasyHook 32-bit/64-bit 静态库 Lib

EasyHook 是 Windows 平台下开源的 APIHOOK 工具库,因其开源有 64 位版本而注广为流传,微软也有提供 64 位 APIHOOK 的代码,但是要收费的。最近公司让我做一个 HOOK 的名单功能,顺便就研究了一下 EasyHook 的静态库编译和使用,也弥补一下曾经再这方面耗费的心血。下图是 HOOK 成功后 DebugView 的输出。

继续阅读

Windows VS2015 编译 libssh2 1.7.0

最近公司要求做一个小工具,要求是通过程序连接 Linux 服务器,对服务器传送文件和执行命令。多次搜索后找到了比较适合的 libssh2 开源项目。但因为缺乏文档,一直没有编译成功。但最终经过多方搜索,还是成功在 VS2015 中将项目编译成功。特此写下详细步骤,希望能帮助各位。

继续阅读

summernote toolbar 跟随页面自动滚动

summernote 是一个功能非常强大的 web 编辑器,可以应用到各种场景下。最近在 Meteor 中做了一个小功能,就是实现 summernote 的 toolbar 跟随页面滚动的效果。这样即使文章内容很长,要插入一个图片或者使用其他特殊标签的时候,不必滚动页面到最上方去找 toolbar 了。效果如下:

继续阅读