和谐掉系统的文件保护一分钟
从某AutoRun中逆出来的,利用微软未公布的API,sfc_os.dll中的ordinal为5函数,关闭文件保护一分钟。
生活的天平本不平衡,只有通过努力改变其偏向。
从某AutoRun中逆出来的,利用微软未公布的API,sfc_os.dll中的ordinal为5函数,关闭文件保护一分钟。
现在笔记本来串口的少了,但在嵌入式Or工控方面,由于串口的便捷性,使用还是有很大市场的。上次分享过一份VC与串口的通信代码。那个类最好不要异模式,否则会有点问题,自己设个侦听线程Or启个Timer进行侦听,效果会好很多。
由于现在的笔记本,越来越娱乐性,带串口的不多了,给我们调试软件带来了麻烦。在网上找了一些虚拟串口的软件,要不就收费的,不要就是不好用,虚拟成功后,不能使用。
然后找到了这个软件VSPM,此软件功能和稳定性比较不错,关键还是免费的,用起来心里也安一点。主要原理在本机虚拟一个串口,会绑定一个端口。可以通过telnet的方式,与此串口进行通信。使用比较简单,下面大致说一下使用步聚。
1:启动VSPM软件
2:选择运行在Server模式。

3.一路Next后,就可以在本机使用telnet 120.0.0.1 6021与虚拟串口通信了。如果你写的应用程序,可以绑定相应的端口,与其进行交互。
在程序使用Dll有两个加载方式,一种是动态方式,就是LoadLibrary载入Dll,然后用GetProcAddress来加载需要使用的Dll函数。另一种就是静态连接方式,将dll生成的lib,加入到工程中,然后使用时就像使用Win API一样使用。
今天我们不讨论动态载入的方式,我们采用静态载入的方式。但有一个问题,由于很多Dll发布的时候,根本就不提供lib,也或许你在使用一个未公开的dll,没有lib我们就不能静态加载,我手工来生成吧。
程序简要说明:
可以解析出PE各个部分的数据解析出来用于分析,主要包括基本数据段、数据目录、区段信息、导入表、导出表、重定位表、资源表。可以对一些陌生程序在运行前进行查看,以免运行了一些恶意程序。
如果你对Windows下的加密解密感兴趣或想DIY可执行文件的话,可以查看本程序的数据解析部分的代码。网上的零星代码,我好像没找到这么全的,能包括导入表、导出表、重定位表、资源表等解析。
还是侯老的那句话:“源码之前 了无秘密”
当对话框中控件数量过多,且需要进行缩放的时,需要手工在Onsize中为每个控件位置和大小的计算,实现繁琐。本文的主要思想来自网上的一篇资料,但由于转载已造成数据的不完整,我根据该文章的思想重新实现,且补充完整了该类。
前置知识:Windows句柄表的基本结构
本文以WRK1.2的代码为参考,主要分析Windows句柄表的分配算法,其实只要了解了句柄表的结构,就很容易理解在分配句柄表过程中的每一步操作是何含义,理解之后你会感觉,这个其实算不上什么算法,只能叫做一个规则吧
标签: 驱动
想象一个物体在3D空间中移动的过程,该物体必然会涉及到旋转。例如一个怪物,他的运动方向会改变,要改变其方向只需要对其进行旋转即可。
旋转的方式大致分为三种:Euler旋转,矩阵旋转,以及四元数旋转。
这里稍微记录下我目前对于四元数旋转的理解。对于四元数方面的数学,以及其原理,这里不关心,只需要学会如何使用即可。
无论是哪一种旋转,物体与该物体的局部坐标系之间的相对位置,相对方位都是不会改变的。因此,在进行两个局部旋转(即相对于局部坐标系)时,要注意结果可能不是你预期的。
对于Euler旋转,OGRE中为SceneNode提供了yaw, pitch, roll之类的接口。这些接口默认都是参照局部坐标系旋转,可以通过第二个参数来指定,例如 yaw( Degree( 90 ), SceneNode::TS_WORLD );
OGRE中的Quaternion类用于四元数处理。该类(也可以说是四元数本身)有四个成员:x,y,z,w。这四个数分别代表什么?
前一段时间写了一个大数的四则运算,主要思路就是将大数转成字符串进行运算。这种方式虽然效率不太高,但在某些场合,由于种种原因,系统的四则运算,不满足要求时,这种方式到是派上了用场。
看到网上也有类似的计算方法,不过好像不支持浮点,我写了一个支持浮点的。
实现方式,纯C + 几个字符串运行库。
IDE: VC6.0
Bug肯定多多,如果你在观看代码或使用时,发现Bug请即时和我联系,当然如果你肯在这份代码上作相应的优化,请将优化后的版本也发一份给我,Thx.
//最近比较懒,一直没更新。by lonkil
今天无意中年到这篇文章,很不错的主意,就转过来了。
原文:http://blog.csdn.net/bhw98/archive/2004/04/28/19683.aspx
相信大多数的程序员或用户,在Windows中见到类…
最近的项目需要对字体进行描边,也就是将字体缕空。为了实现不同桌面背景图使字体看上去清楚,目前通用的解决方案就是将字体描边。关键现在这款芯片的GUI开发包功能比较弱,一些特殊效都需要自己手动实现,汗。要实现这个效果的第一个想到的解决方案就是将系统字体的点阵取出,进行边缘检测出来,进行处理,运算的开销不小,而且处理起来麻烦,国际化也是个麻烦。
我在整理代码时将一组常用函数打包成一个utility类,采用的方案就是静态化成员函数.但是遇到到了Link错误,原以为这个和以前的Link错误一样容易解决(又见link错误之LNK1104,VS2005中郁闷的lnk2001和lnk2019),没想到试了各种办法都失败,仅仅能编译通过,Link时不同的编译器产生不同的错误,VS6产生LNK1120,VS8产生LNK2019.