自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

原创 用于windbg检查文件是否匹配的python脚本

checkfile.py# -*- coding: utf-8 -*-import sysimport osfrom pykd import *from ctypes import *MAX_PATH = 260FILE_PATH = 'C:\\Program Files (x86)\\Cisco Systems\\Cisco Jabber\\'

2014-07-25 17:37:45 1091

原创 自己用的windbg初始化脚本

.load pykd.pyd;.load hs-x64.dll;.load blwdbgue.dll;ad *;aS ${/v:findthis} "!py findthis.py"aS ${/v:checkheap} "!py checkheap.py"aS ${/v:hex} "!py hex.py"aS ${/v:go} "!py kb_and_analyze_v

2014-06-11 14:50:01 800

原创 用于windbg转换十六进制字符串的python脚本

import sysfrom pykd import *def strtohex(str):        hex_str = ""        detail_str = ""                for ch in str:            hex_ch = hex(ord(ch)).replace('0x', '')         

2014-06-10 13:24:47 754

转载 汇编中使用EBP传递参数和变量

EBP+C: second parameterEBP+8: first parameterEBP+4: return addressEBP:   previous EBPEBP-4: local variableEBP-8: local variable

2014-06-04 16:33:52 3773

原创 切换鼠标左右键设置

// SwitchMouse.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include void SwapMouseButton(){BOOL bSwapped = ::GetSystemMetrics(SM_SWAPBUTTON);::

2014-05-16 12:19:43 1048

原创 用于windbg检查堆是否被破坏的python脚本

需要安装pykdimport sysfrom pykd import *def check_heap(): heapliststring = dbgCommand('!heap')for heapstring in heapliststring.split('\n'):if heapstring.find(':') == -1:   contin

2014-05-08 10:43:45 1132

转载 STL删除元素

● 去除一个容器中有特定值的所有对象:如果容器是vector、string或deque,使用erase-remove惯用法。如果容器是list,使用list::remove。如果容器是标准关联容器,使用它的erase成员函数。● 去除一个容器中满足一个特定判定式的所有对象:如果容器是vector、string或deque,使用erase-remove_if惯用法。如

2013-10-31 10:23:40 502

转载 错过第一现场后还从dump中分析出线索吗

前面介绍了用Windbg截取1st chance exception进行分析的方法。但是好多情况下,程序并没有运行在调试器下。崩溃发生后留在桌面上的是红色的框框,这时候已经错过了第一现场,但还是有机会找到对应exception的信息。前面介绍过,红色的框框是通过UnhandledExceptionFilter函数显示出来的,而UnhandledExceptionFilter的参数就

2013-09-27 15:10:56 732

原创 VC改变DialogBar的背景色

折腾了一上午帮别人搞定了这个问题,记录一下,其实问题的关键就是需要从CDialogBar派生一个新类,在新类里面处理一下DoPaint事件就可以了1.MainFrm.h添加#include "DialogBarEx.h"class CMainFrame : public CFrameWnd{....private:CDialogBarEx m_wndDlgBar;}

2012-09-05 11:43:28 826

原创 大整数相乘

void CTestDlg::OnButton1() { // TODO: Add your control notification handler code here char buf1[256] = {0}; char buf2[256] = {0}; GetDlgItemText(IDC_EDIT1, buf1, 256); GetDlgItemText(IDC_EDIT2, buf2

2009-08-17 15:44:00 593

原创 冒泡排序,插入排序,二分查找

void CTestDlg::OnButton5() { // TODO: Add your control notification handler code here //冒泡排序 int Data[] = {76,24,35,89,56,12,27};  for(int i=0;i {  for(int j=0;j  {   if(Data[j] > Data[j+1])   {    in

2009-05-05 10:57:00 565

转载 获取Windows系统托盘图标

csdnzgj828网友提供: http://info.52z.com/html/24668.html 有网友提出,能不能在程序界面上显示当前的托盘图标,这样更直观一些。这一点我也曾想到过,也知道奥秘就在TBBUTTON这个结构体的dwData域里面,可惜这个域的结构在MSDN中没有描述。我也曾试着发送TB_GETIMAGELIST消息获取image list的句柄,然后用CIma

2008-12-11 09:20:00 1480 1

原创 Java2核心技术学习笔记

1.浮点数不适用于禁止出现舍入误差的金融计算中。例如,命令System.out.println(2.0-1.1)将打印出0.89999999999,而不是人们希望的0.9,原因在于浮点数值是采用二进制系统表示的,无法精确的表示1/10。这就好像十进制无法精确的表示1/3一样。如果需要在数值计算中部含有任何舍入误差,就应该使用BigDecimmal类。2.>>>运算符将用0填充前面的位,>>运算符用

2008-03-24 20:26:00 1547 6

原创 馒头渣!

1。vc-打印源码中文件名和行号常用的宏名什么? 文件名:__FILE__       行号:__LINE__ 2。vc-限制Edit只能输入0-FWNDPROC wpOrigEditProc; LRESULT CALLBACK wpSubclassEditProc(HWND hDlg,UINT uiMsg,WPARAM wParam,LPARAM lParam);wpOrigEdit

2007-11-13 15:21:00 2168

原创 VC++技术内幕笔记

??1。CWinApp::Run()成员函数。Run函数被隐藏在基类中,他用来负责传递应用程序的消息给相应的窗口,从而维护着应用程序的运转。WinMain在调用 InitInstance之后紧接着调用Run。2。获取程序主窗口指针。AfxGetApp()->m_pMainWnd3。CRect有一个成员函数PtInRect用来测试一个点是否落在某个矩形内。只适用于设备坐标系。CRgn的PtI

2007-09-22 10:03:00 1191

原创 vc6点击打开时devshl.dll出错的解决方案!

前几天就出现这个问题了,vc6点击打开或者点击添加到工程的时候vc6就出错退出,调试提示devshl.dll错误,后来重装系统之后,先装vc6没有问题,后来忽然出问题了,于是开始卸载软件, 终于让我发现了,原来是Microsoft Visio惹得祸,卸载他就好了,我后来又重装了Visio,发现确实,vc6又出错了,看来应该就是他的问题,大家碰到这个问题卸载他试试看

2007-09-07 17:00:00 20013 5

原创 C++编程思想学习笔记

1。声明与定义:声明是向编译器介绍名字---标识符。而定义为名字分配存储空间。 定义也可以是声明。如果定义int x;之前,编译器没有发现标识符x,编译器则把这一标识符看成是声明并立即为它分配存储空间。我们常用的写法,int i;就属于这种"定义是声明的"情况,纯粹的变量声明应该使用extern关键字。函数声明extern可以省略,因为编译器可以通过函数名后面跟的是;还是{来判断是声明还是定义。

2007-06-19 19:40:00 1443 1

解析intel_Core_i7生产全过程

CPU是怎样制造的?--解析intel_Core_i7生产全过程

2011-08-30

空空如也

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

TA关注的人

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