Windows
文章平均质量分 62
seaquester
这个作者很懒,什么都没留下…
展开
-
在WDM驱动中如何获得PCI卡的物理Slot号
在WDM驱动中如何获得PCI卡的物理Slot号?系统提供了一个函数 IoGetDeviceProperty() 来实现这个功能。该函数的声明如下:NTSTATUSIoGetDeviceProperty( IN PDEVICE_OBJECT DeviceObject, IN DEVICE_REGISTRY_PROPERTY DeviceObject, IN DEVICE_REGISTRY_原创 2004-07-02 10:10:00 · 2774 阅读 · 0 评论 -
WDM驱动中如何获得当前系统时间
WDM驱动中如何获得当前系统时间?可以按照以下步骤:1. 用 KeQuerySystemTime() 获得当前的 GMT System Time. 这是一个从 1601-01-01 以来的计数(单位是 100ns)。2. 如果是 Win2000/XP,调用 ExSystemTimeToLocalTime() 将 GMT System Time 值转换成当前时区的 Local Syste原创 2004-07-02 10:22:00 · 2011 阅读 · 0 评论 -
如何取得硬盘的分区信息
下面的代码在Win2k SP4上测试通过,注意 nBufferSize 后面那个数字,我用的是11,因为我的硬盘分了三个区,这个数字一般需要设为: (硬盘的分区数 * 4 - 1)我的系统上返回的 lpPartsInfo->PartitionCount 是 12,大一点没什么关系.#include #include int main(int argc, char* argv[]){ HAND原创 2004-07-29 16:56:00 · 2247 阅读 · 0 评论 -
调整PE文件的校验和
#include #include #include void CalcChecksum( char *szPeFile );__inline void PrintUsage( void );int main(int argc, char* argv[]){ if( argc != 2 ) { PrintUsage(); return 0; } C原创 2005-02-22 10:12:00 · 3333 阅读 · 0 评论 -
完成例程在什么情况下需要调用 IoMarkIrpPending
完成例程在什么情况下需要调用IoMarkIrpPending(1) 如果完成例程将以 STATUS_PENDING 来结束,则在调用IoCompleteRequest前,必须调用 IoMarkIrpPending。(2) 所有不返回 STATUS_MORE_PROCESSING_REQUIRED 状态的完成例程都需要: if (Irp->PendingReturned) {原创 2007-04-20 10:40:00 · 3819 阅读 · 0 评论 -
WDK中的辅助内核模式库(Auxiliary Kernel-Mode Library)
WDK中的辅助内核模式库(Auxiliary Kernel-Mode Library)WDK中增加了一个辅助内核模式库(Auxiliary Kernel-Mode Library),里面的函数可以让内核模式驱动程序访问某些系统功能。里面包含的函数有下面几个:AuxKlibInitializeAuxKlibQueryModuleInformationAuxKlibGetImageExport原创 2007-06-06 09:54:00 · 3241 阅读 · 0 评论