使用WinDbg简单调试CreateRemoteThread

今天遇到个坑爹的问题,使用CreateRemoteThread注入dll总是失败也没有错误提示,也不好跟踪,因为是以硬编码的形式创建远程线程的,之后想了下貌似有点印象,前段时间学习使用windbg的时候遇到过类似的问题。

首先使用WinDbg附加到目标进程,然后下断点 bu kernel32!BaseThreadInitThunk

xp:kernel32!BaseThreadStart
win7:kernel32!BaseThreadInitThunk

阅读更多>>

发表在 C/C++ | 标签为 Windows, windbg | No Comments

Win32xx下使用gdiplus编写GIF控件

最近学习Win32xx的使用,想要实现一个GIF控件于是学习一下,主要通过自绘来实现,主要用到了下面的几个知识点:

  1. 自绘的窗体得有XX_OWNERDRAW样式,CStatic需要SS_OWNERDRAW,CButton需要BS_OWNERDRAW。
  2. 通过gdiplus读取gif图片的帧,然后通过OnTimer来切换下一帧。

阅读更多>>

发表在 C/C++ | 标签为 C++, gdiplus | No Comments

gVim的unite grep使用以及整合fasd

因为懒的原因很久没发文章了,把我琢磨的两个比较有趣的Vim配置发出来玩玩。
第一个是关于unite.vim插件的grep功能的技巧:

截图:
unite_grep_resume.jpg

大体就是恢复通过unite grep搜索的buffer,不需要重新再去耗时的搜索。

阅读更多>>

发表在 技术文章 | 标签为 Vim, unite, fasd | No Comments

nginx服务器使用git部署代码

最近写个web程序,由于环境实在虚拟机中,改了文件拖动来拖动去的很麻烦,所以就学习了下git来同步部署项目,这里通过git和ssh来远程同步,关于git的安装和ssh的配置就不在这里过多说明。

首先在服务器中创建个git用户,然后把git用户加到web服务器用户的组里,比如:

# useradd git -s /usr/bin/git-shell
# usermod git -m apache

阅读更多>>

发表在 技术文章 | 标签为 nginx, git | No Comments

nginx报Primary script unknown问题小结

今天在一台Centos6上弄nginx遇到Primary script unknown问题,网上搜索基本上都是让修改$document_root之类的文章,这么明显的问题显然不是,下面总结下遇到该类问题该怎么解决。

首先出现该类问题一般就是文件无法访问(包括文件路径不对,权限不正确),首先需要判断下文件是否存在,可以在nginx配置文件中写入:

阅读更多>>

发表在 技术文章 | 标签为 nginx, php-fpm | No Comments