摘要: 为什么要用IO_REMOVE_LOCK?
WDM 驱动程序在处理设备删除 IRP 并释放驱动程序分配的内存后可能接收到附加的 IRP。在处理附加的 IRP 时试图引用已经释放的内存会导致系统崩溃。驱动程序能够接收已删除设备的 IRP,这有两个原因:
在设备被删除后,另一个组件可以发送 I/O。
在设备删除请求之前发送的 I/O 请求可能在目标驱动程序处理设备删除请求之后到达。
阅读全文
摘要: POJ 2479/POJ 2593的拓展,从一维数组变成了二维矩阵,不过我们可以把情况模拟成一维的情况,在DP的基础上需要加上枚举。
题目要求求出给定的一个矩阵的和最大的子矩阵。
我们可以枚举第a行到第c行的情况(假设已经确定矩阵已经确定为最上面为第a行,最下面为第c行),那么只需要确定列的范围即可。我们可以把每一列都求和,这样会得到单独的一行,就可以直接求这一行的最大子段和即可。
阅读全文
摘要: 怎样使CListctrl第一列中的各项居中显示。我的代码:
If a column is added to a list-view control with index 0 (the leftmost column) and with LVCFMT_RIGHT or LVCFMT_CENTER specified, the text is not right-aligned or centered. The text in the index 0 column is left-aligned. Therefore if you keep inserting columns with index 0, the text in all columns are left-aligned. If you want the first column to
阅读全文
摘要: 这个是我昨晚在做某工程的时候写的,然后就共享出来,要实现文件拖曳首先要让窗口支持文件拖曳功能,首先要设置窗口的accept files属性为真,或者在初始化的时候加入DragAcceptFiles函数使得窗口支持文件拖曳,这时候你就可以试试把文件拖曳过去会发现鼠标不在是之前那个停止的图标,这时候我们要添加拖曳处理消息为窗口添加OnDropFiles消息,然后键入下面代码
阅读全文
摘要: 很多人都觉得自己的程序的界面不那么美观,往往VC默认产生的对话框比较单调,因此很多人往往找到很多其它的控件对对话框进行美化修饰,例如给静态控件设置字体,设置背景颜色等等, 其实这些完全可以由VC自己的WM_CTLCOLOR消息来完成!
WM_CTLCOLOR消息用来完成对EDIT、STATIC、BUTTON等控件设置背景和字体颜色,其用法如下:
1.首先在自己需要设置界面的对话框上点击右键-->建立类向导-->加入WM_CTLCOLOR消息-->自动生成OnCtlColor()函数,此函数可以对本对话框的控件的界面外观做修饰,用法如下:
将类向导产生的函数做如下修改:
阅读全文
摘要: IDA显示中文字符串总是乱码,很不给力有木有!思索良久,忽然想起《加密与解密》第三版上曾经对此有所提及,所以赶紧翻书查看解决方案,说是要修改ida.cfg这个配置文件。
所以,来到IDA的安装目录,找到cfg\ida.cfg,然后用Notepad++(最好不要用微软自带的记事本)打开,搜索AsciiStringChars,将其中cp866 version的几行注释掉,然后去掉full version段的几行的注释,保存文件并重启IDA。
阅读全文
摘要: 很垃圾的文章了,大牛们直接飘过吧。
为什么要实现改键?
前几天玩一个游戏,因为ASDW这几个键不能控制方向所以感觉很不方便,于是就想出了自己写一个全局键盘钩子来实现改键的程序;一般能自己解决的问题我都会自己想办法解决,所以也没有用网上先有的程序了。
怎么实现键盘改键?
装一个全局的低级键盘钩子(WH_KEYBOARD_LL),在键盘钩子回调函数(LowLevelKeyboardProc)中判断是不是目标按键,如果是则通过keybd_event来实现模拟按键,同时直接用return TRUE;来对回调函数进行返回。如果不是目标按键,那么需要传递到下一个钩子链。全局的钩子需要放在DLL里面。
改键效果
对普通程序有效……因为我玩的游戏是Direct X的,所以键盘钩子完全相当于不存在,因为没有接触过Direct X,所以就没有继续写下去了。
阅读全文
友情链接: