注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)操作系統(tǒng)WindowsWindows 2000驅(qū)動程序開發(fā)大全

Windows 2000驅(qū)動程序開發(fā)大全

Windows 2000驅(qū)動程序開發(fā)大全

定 價:¥199.00

作 者: (美)Microsoft Corporation著;馮博琴等譯
出版社: 機械工業(yè)出版社
叢編項: 微軟公司核心技術(shù)書庫
標(biāo) 簽: Windows

ISBN: 9787111089544 出版時間: 2001-01-01 包裝:
開本: 24cm+光盤1片 頁數(shù): 1197頁 字?jǐn)?shù):  

內(nèi)容簡介

  本書為“Windows 2000驅(qū)動程序開發(fā)大全”的第1卷—設(shè)計指南。全書分五篇全面詳盡地介紹了編寫Windows 2000/98驅(qū)動程序所需的技術(shù)內(nèi)容。包括利用Windows Driver Verifier構(gòu)建、測試和調(diào)試Windows 2000驅(qū)動程序;怎樣生成Windows Driver Model(WDM)驅(qū)動程序;描述了如何支持即插即用、電源管理特性及設(shè)備的設(shè)置和安裝;詳細介紹了編寫內(nèi)核模式、圖形和網(wǎng)絡(luò)驅(qū)動程序的細節(jié)。由于篇幅所限,DDK (Driver Development Kit)文檔中有少部分內(nèi)容沒有包含在本套書中,但隨套書附贈的光盤(見套書第2卷)中包含了DDK文檔的完整信息。

作者簡介

暫缺《Windows 2000驅(qū)動程序開發(fā)大全》作者簡介

圖書目錄

譯者序
第一篇 即插即用、電源管理和設(shè)置驅(qū)動程序開發(fā)參考
第一部分 即插即用
第1章 即插即用例程 
設(shè)備信息例程 
注冊例程 
設(shè)備接口例程 
PnP通知例程 
刪除鎖例程 
其他PnP例程
IoAcquireRemoveLock 
IoAcquireRemoveLockEx 
IoAdjustPagingPathCount 
IoGetDeviceInterfaceAlias 
IoGetDeviceInterfaces 
IoGetDeviceProperty 
IoInitializeRemoveLock 
IoInitializeRemoveLockEx 
IoInvalidateDeviceRelations 
IoInvalidateDeviceState 
IoOpenDeviceInterfaceRegistryKey 
IoOpenDeviceRegistryKey 
IoRegisterDeviceInterface 
IoRegisterPlugPlayNotification 
IoReleaseRemoveLock 
IoReleaseRemoveLockEx 
IoReleaseRemoveLockAndWait 
IoReleaseRemoveLockAndWaitEx 
IoReportDetectedDevice 
IoReportResourceForDetection 
IoReportTargetDeviceChange 
IoReportTargetDeviceChangeAsynchronous 
IoRequestDeviceEject 
IoSetDeviceInterfaceState 
IoUnregisterPlugPlayNotification 
第2章 即插即用IRP 
IRP_MN_CANCEL_REMOVE_DEVICE 
IRP_MN_CANCEL_STOP_DEVICE 
IRP_MN_DEVICE_USAGE_NOTIFICATION 
IRP_MN_EJECT 
IRP_MN_FILTER_RESOURCE_REQUIREMENTS 
IRP_MN_QUERY_BUS_INFORMATION 
IRP_MN_QUERY_CAPABILITIES 
IRP_MN_QUERY_DEVICE_RELATIONS 
IRP_MN_QUERY_DEVICE_TEXT 
IRP_MN_QUERY_ID 
IRP_MN_QUERY_INTERFACE 
IRP_MN_QUERY_LEGACY_BUS_INFORMATION 
IRP_MN_QUERY_PNP_DEVICE_STATE 
IRP_MN_QUERY_REMOVE_DEVICE 
IRP_MN_QUERY_RESOURCE_REQUIREMENTS 
IRP_MN_QUERY_RESOURCES 
IRP_MN_QUERY_STOP_DEVICE 
IRP_MN_READ_CONFIG 
IRP_MN_REMOVE_DEVICE 
IRP_MN_SET_LOCK 
IRP_MN_START_DEVICE 
IRP_MN_STOP_DEVICE 
IRP_MN_SURPRISE_REMOVAL 
IRP_MN_WRITE_CONFIG 
第3章 即插即用結(jié)構(gòu) 
DEVICE_CAPABILITIES 
DEVICE_INTERFACE_CHANGE_NOTIFICATION 
HWPROFILE_CHANGE_NOTIFICATION 
LPGUID 
PLUGPLAY_NOTIFICATION_HEADER 
PNP_DEVICE_STATE 
TARGET_DEVICE_CUSTOM_NOTIFICATION 
TARGET_DEVICE_REMOVAL_NOTIFICATION 
第二部分 電源管理
第4章 電源管理支持例程 
PoCallDriver 
PoRegisterDeviceForIdleDetection 
PoRegisterSystemState 
PoRequestPowerIrp 
PoSetDeviceBusy 
PoSetPowerState 
PoSetSystemState
PoStartNextPowerIrp 
PoUnregisterSystemState 
第5章 電源管理的I/O請求 
IRP_MN_POWER_SEQUENCE 
IRP_MN_QUERY_POWER 
IRP_MN_SET_POWER 
IRP_MN_WAIT_WAKE 
第6章 電池類驅(qū)動程序例程 
BatteryClassInitializeDevice 
BatteryClassIoctl 
BatteryClassStatusNotify 
BatteryClassUnload 
第7章 電池微類驅(qū)動程序例程 
BatteryMiniDisableStatusNotify 
BatteryMiniQueryInformation 
BatteryMiniQueryStatus 
BatteryMiniQueryTag 
BatteryMiniSetInformation 
BatteryMiniSetStatusNotify
第8章 電池結(jié)構(gòu) 
BATTERY_INFORMATION 
BATTERY_MANUFACTURE_DATE 
BATTERY_REPORTING_SCALE 
第三部分 設(shè)置
第9章 INF文件節(jié)和命令 
INF文件的通用語法規(guī)則 
一個INF文件樣例 
INF節(jié)摘要 
INF命令摘要
INF Version 節(jié) 
INF SourceDisksNames 節(jié) 
INF SourceDisksFiles 節(jié) 
INF ClassInstall32 節(jié) 
INF DestinationDirs 節(jié)
INF ControlFlags 節(jié) 
INF Manufacturer 節(jié) 
INF Models 節(jié) 
INF DDInstall 節(jié) 
INF DDInstall.Services 節(jié) 
INF DDInstall.HW節(jié) 
INF DDInstall.CoInstallers 節(jié) 
INF DDInstall.Interfaces 節(jié) 
INF InterfaceInstall32節(jié) 
INF DDInstall.FactDef 節(jié) 
INF Strings 節(jié) 
INF AddReg 命令
INF DelReg 命令
INF CopyFiles 命令 
INF DelFiles 命令 
INF RenFiles 命令 
INF AddService 命令
INF DelService 命令
INF AddInterface 命令 
INF BitReg 命令 
INF LogConfig 命令 
INF ProfileItems 命令 
INF UpdateInis 命令 
INF UpdateIniFields 命令 
INF Ini2Reg 命令 
第10章 安裝函數(shù) 
INF 文件處理函數(shù) 
磁盤提示和錯誤處理函數(shù) 
文件隊列函數(shù) 
缺省隊列回調(diào)例程函數(shù) 
文件箱函數(shù) 
磁盤空間列表函數(shù) 
最常用源列表函數(shù) 
日志文件函數(shù) 
第11章 設(shè)備安裝函數(shù) 
更新驅(qū)動程序函數(shù) 
SetupDi 設(shè)備信息函數(shù) 
SetupDi 驅(qū)動程序信息函數(shù) 
SetupDi 驅(qū)動程序選擇函數(shù) 
SetupDi 設(shè)備安裝處理程序 
SetupDi 設(shè)備安裝定制函數(shù) 
SetupDi 安裝類函數(shù) 
SetupDi 類位圖和圖標(biāo)函數(shù) 
SetupDi 設(shè)備接口函數(shù) 
SetupDi 注冊函數(shù) 
其他SetupDi函數(shù) 
SetupDiAskForOEMDisk 
SetupDiBuildClassInfoList 
SetupDiBuildClassInfoListEx 
SetupDiBuildDriverInfoList 
SetupDiCallClassInstaller 
SetupDiCancelDriverInfoSearch 
SetupDiChangeState 
SetupDiClassGuidsFromName 
SetupDiClassGuidsFromNameEx 
SetupDiClassNameFromGuid 
SetupDiClassNameFromGuidEx 
SetupDiCreateDeviceInfo 
SetupDiCreateDeviceInfoList 
SetupDiCreateDeviceInfoListEx 
SetupDiCreateDeviceInterface 
SetupDiCreateDeviceInterfaceRegKey 
SetupDiCreateDevRegKey 
SetupDiDeleteDeviceInfo
SetupDiDeleteDeviceInterfaceData 
SetupDiDeleteDeviceInterfaceRegKey 
SetupDiDeleteDevRegKey 
SetupDiDestroyClassImageList 
SetupDiDestroyDeviceInfoList 
SetupDiDestroyDriverInfoList 
SetupDiDrawMiniIcon 
SetupDiEnumDeviceInfo 
SetupDiEnumDeviceInterfaces 
SetupDiEnumDriverInfo 
SetupDiGetActualSectionToInstall 
SetupDiGetClassBitmapIndex 
SetupDiGetClassDescription 
SetupDiGetClassDescriptionEx 
SetupDiGetClassDevs 
SetupDiGetClassDevsEx 
SetupDiGetClassImageIndex 
SetupDiGetClassImageList 
SetupDiGetClassImageListEx 
SetupDiGetClassInstallParams 
SetupDiGetDeviceInfoListClass
SetupDiGetDeviceInfoListDetail 
SetupDiGetDeviceInstallParams 
SetupDiGetDeviceInstanceId 
SetupDiGetDeviceInterfaceAlias 
SetupDiGetDeviceInterfaceDetail
SetupDiGetDeviceRegistryProperty 
SetupDiGetDriverInfoDetail 
SetupDiGetDriverInstallParams 
SetupDiGetHwProfileFriendlyName 
SetupDiGetHwProfileFriendlyNameEx 
SetupDiGetHwProfileList 
SetupDiGetHwProfileListEx 
SetupDiGetINFClass 
SetupDiGetSelectedDevice 
SetupDiGetSelectedDriver 
SetupDiGetWizardPage 
SetupDiInstallClass 
SetupDiInstallClassEx 
SetupDiInstallDevice 
SetupDiInstallDeviceInterfaces 
SetupDiInstallDriverFiles 
SetupDiLoadClassIcon 
SetupDiMoveDuplicateDevice 
SetupDiOpenClassRegKey 
SetupDiOpenClassRegKeyEx 
SetupDiOpenDeviceInfo 
SetupDiOpenDeviceInterface 
SetupDiOpenDeviceInterfaceRegKey 
SetupDiOpenDevRegKey 
SetupDiRegisterCoDeviceInstallers 
SetupDiRegisterDeviceInfo 
SetupDiRemoveDevice 
SetupDiRemoveDeviceInterface
SetupDiSelectBestCompatDrv 
SetupDiSelectDevice 
SetupDiSelectOEMDrv 
SetupDiSetClassInstallParams 
SetupDiSetDeviceInstallParams
SetupDiSetDeviceRegistryProperty 
SetupDiSetDriverInstallParams 
SetupDiSetSelectedDevice 
SetupDiSetSelectedDriver 
SetupDiUnremoveDevice 
UpdateDriverForPlugAndPlayDevices 
第12章 設(shè)備安裝結(jié)構(gòu) 
SP_ADDPROPERTYPAGE_DATA 
SP_CLASSIMAGELIST_DATA 
SP_CLASSINSTALL_HEADER 
SP_DETECTDEVICE_PARAMS 
SP_DEVICE_INTERFACE_DATA 
SP_DEVICE_INTERFACE_DETAIL_DATA 
SP_DEVINFO_DATA 
SP_DEVINFO_LIST_DETAIL_DATA 
SP_DEVINSTALL_PARAMS 
SP_DRVINFO_DATA 
SP_DRVINFO_DETAIL_DATA 
SP_DRVINSTALL_PARAMS 
SP_ENABLECLASS_PARAMS
SP_INSTALLWIZARD_DATA
SP_MOVEDEV_PARAMS 
SP_NEWDEVICEWIZARD_DATA 
SP_POWERMESSAGEWAKE_PARAMS 
SP_PROPCHANGE_PARAMS 
SP_PROPSHEETPAGE_REQUEST 
SP_REMOVEDEVICE_PARAMS 
SP_SELECTDEVICE_PARAMS 
SP_TROUBLESHOOTER_PARAMS 
SP_UNREMOVEDEVICE_PARAMS 
第13章 設(shè)備安裝函數(shù)代碼 
DIF_ADDPROPERTYPAGE_ADVANCED 
DIF_ALLOW_INSTALL 
DIF_DESTROYPRIVATEDATA 
DIF_DETECT 
DIF_INSTALLDEVICE 
DIF_INSTALLDEVICEFILES 
DIF_INSTALLINTERFACES 
DIF_NEWDEVICEWIZARD_FINIS_HINSTALL 
DIF_NEWDEVICEWIZARD_POSTA_NALYZE 
DIF_NEWDEVICEWIZARD_PREA_NALYZE 
DIF_NEWDEVICEWIZARD_PRESELECT 
DIF_NEWDEVICEWIZARD_SELECT 
DIF_POWERMESSAGEWAKE 
DIF_PROPERTYCHANGE 
DIF_REGISTER_COINSTALLERS 
DIF_REGISTERDEVICE 
DIF_REMOVE 
DIF_SELECTBESTCOMPATDRV 
DIF_SELECTDEVICE 
DIF_TROUBLESHOOTER 
DIF_UNREMOVE 
保留的DIF代碼
DIF_ADDPROPERTYPAGE_BASIC 
DIF_ASSIGNRESOURCES 
DIF_CALCDISKSPACE 
DIF_DETECTCANCEL 
DIF_DETECTVERIFY 
DIF_ENABLECLASS 
DIF_FIRSTTIMESETUP 
DIF_FOUNDDEVICE 
DIF_INSTALLCLASSDRIVERS 
DIF_MOVEDEVICE 
廢棄的DIF代碼 
DIF_DESTROYWIZARDDATA 
DIF_INSTALLWIZARD 
DIF_PROPERTIES 
DIF_SELECTCLASSDRIVERS 
DIF_VALIDATECLASSDRIVERS 
DIF_VALIDATEDRIVER 
第14章 PnP配置管理程序函數(shù) 
CM_Add_Empty_Log_Conf 
CM_Add_Empty_Log_Conf_Ex 
CM_Add_ID 
CM_Add_ID_Ex 
CM_Add_Res_Des 
CM_Add_Res_Des_Ex 
CM_Connect_Machine
CM_Disconnect_Machine 
CM_Enumerate_Classes 
CM_Enumerate_Classes_Ex 
CM_Enumerate_Enumerators
CM_Enumerate_Enumerators_Ex 
CM_Free_Log_Conf 
CM_Free_Log_Conf_Ex 
CM_Free_Log_Conf_Handle 
CM_Free_Res_Des 
CM_Free_Res_Des_Ex 
CM_Free_Res_Des_Handle 
CM_Free_Resource_Conflict_Handle 
CM_Get_Child 
CM_Get_Child_Ex 
CM_Get_Depth 
CM_Get_Depth_Ex 
CM_Get_Device_ID
CM_Get_Device_ID_Ex 
CM_Get_Device_ID_List 
CM_Get_Device_ID_List_Ex 
CM_Get_Device_ID_List_Size 
CM_Get_Device_ID_List_Size_Ex 
CM_Get_Device_ID_Size 
CM_Get_Device_ID_Size_Ex 
CM_Get_DevNode_Status 
CM_Get_DevNode_Status_Ex 
CM_Get_First_Log_Conf 
CM_Get_First_Log_Conf_Ex 
CM_Get_Log_Conf_Priority 
CM_Get_Log_Conf_Priority_Ex 
CM_Get_Next_Log_Conf 
CM_Get_Next_Log_Conf_Ex 
CM_Get_Next_Res_Des 
CM_Get_Next_Res_Des_Ex 
CM_Get_Parent 
CM_Get_Parent_Ex 
CM_Get_Res_Des_Data 
CM_Get_Res_Des_Data_Ex 
CM_Get_Res_Des_Data_Size 
CM_Get_Res_Des_Data_Size_Ex 
CM_Get_Resource_Conflict_Count 
CM_Get_Resource_Conflict_Details 
CM_Get_Sibling 
CM_Get_Sibling_Ex 
CM_Get_Version 
CM_Get_Version_Ex 
CM_Locate_DevNode 
CM_Locate_DevNode_Ex 
CM_Modify_Res_Des 
CM_Modify_Res_Des_Ex 
CM_Query_Resource_Conflict_List 
CM_Reenumerate_DevNode 
CM_Reenumerate_DevNode_Ex 
CM_Request_Device_Eject 
CM_Request_Device_Eject_Ex 
第15章 PnP配置管理程序結(jié)構(gòu)和類型 
資源描述符結(jié)構(gòu) 
BUSNUMBER_DES 
BUSNUMBER_RANGE 
BUSNUMBER_RESOURCE 
CS_DES 
CS_RESOURCE 
DEVPRIVATE_DES 
DEVPRIVATE_RANGE 
DEVPRIVATE_RESOURCE
DMA_DES 
DMA_RANGE 
DMA_RESOURCE 
IO_DES 
IO_RANGE 
IO_RESOURCE 
IRQ_DES 
IRQ_RANGE 
IRQ_RESOURCE 
MEM_DES 
MEM_RANGE 
MEM_RESOURCE 
MFCARD_DES 
MFCARD_RESOURCE 
PCCARD_DES 
PCCARD_RESOURCE 
其他的結(jié)構(gòu) 
CONFLICT_DETAILS 
PnP 配置管理程序類型 
PNP_VETO_TYPE 
第16章 設(shè)備安裝類 
第17章 txtsetup.oem文件格式 
txtsetup.oem文件中的Disks節(jié) 
txtsetup.oem文件中的Defaults節(jié) 
txtsetup.oem 文件中的HwComponent節(jié) 
txtsetup.oem 文件中的Files.HwComponent.ID節(jié) 
txtsetup.oem 文件中的Config.DriverKey節(jié) 
txtsetup.oem 文件中的HardwareIds.scsi.Service節(jié) 
第二篇 內(nèi)核模式驅(qū)動程序開發(fā)參考
第一部分 內(nèi)核模式支持例程
第1章 內(nèi)核模式支持例程概述 
初始化和卸載 
IRP 
同步
內(nèi)存
DMA 
PIO 
驅(qū)動程序管理隊列 
驅(qū)動程序系統(tǒng)線程 
串 
數(shù)據(jù)轉(zhuǎn)換 
訪問驅(qū)動程序管理的對象 
錯誤處理 
第2章 可執(zhí)行支持例程 
ExAcquireFastMutex 
ExAcquireFastMutexUnsafe 
ExAcquireResourceExclusive 
ExAcquireResourceExclusiveLite 
ExAcquireResourceShared 
ExAcquireResourceSharedLite 
ExAcquireSharedStarveExclusive 
ExAcquireSharedWaitForExclusive 
ExAllocateFromNPagedLookasideList 
ExAllocateFromPagedLookasideList 
ExAllocateFromZone 
ExAllocatePool 
ExAllocatePoolWithQuota 
ExAllocatePoolWithQuotaTag 
ExAllocatePoolWithTag 
ExAllocatePoolWithTagPriority 
ExConvertExclusiveToShared 
ExConvertExclusiveToSharedLite 
ExCreateCallback 
ExDeleteNPagedLookasideList 
ExDeletePagedLookasideList 
ExDeleteResource 
ExDeleteResourceLite 
ExExtendZone 
ExFreePool 
ExFreeToNPagedLookasideList 
ExFreeToPagedLookasideList 
ExFreeToZone 
ExGetCurrentResourceThread 
ExGetExclusiveWaiterCount 
ExGetPreviousMode 
ExGetSharedWaiterCount 
ExInitializeFastMutex 
ExInitializeNPagedLookasideList 
ExInitializePagedLookasideList 
ExInitializeResource 
ExInitializeResourceLite 
ExInitializeSListHead 
ExInitializeWorkItem 
ExInitializeZone 
ExInterlockedAddLargeInteger 
ExInterlockedAddLargeStatistic 
ExInterlockedAddUlong 
ExInterlockedAllocateFromZone 
ExInterlockedCompareExchange64
ExInterlockedDecrementLong 
ExInterlockedExchangeAddLargeInteger 
ExInterlockedExchangeUlong 
ExInterlockedExtendZone 
ExInterlockedFlushSList 
ExInterlockedFreeToZone 
ExInterlockedIncrementLong 
ExInterlockedInsertHeadList
ExInterlockedInsertTailList
ExInterlockedPopEntryList 
ExInterlockedPopEntrySList
ExInterlockedPushEntryList
ExInterlockedPushEntrySList 
ExInterlockedRemoveHeadList 
ExIsFullZone 
ExIsObjectInFirstZoneSegment 
ExIsProcessorFeaturePresent 
ExIsResourceAcquiredExclusive 
ExIsResourceAcquiredExclusiveLite 
ExIsResourceAcquiredSharedLite 
ExLocalTimeToSystemTime 
ExNotifyCallback 
ExQueryDepthSList
ExQueueWorkItem 
ExRaiseAccessViolation 
ExRaiseDatatypeMisalignment 
ExRaiseStatus 
ExRegisterCallback 
ExReinitializeResourceLite 
ExReleaseFastMutex 
ExReleaseFastMutexUnsafe 
ExReleaseResource 
ExReleaseResourceForThread 
ExReleaseResourceForThreadLite 
ExReleaseResourceLite 
ExSetResourceOwnerPointer 
ExSetTimerResolution 
ExSystemTimeToLocalTime 
ExTryToAcquireFastMutex 
ExTryToAcquireResourceExclusiveLite 
ExUnregisterCallback 
ExUnidCreate 
InterlockedCompareExchange 
InterlockedCompareExchangePointer 
InterlockedDecrement 
InterlockedExchange 
InterlockedExchangeAdd 
InterlockedExchangePointer 
InterlockedIncrement 
PAGED_CODE 
ProbeForRead 
ProbeForWrite
第3章 硬件抽象層例程 
AllocateAdapterChannel 
AllocateCommonBuffer 
FlushAdapterBuffers 
FreeAdapterChannel 
FreeCommonBuffer 
FreeMapRegisters 
GetDmaAlignment 
GetScatterGatherList 
HalAllocateCommonBuffer 
HalAssignSlotResources 
HalExamineMBR 
HalFreeCommonBuffer 
HalGetAdapter 
HalGetBusData 
HalGetBusDataByOffset 
HalGetDmaAlignmentRequirement 
HalGetInterruptVector 
HalReadDmaCounter 
HalSetBusData 
HalSetBusDataByOffset 
HalTranslateBusAddress
MapTransfer 
PutDmaAdapter 
PutScatterGatherList 
ReadDmaCounter 
READ_PORT_BUFFER_UCHAR 
READ_PORT_BUFFER_ULONG 
READ_PORT_BUFFER_USHORT
READ_PORT_UCHAR 
READ_PORT_ULONG 
READ_PORT_USHORT
READ_REGISTER_BUFFER_UCHAR 
READ_REGISTER_BUFFER_ULONG 
READ_REGISTER_BUFFER_USHORT
READ_REGISTER_UCHAR 
READ_REGISTER_ULONG 
READ_REGISTER_USHORT
WRITE_PORT_BUFFER_UCHAR 
WRITE_PORT_BUFFER_ULONG 
WRITE_PORT_BUFFER_USHORT
WRITE_PORT_UCHAR 
WRITE_PORT_ULONG 
WRITE_PORT_USHORT
WRITE_REGISTER_BUFFER_UCHAR 
WRITE_REGISTER_BUFFER_ULONG 
WRITE_REGISTER_BUFFER_USHORT
WRITE_REGISTER_UCHAR 
WRITE_REGISTER_ULONG 
WRITE_REGISTER_USHORT
第4章 I/O 管理程序例程 
IoAcquireCancelSpinLock
IoAcquireRemoveLock 
IoAcquireRemoveLockEx 
IoAdjustPagingPathCount 
IoAllocateAdapterChannel
IoAssignArcName 
IoAssignResources 
IoAttachDevice 
IoAttachDeviceByPointer 
IoAttachDeviceToDeviceStack 
IoBuildAsynchronousFsdRequest 
IoBuildDeviceIoControlRequest 
IoBuildPartialMdl 
IoBuildSynchronousFsdRequest 
IoCallDriver 
IoCancelIrp 
IoCheckShareAccess 
IoCompleteRequest 
IoConnectInterrupt
IoCopyCurrentIrpStackLocationToNext 
IoCreateController 
IoCreateDevice 
IoCreateFile 
IoCreateNotificationEvent 
IoCreateSymbolicLink 
IoCreateSynchronizationEvent 
IoCreateUnprotectedSymbolicLink 
IoDeassignArcName 
IoDeleteController
IoDeleteDevice 
IoDeleteSymbolicLink 
IoFreeAdapterChannel 
IoFreeController 
IoFreeIrp 
IoFreeMapRegisters 
IoFreeMdl 
IoFreeWorkItem 
IoGetAttachedDeviceReference 
IoGetBootDiskInformation 
IoGetConfigurationInformation 
IoGetCurrentIrpStackLocation 
IoGetCurrentProcess 
IoGetDeviceInterfaceAlias 
IoGetDeviceInterfaces 
IoGetDeviceObjectPointer 
IoGetDeviceProperty 
IoGetDeviceToVerify 
IoGetDmaAdapter 
IoGetDriverObjectExtension 
IoGetFileObjectGenericMapping 
IoGetFunctionCodeFromCtlCode 
IoGetInitialStack 
IoGetNextIrpStackLocation 
IoGetRelatedDeviceObject 
IoGetRemainingStackSize 
IoGetStackLimits 
IoInitializeDpcRequest 
IoInitializeIrp 
IoInitializeRemoveLock 
IoInitializeRemoveLockEx 
IoInitializeTimer 
IoInvalidateDeviceRelations 
IoInvalidateDeviceState 
IoIsErrorUserInduced 
IoIsWdmVersionAvailable 
IoMakeAssociatedIrp 
IoMapTransfer 
IoMarkIrpPending 
IoOpenDeviceInterfaceRegistryKey 
IoOpenDeviceRegistryKey 
IoQueryDeviceDescription
IoQueueWorkItem 
IoRaiseHardError
IoRaiseInformationalHardError 
IoReadPartitionTable 
IoRegisterDeviceInterface 
IoRegisterDriverReinitialization 
IoRegisterPlugPlayNotification 
IoRegisterShutdownNotification 
IoReleaseCancelSpinLock 
IoReleaseRemoveLock 
IoReleaseRemoveLockEx 
IoReleaseRemoveLockAndWait 
IoReleaseRemoveLockAndWaitEx 
IoRemoveShareAccess 
IoReportDetectedDevice 
IoReportResourceForDetection 
IoReportResourceUsage 
IoReportTargetDeviceChange 
IoReportTargetDeviceChangeAsynchronous 
IoRequestDeviceEject 
IoRequestDpc 
IoReuseIrp 
IoSetCancelRoutine 
IoSetCompletionRoutine 
IoSetDeviceInterfaceState 
IoSetHardErrorOrVerifyDevice 
IoSetNextIrpStackLocation 
IoSetPartitionInformation 
IoSetShareAccess 
IoSetThreadHardErrorMode 
IoSizeOfIrp 
IoSkipCurrentIrpStackLocation 
IoStartNextPacket 
IoStartNextPacketByKey 
IoStartPacket 
IoStartTimer 
IoStopTimer 
IoUnregisterPlugPlayNotification 
IoUnregisterShutdownNotification 
IoUpdateShareAccess 
IoWMIAllocateInstanceIds 
IoWMIDeviceObjectToProviderId 
IoWMIRegistrationControl 
IoWMISuggestInstanceName 
IoWMIWriteEvent 
IoWriteErrorLogEntry 
IoWritePartitionTable
第5章 內(nèi)核例程
KeAcquireSpinLock 
KeAcquireSpinLockAtDpcLevel 
KeBugCheck 
KeBugCheckEx 
KeCancelTimer
KeClearEvent 
KeDelayExecutionThread 
KeDeregisterBugCheckCallback 
KeEnterCriticalRegion 
KeFlushIoBuffers 
KeGetCurrentIrql 
KeGetCurrentProcessorNumber 
KeGetCurrentThread 
KeGetDcacheFillSize
KeInitializeCallbackRecord 
KeInitializeDeviceQueue 
KeInitializeDpc 
KeInitializeEvent 
KeInitializeMutex 
KeInitializeSemaphore 
KeInitializeSpinLock 
KeInitializeTimer 
KeInitializeTimerEx 
KeInsertByKeyDeviceQueue 
KeInsertDeviceQueue 
KeInsertQueueDpc 
KeLeaveCriticalRegion 
KeLowerIrql 
KePulseEvent
KeQueryInterruptTime 
KeQueryPerformanceCounter 
KeQueryPriorityThread 
KeQuerySystemTime 
KeQueryTickCount 
KeQueryTimeIncrement 
KeRaiseIrql 
KeRaiseIrqlToDpcLevel 
KeReadStateEvent 
KeReadStateMutex 
KeReadStateSemaphore 
KeReadStateTimer 
KeRegisterBugCheckCallback 
KeReleaseMutex 
KeReleaseSemaphore 
KeReleaseSpinLock 
KeReleaseSpinLockFromDpcLevel 
KeRemoveByKeyDeviceQueue 
KeRemoveDeviceQueue 
KeRemoveEntryDeviceQueue 
KeRemoveQueueDpc 
KeResetEvent 
KeRestoreFloatingPointState 
KeSaveFloatingPointState 
KeSetBasePriorityThread 
KeSetEvent 
KeSetImportanceDpc 
KeSetTargetProcessorDpc 
KeSetPriorityThread 
KeSetTimer 
KeSetTimerEx 
KeStallExecutionProcessor 
KeSynchronizeExecution 
KeWaitForMultipleObjects 
KeWaitForMutexObject 
KeWaitForSingleObject
第6章 內(nèi)存管理程序例程 
ADDRESS_AND_SIZE_TO_SPAN_PAGES 
ARGUMENT_PRESENT 
BYTE_OFFSET 
BYTES_TO_PAGES 
COMPUTE_PAGES_SPANNED 
CONTAINING_RECORD 
FIELD_OFFSET 
MmAllocateContiguousMemory 
MmAllocateContiguousMemorySpecifyCache 
MmAllocateNonCachedMemory 
MmAllocatePagesForMdl 
MmBuildMdlForNonPagedPool 
MmCreateMdl 
MmFreeContiguousMemory 
MmFreeContiguousMemorySpecityCache 
MmFreeNonCachedMemory 
MmFreePagesFromMdl 
MmGetMdlByteCount 
MmGetMdlByteOffset
MmGetMdlPfnArray 
MmGetMdlVirtualAddress 
MmGetPhysicalAddress 
MmGetSystemAddressForMdl 
MmGetSystemAddressForMdlSafe 
MmInitializeMdl 
MmIsAddressValid
MmIsNonPagedSystemAddressValid 
MmIsThisAnNtAsSystem 
MmLockPagableCodeSection 
MmLockPagableDataSection 
MmLockPagableSectionByHandle 
MmMapIoSpace 
MmMapLockedPages 
MmMapLockedPagesSpecifyCache 
MmPageEntireDriver 
MmResetDriverPaging
MmPrepareMdlForReuse 
MmProbeAndLockPages 
MmQuerySystemSize 
MmSizeOfMdl 
MmUnlockPages 
MmUnlockPagableImageSection 
MmUnmapIoSpace 
MmUnmapLockedPages 
PAGE_ALIGN 
ROUND_TO_PAGES 
第7章 對象管理程序例程 
ObDereferenceObject 
ObGetObjectSecurity 
ObReferenceObject 
ObReferenceObjectByHandle 
ObReferenceObjectByPointer
ObReleaseObjectSecurity 
第8章 進程結(jié)構(gòu)例程 
PsCreateSystemThread 
PsGetCurrentProcess 
PsGetCurrentProcessId 
PsGetCurrentThread 
PsGetCurrentThreadId 
PsGetVersion 
PsSetCreateProcessNotifyRoutine 
PsSetCreateThreadNotifyRoutine 
PsSetLoadImageNotifyRoutine 
PsTerminateSystemThread 
第9章 運行時庫例程 
InitializeListHead 
InitializeObjectAttributes 
InsertHeadList 
InsertTailList 
IsListEmpty 
PopEntryList
PushEntryList 
RemoveEntryList 
RemoveHeadList 
RemoveTailList 
RtlAnsiStringToUnicodeSize 
RtlAnsiStringToUnicodeString 
RtlAppendUnicodeStringToString 
RtlAppendUnicodeToString 
RtlAreBitsClear 
RtlAreBitsSet 
RtlCharToInteger 
RtlCheckBit 
RtlCheckRegistryKey 
RtlClearAllBits 
RtlClearBits 
RtlCompareMemory 
RtlCompareString 
RtlCompareUnicodeString 
RtlConvertLongToLargeInteger 
RtlConvertLongToLuid 
RtlConvertUlongToLargeInteger 
RtlConvertUlongToLuid 
RtlCopyBytes 
RtlCopyMemory
RtlCopyMemory32 
RtlCopyString 
RtlCopyUnicodeString 
RtlCreateRegistryKey 
RtlCreateSecurityDescriptor 
RtlDeleteRegistryValue 
RtlEnlargedIntegerMultiply 
RtlEnlargedUnsignedDivide 
RtlEnlargedUnsignedMultiply 
RtlEqualLuid 
RtlEqualMemory 
RtlEqualString 
RtlEqualUnicodeString 
RtlExtendedIntegerMultiply 
RtlExtendedLargeIntegerDivide 
RtlExtendedMagicDivide 
RtlFillBytes 
RtlFillMemory
RtlFindClearBits 
RtlFindClearBitsAndSet 
RtlFindClearRuns 
RtlFindFirstRunClear 
RtlFindLastBackwardRunClear 
RtlFindLeastSignificantBit 
RtlFindMostSignificantBit 
RtlFindLongestRunClear 
RtlFindNextForwardRunClear 
RtlFindSetBits 
RtlFindSetBitsAndClear 
RtlFreeAnsiString 
RtlFreeUnicodeString 
RtlGetVersion 
RtlGUIDFromString 
RtlInitAnsiString 
RtlInitializeBitMap 
RtlInitString 
RtlInitUnicodeString 
RtlInt64ToUnicodeString 
RtlIntegerToUnicodeString 
RtlIntPtrToUnicodeString 
RtlLargeIntegerAdd 
RtlLargeIntegerAnd 
RtlLargeIntegerArithmeticShift 
RtlLargeIntegerDivide 
RtlLargeIntegerEqualTo
RtlLargeIntegerEqualToZero 
RtlLargeIntegerGreaterThan 
RtlLargeIntegerGreaterThanOrEqualTo 
RtlLargeIntegerGreaterOrEqualToZero 
RtlLargeIntegerGreaterThanZero 
RtlLargeIntegerLessThan 
RtlLargeIntegerLessThanOrEqualTo 
RtlLargeIntegerLessOrEqualToZero 
RtlLargeIntegerLessThanZero 
RtlLargeIntegerNegate 
RtlLargeIntegerNotEqualTo 
RtlLargeIntegerNotEqualToZero 
RtlLargeIntegerShiftLeft 
RtlLargeIntegerShiftRight
RtlLargeIntegerSubtract 
RtlLengthSecurityDescriptor 
RtlMoveMemory 
RtlNumberOfClearBits 
RtlNumberOfSetBits 
RtlPrefixUnicodeString 
RtlQueryRegistryValues 
RtlRetrieveUlong 
RtlRetrieveUshort
RtlSetAllBits 
RtlSetBits 
RtlSetDaclSecurityDescriptor 
RtlStoreUlong 
RtlStoreUlonglong 
RtlStoreUlongPtr 
RtlStoreUshort 
RtlStringFromGUID 
RtlTimeFieldsToTime 
RtlTimeToTimeFields 
RtlUlongByteSwap 
RtlUlonglongByteSwap 
RtlUnicodeStringToAnsiSize 
RtlUnicodeStringToAnsiString 
RtlUnicodeStringToInteger 
RtlUpcaseUnicodeChar 
RtlUpcaseUnicodeString 
RtlUpperChar 
RtlUpperString 
RtlUshortByteSwap 
RtlValidSecurityDescriptor 
RtlVerifyVersionInfo 
RtlVolumeDeviceToDosName 
RtlWriteRegistryValue 
RtlxUnicodeStringToAnsiSize 
RtlZeroBytes 
RtlZeroMemory 
第10章 安全引用監(jiān)視器例程 
SeAccessCheck 
SeAssignSecurity 
SeAssignSecurityEx 
SeDeassignSecurity 
SeSinglePrivilegeCheck 
SeValidSecurityDescriptor 
第11章 ZwXxx例程 
ZwClose 
ZwCreateDirectoryObject 
ZwCreateFile 
ZwCreateKey 
ZwDeleteKey 
ZwEnumerateKey 
ZwEnumerateValueKey 
ZwFlushKey 
ZwMakeTemporaryObject
ZwMapViewOfSection 
ZwOpenFile 
ZwOpenKey 
ZwOpenSection 
ZwOpenSymbolicLinkObject 
ZwQueryInformationFile 
ZwQueryKey 
ZwQuerySymbolicLinkObject 
ZwQueryValueKey 
ZwReadFile 
ZwSetInformationFile 
ZwSetInformationThread 
ZwSetValueKey 
ZwUnmapViewOfSection 
ZwWriteFile 
第12章 系統(tǒng)結(jié)構(gòu) 
ANSI_STRING 
CM_EISA_FUNCTION_INFORMATION 
CM_EISA_SLOT_INFORMATION 
CM_FLOPPY_DEVICE_DATA 
CM_FULL_RESOURCE_DESCRIPTOR 
CM_INT13_DRIVE_PARAMETER 
CM_KEYBOARD_DEVICE_DATA 
CM_MCA_POS_DATA 
CM_PARTIAL_RESOURCE_DESCRIPTOR 
CM_PARTIAL_RESOURCE_LIST 
CM_RESOURCE_LIST 
CM_SCSI_DEVICE_DATA 
CM_SERIAL_DEVICE_DATA 
CONTROLLER_OBJECT 
DEVICE_DESCRIPTION
DEVICE_OBJECT 
DMA_ADAPTER 
DMA_OPERATIONS 
DRIVER_OBJECT 
FILE_ALIGNMENT_INFORMATION 
FILE_BASIC_INFORMATION 
FILE_DISPOSITION_INFORMATION 
FILE_END_OF_FILE_INFORMATION 
FILE_FS_DEVICE_INFORMATION 
FILE_FULL_EA_INFORMATION 
FILE_NAME_INFORMATION 
FILE_OBJECT 
FILE_POSITION_INFORMATION 
FILE_STANDARD_INFORMATION 
IO_RESOURCE_DESCRIPTOR 
IO_RESOURCE_LIST 
IO_RESOURCE_REQUIREMENTS_LIST 
IO_STACK_LOCATION 
IO_STATUS_BLOCK 
IRP 
KEY_BASIC_INFORMATION 
KEY_FULL_INFORMATION 
KEY_NODE_INFORMATION 
KEY_VALUE_BASIC_INFORMATION 
KEY_VALUE_FULL_INFORMATION 
KEY_VALUE_PARTIAL_INFORMATION 
OEM_STRING 
PCI_COMMON_CONFIG 
PCI_SLOT_NUMBER 
POOL_TYPE 
RTL_OSVERSIONINFOW 
RTL_OSVERSIONINFOEXW 
SCATTER_GATHER_LIST 
UNICODE_STRING 
第13章 IRP函數(shù)代碼和IOCTL 
根據(jù)設(shè)備對象類型決定需要的I/O支持 
公共I/O請求的輸入和輸出參數(shù) 
IRP_MJ_CLEANUP 
IRP_MJ_CLOSE 
IRP_MJ_CREATE 
IRP_MJ_DEVICE_CONTROL 
IRP_MJ_FLUSH_BUFFERS 
IRP_MJ_INTERNAL_DEVICE_CONTROL 
IRP_MJ_PNP 
IRP_MJ_POWER 
IRP_MJ_READ 
IRP_MJ_SHUTDOWN 
IRP_MJ_WRITE 
定義I/O控制代碼 
設(shè)備類型專有的I/O請求 
第二部分 串行和并行接口驅(qū)動程序
第14章 串行接口驅(qū)動程序參考 
Serial主要I/O請求 
IRP_MJ_CREATE 
IRP_MJ_DEVICE_CONTROL 
IRP_MJ_FLUSH_BUFFERS 
IRP_MJ_INTERNAL_DEVICE_CONTROL 
IRP_MJ_PNP 
IRP_MJ_POWER 
IRP_MJ_QUERY_INFORMATION 
IRP_MJ_READ 
IRP_MJ_SET_INFORMATION 
IRP_MJ_SYSTEM_CONTROL 
IRP_MJ_WRITE 
Serial設(shè)備控制請求 
IOCTL_SERIAL_CLEAR_STATS 
IOCTL_SERIAL_CLR_DTR 
IOCTL_SERIAL_CLR_RTS 
IOCTL_SERIAL_CONFIG_SIZE
IOCTL_SERIAL_GET_BAUD_RATE 
IOCTL_SERIAL_GET_CHARS 
IOCTL_SERIAL_GET_COMMSTATUS 
IOCTL_SERIAL_GET_DTRRTS 
IOCTL_SERIAL_GET_HANDFLOW 
IOCTL_SERIAL_GET_LINE_CONTROL 
IOCTL_SERIAL_GET_MODEM_CONTROL
IOCTL_SERIAL_GET_MODEMSTATUS 
IOCTL_SERIAL_GET_PROPERTIES 
IOCTL_SERIAL_GET_STATS 
IOCTL_SERIAL_GET_TIMEOUTS 
IOCTL_SERIAL_GET_WAIT_MASK
IOCTL_SERIAL_IMMEDIATE_CHAR 
IOCTL_SERIAL_LSRMST_INSERT 
IOCTL_SERIAL_PURGE 
IOCTL_SERIAL_RESET_DEVICE 
IOCTL_SERIAL_SET_BAUD_RATE
IOCTL_SERIAL_SET_BREAK_OFF
IOCTL_SERIAL_SET_BREAK_ON
IOCTL_SERIAL_SET_CHARS 
IOCTL_SERIAL_SET_DTR 
IOCTL_SERIAL_SET_FIFO_CONTROL 
IOCTL_SERIAL_SET_HANDFLOW 
IOCTL_SERIAL_SET_LINE_CONTROL 
IOCTL_SERIAL_SET_MODEM_CONTROL
IOCTL_SERIAL_SET_QUEUE_SIZE 
IOCTL_SERIAL_SET_RTS 
IOCTL_SERIAL_SET_TIMEOUTS 
IOCTL_SERIAL_SET_WAIT_MASK
IOCTL_SERIAL_SET_XOFF 
IOCTL_SERIAL_SET_XON 
IOCTL_SERIAL_WAIT_ON_MASK 
IOCTL_SERIAL_XOFF_COUNTER 
Serial內(nèi)部設(shè)備控制請求 
IOCTL_SERIAL_INTERNAL_BASIC_SETTINGS 
IOCTL_SERIAL_INTERNAL_CANCEL_WAIT_WAKE 
IOCTL_SERIAL_INTERNAL_DO_WAIT_WAKE 
IOCTL_SERIAL_INTERNAL_RESTORE_SETTINGS 
第15章 Serenum驅(qū)動程序參考 
Serenum設(shè)備控制請求 
IOCTL_SERENUM_PORT_DESC 
IOCTL_SERENUM_GET_PORT_NAME 
Serenum內(nèi)部設(shè)備控制請求 
IOCTL_INTERNAL_SERENUM_REMOVE_SELF 
第16章 Parport驅(qū)動程序參考 
Parport主要I/O請求 
IRP_MJ_CREATE 
IRP_MJ_INTERNAL_DEVICE_CONTROL
Parport內(nèi)部設(shè)備控制請求 
IOCTL_INTERNAL_DESELECT_DEVICE
IOCTL_INTERNAL_GET_MORE_PARALLEL_PORT_INFO 
IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO 
IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO 
IOCTL_INTERNAL_INIT_1284_3_BUS 
IOCTL_INTERNAL_PARALLEL_CLEAR_CHIP_MODE 
IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT 
IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT 
IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE 
IOCTL_INTERNAL_PARALLEL_PORT_FREE 
IOCTL_INTERNAL_PARALLEL_SET_CHIP_MODE 
IOCTL_INTERNAL_RELEASE_PARALLEL_PORT_INFO 
IOCTL_INTERNAL_SELECT_DEVICE 
IOCTL_INTERNAL_Xxx 
Parport數(shù)據(jù)類型 
MORE_PARALLEL_PORT_INFOR-MATION 
PARALLEL_1284_COMMAND 
PARALLEL_CHIP_MODE 
PARALLEL_PNP_INFORMATION 
PARALLEL_PORT_INFORMATION
PARALLEL_INTERRUPT_INFORMATION 
PARALLEL_INTERRUPT_SERVICE_ROUTINE 
Parport回調(diào)例程 
ClearChipMode 
DeselectDevice
FreePort 
FreePortFromInterruptLevel
QueryNumWaiters 
TryAllocatePort 
TryAllocatePortAtInterruptLevel 
TrySelectDevice 
TrySetChipMode 
第17章 Parclass驅(qū)動程序參考 
Parclass主要I/O請求 
IRP_MJ_CREATE 
IRP_MJ_DEVICE_CONTROL 
IRP_MJ_INTERNAL_DEVICE_CONTROL 
IRP_MJ_QUERY_INFORMATION 
IRP_MJ_READ 
IRP_MJ_WRITE
Parclass設(shè)備控制請求 
IOCTL_IEEE1284_GET_MODE
IOCTL_IEEE1284_NEGOTIATE 
IOCTL_PAR_GET_DEFAULT_MODES 
IOCTL_PAR_GET_DEVICE_CAPS 
IOCTL_PAR_IS_PORT_FREE 
IOCTL_PAR_QUERY_DEVICE_ID 
IOCTL_PAR_QUERY_DEVICE_ID_SIZE 
IOCTL_PAR_QUERY_INFORMATION 
IOCTL_PAR_QUERY_RAW_DEVICE_ID 
IOCTL_PAR_SET_INFORMATION 
IOCTL_PAR_SET_READ_ADDRESS
IOCTL_PAR_SET_WRITE_ADDRESS 
IOCTL_SERIAL_GET_TIMEOUTS 
IOCTL_SERIAL_SET_TIMEOUTS 
Parclass內(nèi)部設(shè)備控制請求 
IOCTL_INTERNAL_DISCONNECT_IDLE 
IOCTL_INTERNAL_LOCK_PORT 
IOCTL_INTERNAL_PARCLASS_CONNECT 
IOCTL_INTERNAL_PARCLASS_DISCONNECT 
IOCTL_INTERNAL_PARDOT3_CONNECT 
IOCTL_INTERNAL_PARDOT3_DISCONNECT 
IOCTL_INTERNAL_UNLOCK_PORT 
Parclass數(shù)據(jù)類型 
PAR_QUERY_INFORMATION 
PAR_SET_INFORMATION 
PARCLASS_INFORMATION
PARCLASS_NEGOTIATION_MASK 
Parclass回調(diào)例程 
DetermineIeeeModes 
IeeeFwdToRevMode 
IeeeRevToFwdMode 
NegotiateIeeeMode
ParallelRead 
ParallelWrite
TerminateIeeeMode 
第三部分 輸入設(shè)備的驅(qū)動程序
第18章 HID 輸入/輸出請求 
HID類驅(qū)動程序支持的I/O請求 
IOCTL_HID_GET_POLL_FREQUENCY_MSEC 
IOCTL_HID_SET_POLL_FREQUENCY_MSEC 
IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS 
IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS 
IOCTL_HID_GET_COLLECTION_INFORMATION 
IOCTL_HID_GET_COLLECTION_DESCRIPTOR 
IOCTL_HID_FLUSH_QUEUE 
IOCTL_HID_GET_FEATURE 
IOCTL_HID_SET_FEATURE 
IOCTL_GET_PHYSICAL_DESCRIPTOR 
IOCTL_HID_GET_HARDWARE_ID 
IOCTL_HID_GET_MANUFACTURER_STRING 
IOCTL_HID_GET_PRODUCT_STRING 
IOCTL_HID_GET_SERIALNUMBER_STRING 
IOCTL_HID_GET_INDEXED_STRING 
HID微驅(qū)動程序支持的I/O請求 
IOCTL_GET_PHYSICAL_DESCRIPTOR 
IOCTL_HID_ACTIVATE_DEVICE 
IOCTL_HID_DEACTIVATE_DEVICE 
IOCTL_HID_GET_DEVICE_ATTRIBUTES 
IOCTL_HID_GET_DEVICE_DESCRIPTOR 
IOCTL_HID_GET_FEATURE 
IOCTL_HID_GET_INDEXED_STRING 
IOCTL_HID_GET_REPORT_DESCRIPTOR 
IOCTL_HID_GET_STRING 
IOCTL_HID_READ_REPORT
IOCTL_HID_SET_FEATURE
IOCTL_HID_WRITE_REPORT 
第19章 客戶HID支持例程 
HidD_FlushQueue 
HidD_FreePreparsedData 
HidD_GetAttributes 
HidD_GetConfiguration 
HidD_GetFeature 
HidD_GetHidGuid 
HidD_GetIndexedString 
HidD_GetManufacturerString 
HidD_GetNumInputBuffers 
HidD_GetPhysicalDescriptor 
HidD_GetPreparsedData 
HidD_GetProductString 
HidD_GetSerialNumberString 
HidD_SetConfiguration 
HidD_SetFeature 
HidD_SetNumInputBuffers 
HidP_GetButtonCaps 
HidP_GetButtons 
HidP_GetButtonsEx 
HidP_GetCaps 
HidP_GetLinkCollectionNodes 
HidP_GetScaledUsageValue 
HidP_GetSpecificButtonCaps 
HidP_GetSpecificValueCaps 
HidP_GetUsageValue 
HidP_GetUsageValueArray 
HidP_GetValueCaps 
HidP_MaxUsageListLength 
HidP_SetButtons 
HidP_SetScaledUsageValue 
HidP_SetUsageValue 
HidP_SetUsageValueArray 
HidP_TranslateUsagesToI8042ScanCodes
HidP_UsageListDifference 
第20章 客戶HID結(jié)構(gòu) 
HID_COLLECTION_INFORMATION 
HIDP_COLLECTION_DESC 
HIDD_ATTRIBUTES 
HIDD_CONFIGURATION 
HIDP_BUTTON_CAPS 
HIDP_CAPS 
HIDP_LINK_COLLECTION_NODE 
HIDP_VALUE_CAPS 
USAGE_AND_PAGE 
第21章 微驅(qū)動程序HID支持例程 
HidRegisterMinidriver 
第22章 微驅(qū)動程序HID結(jié)構(gòu) 
HID_DEVICE_ATTRIBUTES 
HID_DEVICE_EXTENSION 
HID_MINIDRIVER_REGISTRATION 
HID_XFER_PACKET 
第23章 Kbdclass驅(qū)動程序參考 
Kbdclass主要I/O請求 
Kbdclass設(shè)備控制請求
Kbdclass類服務(wù)回調(diào)例程 
KeyboardClassServiceCallback
第24章 Mouclass驅(qū)動程序參考
Mouclass主要I/O請求 
IOCTL-Xxx設(shè)備控制請求 
Mouclass類服務(wù)回調(diào)例程
第25章 I8042prt驅(qū)動程序參考
I8042prt鍵盤主要I/O請求 
I8042prt鍵盤內(nèi)部設(shè)備控制請求 
I8042prt鼠標(biāo)主要I/O請求 
I8042prt鼠標(biāo)內(nèi)部設(shè)備控制請求 
I8042prt鍵盤回調(diào)例程 
I8042prt鼠標(biāo)回調(diào)例程 
第26章 Kbfiltr驅(qū)動程序參考 
Kbfiltr內(nèi)部設(shè)備控制請求 
Kbfiltr回調(diào)例程 
第27章 Moufiltr驅(qū)動程序參考 
Moufiltr內(nèi)部設(shè)備控制請求 
Moufiltr回調(diào)例程 
第四部分 USB驅(qū)動程序
第28章 USB客戶驅(qū)動程序I/O請求 
IOCTL_INTERNAL_USB_SUBMIT_URB 
IOCTL_INTERNAL_USB_RESET_PORT 
IOCTL_INTERNAL_USB_GET_PORT_STATUS 
IOCTL_INTERNAL_USB_ENABLE_PORT 
IOCTL_INTERNAL_USB_GET_HUB_COUNT 
IOCTL_INTERNAL_USB_CYCLE_PORT 
IOCTL_INTERNAL_USB_GET_ROOTHUB_PDO 
IOCTL_INTERNAL_USB_GET_HUB_NAME 
IOCTL_INTERNAL_USB_GET_BUS_INFO 
IOCTL_INTERNAL_USB_GET_CONTROLLER_NAME 
第29章 USB客戶支持例程 
GET_ISO_URB_SIZE 
GET_SELECT_CONFIGURATION_REQUEST_SIZE 
GET_SELECT_INTERFACE_REQUEST_SIZE 
GET_USBD_INTERFACE_SIZE 
UsbBuildFeatureRequest 
UsbBuildGetDescriptorRequest 
UsbBuildGetStatusRequest 
UsbBuildInterruptOrBulkTransferRequest 
UsbBuildSelectConfigurationRequest 
UsbBuildSelectInterfaceRequest 
UsbBuildVendorRequest 
USBD_CreateConfigurationRequest 
USBD_CreateConfigurationRequestEx 
USBD_GetInterfaceLength 
USBD_GetUSBDIVersion 
USBD_ParseConfigurationDescriptor 
USBD_ParseConfigurationDescriptorEx 
USBD_ParseDescriptors 
USBD_RegisterHcFilter 
第30章 USB結(jié)構(gòu) 
URB 
_URB_BULK_OR_INTERRUPT_TRANSFER 
_URB_CONTROL_DESCRIPTOR_REQUEST 
_URB_CONTROL_FEATURE_REQUEST 
_URB_CONTROL_GET_CONFIGURATIONREQUEST 
_URB_CONTROL_GET_INTERFACE_REQUEST 
_URB_CONTROL_GET_STATUS_REQUEST 
_URB_CONTROL_TRANSFER 
_URB_CONTROL_VENDOR_OR_CLASS_REQUEST 
_URB_FRAME_LENGTH_CONTROL 
_URB_GET_CURRENT_FRAME_NUMBER 
_URB_GET_FRAME_LENGTH 
_URB_HEADER 
_URB_ISOCH_TRANSFER 
_URB_PIPE_REQUEST 
_URB_SELECT_CONFIGURATION 
_URB_SELECT_INTERFACE 
_URB_SET_FRAME_LENGTH 
USB_CONFIGURATION_DESCRIPTOR 
USB_DEVICE_DESCRIPTOR 
USB_ENDPOINT_DESCRIPTOR 
USB_INTERFACE_DESCRIPTOR
USB_HUB_NAME 
USB_ROOT_HUB_NAME 
USB_STRING_DESCRIPTOR 
USBD_INTERFACE_INFORMATION 
USBD_INTERFACE_LIST_ENTRY 
USBD_PIPE_INFORMATION 
USBD_ISO_PACKET_DESCRIPTOR 
第五部分 IEEE 1394驅(qū)動程序
第31章 IEEE 1394總線I/O請求 
IOCTL_CLASS_1394 
REQUEST_ALLOCATE_ADDRESS_RANGE 
REQUEST_ASYNC_LOCK 
REQUEST_ASYNC_READ 
REQUEST_ASYNC_STREAM 
REQUEST_ASYNC_WRITE 
REQUEST_BUS_RESET 
REQUEST_BUS_RESET_NOTIFICATION 
REQUEST_CONTROL 
REQUEST_FREE_ADDRESS_RANGE 
REQUEST_GET_ADDR_FROM_DEVICE_OBJECT 
REQUEST_GET_CONFIGURATION_INFO 
REQUEST_GET_GENERATION_COUNT 
REQUEST_GET_LOCAL_HOST_INFO 
REQUEST_GET_SPEED_BETWEEN_DEVICES 
REQUEST_GET_SPEED_TOPOLOGY_MAPS 
REQUEST_ISOCH_ALLOCATE_BANDWIDTH 
REQUEST_ISOCH_ALLOCATE_CHANNEL 
REQUEST_ISOCH_ALLOCATE_RESOURCES 
REQUEST_ISOCH_ATTACH_BUFFERS 
REQUEST_ISOCH_DETACH_BUFFERS 
REQUEST_ISOCH_FREE_BANDWIDTH 
REQUEST_ISOCH_FREE_CHANNEL 
REQUEST_ISOCH_FREE_RESOURCES 
REQUEST_ISOCH_LISTEN 
REQUEST_ISOCH_QUERY_CYCLE_TIME 
REQUEST_ISOCH_QUERY_RESOURCES 
REQUEST_ISOCH_SET_CHANNEL_BANDWIDTH 
REQUEST_ISOCH_STOP 
REQUEST_ISOCH_TALK 
REQUEST_SEND_PHY_CONFIG_PACKET 
REQUEST_SET_DEVICE_XMIT_PROPERTIES 
REQUEST_SET_LOCAL_HOST_PROPERTIES 
第32章 IEEE 1394結(jié)構(gòu) 
ADDRESS_FIFO 
ADDRESS_OFFSET 
ADDRESS_RANGE 
CONFIG_ROM 
CYCLE_TIME 
GET_LOCAL_HOST_INFO1 
GET_LOCAL_HOST_INFO2 
GET_LOCAL_HOST_INFO3 
GET_LOCAL_HOST_INFO4 
GET_LOCAL_HOST_INFO5 
GET_LOCAL_HOST_INFO6 
IO_ADDRESS 
IRB 
ISOCH_DESCRIPTOR 
NODE_ADDRESS 
NOTIFICATION_INFO 
PHY_CONFIGURATION_PACKET 
SELF_ID 
SELF_ID_MORE 
SPEED_MAP 
TEXTUAL_LEAF 
TOPOLOGY_MAP 
第六部分 PCMCIA驅(qū)動程序 
第33章 PCMCIA_INTERFACE_STANDARD接口內(nèi)存卡例程 
PCMCIA_IS_WRITE_PROTECTED 
PCMCIA_MODIFY_MEMORY_WINDOW 
PCMCIA_SET_VPP 
第七部分 SMB客戶驅(qū)動程序
第34章 SMB IOCTL 
SMB_BUS_REQUEST 
SMB_DEREGISTER_ALARM_NOTIFY 
SMB_REGISTER_ALARM_NOTIFY 
第35章 SMB結(jié)構(gòu) 
SMB_CLASS 
SMB_REGISTER_ALARM 
SMB_REQUEST 
第八部分 WMI內(nèi)核模式數(shù)據(jù)提供者
第36章 WMI IRP 
IRP_MN_CHANGE_SINGLE_INSTANCE 
IRP_MN_CHANGE_SINGLE_ITEM 
IRP_MN_DISABLE_COLLECTION 
IRP_MN_DISABLE_EVENTS 
IRP_MN_ENABLE_COLLECTION 
IRP_MN_ENABLE_EVENTS 
IRP_MN_EXECUTE_METHOD
IRP_MN_QUERY_ALL_DATA
IRP_MN_QUERY_SINGLE_INSTANCE 
IRP_MN_REGINFO 
第37章 WMI庫支持例程 
WmiCompleteRequest 
WmiFireEvent 
WmiSystemControl 
第38章 WMI庫回調(diào)例程 
DpWmiExecuteMethod 
DpWmiFunctionControl 
DpWmiQueryDataBlock 
DpWmiQueryReginfo 
DpWmiSetDataBlock 
DpWmiSetDataItem 
第39章 WMI結(jié)構(gòu) 
WMILIB_CONTEXT 
WMIGUIDREGINFO 
WMIREGGUID 
WMIREGINFO 
WNODE_ALL_DATA 
WNODE_EVENT_ITEM 
WNODE_EVENT_REFERENCE 
WNODE_HEADER 
WNODE_METHOD_ITEM 
WNODE_SINGLE_INSTANCE 
WNODE_SINGLE_ITEM 
WNODE_TOO_SMALL 
第40章 WMI事件跟蹤結(jié)構(gòu) 
EVENT_TRACE_HEADER     “Windows 2000驅(qū)動程序開發(fā)大全”套書包括2卷,本書為套書的第2卷—參考手冊。
    本手冊由微軟公司提供,書中完整地描述了Windows 2000驅(qū)動模塊信息。全書分為二篇,第一篇是即插即用、電源管理和設(shè)置驅(qū)動程序開發(fā)參考,由即插即用、電源管理、設(shè)置三部分組成;第二篇是內(nèi)核模式驅(qū)動程序開發(fā)參考,由內(nèi)核模式支持例程、串行和并行接口驅(qū)動程序、輸入設(shè)備驅(qū)動程序、USB驅(qū)動程序、IEEE 1394驅(qū)動程序、PCMCIA驅(qū)動程序、SMB客戶驅(qū)動程序和WMI內(nèi)核模式數(shù)據(jù)提供者八部分組成。
    本書內(nèi)容全面、翔實,是Windows 2000驅(qū)動程序開發(fā)的權(quán)威參考資料。 
譯者序
第一篇 即插即用、電源管理和設(shè)置驅(qū)動程序開發(fā)參考
第一部分 即插即用
第1章 即插即用例程 
設(shè)備信息例程 
注冊例程 
設(shè)備接口例程 
PnP通知例程 
刪除鎖例程 
其他PnP例程
IoAcquireRemoveLock 
IoAcquireRemoveLockEx 
IoAdjustPagingPathCount 
IoGetDeviceInterfaceAlias 
IoGetDeviceInterfaces 
IoGetDeviceProperty 
IoInitializeRemoveLock 
IoInitializeRemoveLockEx 
IoInvalidateDeviceRelations 
IoInvalidateDeviceState 
IoOpenDeviceInterfaceRegistryKey 
IoOpenDeviceRegistryKey 
IoRegisterDeviceInterface 
IoRegisterPlugPlayNotification 
IoReleaseRemoveLock 
IoReleaseRemoveLockEx 
IoReleaseRemoveLockAndWait 
IoReleaseRemoveLockAndWaitEx 
IoReportDetectedDevice 
IoReportResourceForDetection 
IoReportTargetDeviceChange 
IoReportTargetDeviceChangeAsynchronous 
IoRequestDeviceEject 
IoSetDeviceInterfaceState 
IoUnregisterPlugPlayNotification 
第2章 即插即用IRP 
IRP_MN_CANCEL_REMOVE_DEVICE 
IRP_MN_CANCEL_STOP_DEVICE 
IRP_MN_DEVICE_USAGE_NOTIFICATION 
IRP_MN_EJECT 
IRP_MN_FILTER_RESOURCE_REQUIREMENTS 
IRP_MN_QUERY_BUS_INFORMATION 
IRP_MN_QUERY_CAPABILITIES 
IRP_MN_QUERY_DEVICE_RELATIONS 
IRP_MN_QUERY_DEVICE_TEXT 
IRP_MN_QUERY_ID 
IRP_MN_QUERY_INTERFACE 
IRP_MN_QUERY_LEGACY_BUS_INFORMATION 
IRP_MN_QUERY_PNP_DEVICE_STATE 
IRP_MN_QUERY_REMOVE_DEVICE 
IRP_MN_QUERY_RESOURCE_REQUIREMENTS 
IRP_MN_QUERY_RESOURCES 
IRP_MN_QUERY_STOP_DEVICE 
IRP_MN_READ_CONFIG 
IRP_MN_REMOVE_DEVICE 
IRP_MN_SET_LOCK 
IRP_MN_START_DEVICE 
IRP_MN_STOP_DEVICE 
IRP_MN_SURPRISE_REMOVAL 
IRP_MN_WRITE_CONFIG 
第3章 即插即用結(jié)構(gòu) 
DEVICE_CAPABILITIES 
DEVICE_INTERFACE_CHANGE_NOTIFICATION 
HWPROFILE_CHANGE_NOTIFICATION 
LPGUID 
PLUGPLAY_NOTIFICATION_HEADER 
PNP_DEVICE_STATE 
TARGET_DEVICE_CUSTOM_NOTIFICATION 
TARGET_DEVICE_REMOVAL_NOTIFICATION 
第二部分 電源管理
第4章 電源管理支持例程 
PoCallDriver 
PoRegisterDeviceForIdleDetection 
PoRegisterSystemState 
PoRequestPowerIrp 
PoSetDeviceBusy 
PoSetPowerState 
PoSetSystemState
PoStartNextPowerIrp 
PoUnregisterSystemState 
第5章 電源管理的I/O請求 
IRP_MN_POWER_SEQUENCE 
IRP_MN_QUERY_POWER 
IRP_MN_SET_POWER 
IRP_MN_WAIT_WAKE 
第6章 電池類驅(qū)動程序例程 
BatteryClassInitializeDevice 
BatteryClassIoctl 
BatteryClassStatusNotify 
BatteryClassUnload 
第7章 電池微類驅(qū)動程序例程 
BatteryMiniDisableStatusNotify 
BatteryMiniQueryInformation 
BatteryMiniQueryStatus 
BatteryMiniQueryTag 
BatteryMiniSetInformation 
BatteryMiniSetStatusNotify
第8章 電池結(jié)構(gòu) 
BATTERY_INFORMATION 
BATTERY_MANUFACTURE_DATE 
BATTERY_REPORTING_SCALE 
第三部分 設(shè)置
第9章 INF文件節(jié)和命令 
INF文件的通用語法規(guī)則 
一個INF文件樣例 
INF節(jié)摘要 
INF命令摘要
INF Version 節(jié) 
INF SourceDisksNames 節(jié) 
INF SourceDisksFiles 節(jié) 
INF ClassInstall32 節(jié) 
INF DestinationDirs 節(jié)
INF ControlFlags 節(jié) 
INF Manufacturer 節(jié) 
INF Models 節(jié) 
INF DDInstall 節(jié) 
INF DDInstall.Services 節(jié) 
INF DDInstall.HW節(jié) 
INF DDInstall.CoInstallers 節(jié) 
INF DDInstall.Interfaces 節(jié) 
INF InterfaceInstall32節(jié) 
INF DDInstall.FactDef 節(jié) 
INF Strings 節(jié) 
INF AddReg 命令
INF DelReg 命令
INF CopyFiles 命令 
INF DelFiles 命令 
INF RenFiles 命令 
INF AddService 命令
INF DelService 命令
INF AddInterface 命令 
INF BitReg 命令 
INF LogConfig 命令 
INF ProfileItems 命令 
INF UpdateInis 命令 
INF UpdateIniFields 命令 
INF Ini2Reg 命令 
第10章 安裝函數(shù) 
INF 文件處理函數(shù) 
磁盤提示和錯誤處理函數(shù) 
文件隊列函數(shù) 
缺省隊列回調(diào)例程函數(shù) 
文件箱函數(shù) 
磁盤空間列表函數(shù) 
最常用源列表函數(shù) 
日志文件函數(shù) 
第11章 設(shè)備安裝函數(shù) 
更新驅(qū)動程序函數(shù) 
SetupDi 設(shè)備信息函數(shù) 
SetupDi 驅(qū)動程序信息函數(shù) 
SetupDi 驅(qū)動程序選擇函數(shù) 
SetupDi 設(shè)備安裝處理程序 
SetupDi 設(shè)備安裝定制函數(shù) 
SetupDi 安裝類函數(shù) 
SetupDi 類位圖和圖標(biāo)函數(shù) 
SetupDi 設(shè)備接口函數(shù) 
SetupDi 注冊函數(shù) 
其他SetupDi函數(shù) 
SetupDiAskForOEMDisk 
SetupDiBuildClassInfoList 
SetupDiBuildClassInfoListEx 
SetupDiBuildDriverInfoList 
SetupDiCallClassInstaller 
SetupDiCancelDriverInfoSearch 
SetupDiChangeState 
SetupDiClassGuidsFromName 
SetupDiClassGuidsFromNameEx 
SetupDiClassNameFromGuid 
SetupDiClassNameFromGuidEx 
SetupDiCreateDeviceInfo 
SetupDiCreateDeviceInfoList 
SetupDiCreateDeviceInfoListEx 
SetupDiCreateDeviceInterface 
SetupDiCreateDeviceInterfaceRegKey 
SetupDiCreateDevRegKey 
SetupDiDeleteDeviceInfo
SetupDiDeleteDeviceInterfaceData 
SetupDiDeleteDeviceInterfaceRegKey 
SetupDiDeleteDevRegKey 
SetupDiDestroyClassImageList 
SetupDiDestroyDeviceInfoList 
SetupDiDestroyDriverInfoList 
SetupDiDrawMiniIcon 
SetupDiEnumDeviceInfo 
SetupDiEnumDeviceInterfaces 
SetupDiEnumDriverInfo 
SetupDiGetActualSectionToInstall 
SetupDiGetClassBitmapIndex 
SetupDiGetClassDescription 
SetupDiGetClassDescriptionEx 
SetupDiGetClassDevs 
SetupDiGetClassDevsEx 
SetupDiGetClassImageIndex 
SetupDiGetClassImageList 
SetupDiGetClassImageListEx 
SetupDiGetClassInstallParams 
SetupDiGetDeviceInfoListClass
SetupDiGetDeviceInfoListDetail 
SetupDiGetDeviceInstallParams 
SetupDiGetDeviceInstanceId 
SetupDiGetDeviceInterfaceAlias 
SetupDiGetDeviceInterfaceDetail
SetupDiGetDeviceRegistryProperty 
SetupDiGetDriverInfoDetail 
SetupDiGetDriverInstallParams 
SetupDiGetHwProfileFriendlyName 
SetupDiGetHwProfileFriendlyNameEx 
SetupDiGetHwProfileList 
SetupDiGetHwProfileListEx 
SetupDiGetINFClass 
SetupDiGetSelectedDevice 
SetupDiGetSelectedDriver 
SetupDiGetWizardPage 
SetupDiInstallClass 
SetupDiInstallClassEx 
SetupDiInstallDevice 
SetupDiInstallDeviceInterfaces 
SetupDiInstallDriverFiles 
SetupDiLoadClassIcon 
SetupDiMoveDuplicateDevice 
SetupDiOpenClassRegKey 
SetupDiOpenClassRegKeyEx 
SetupDiOpenDeviceInfo 
SetupDiOpenDeviceInterface 
SetupDiOpenDeviceInterfaceRegKey 
SetupDiOpenDevRegKey 
SetupDiRegisterCoDeviceInstallers 
SetupDiRegisterDeviceInfo 
SetupDiRemoveDevice 
SetupDiRemoveDeviceInterface
SetupDiSelectBestCompatDrv 
SetupDiSelectDevice 
SetupDiSelectOEMDrv 
SetupDiSetClassInstallParams 
SetupDiSetDeviceInstallParams
SetupDiSetDeviceRegistryProperty 
SetupDiSetDriverInstallParams 
SetupDiSetSelectedDevice 
SetupDiSetSelectedDriver 
SetupDiUnremoveDevice 
UpdateDriverForPlugAndPlayDevices 
第12章 設(shè)備安裝結(jié)構(gòu) 
SP_ADDPROPERTYPAGE_DATA 
SP_CLASSIMAGELIST_DATA 
SP_CLASSINSTALL_HEADER 
SP_DETECTDEVICE_PARAMS 
SP_DEVICE_INTERFACE_DATA 
SP_DEVICE_INTERFACE_DETAIL_DATA 
SP_DEVINFO_DATA 
SP_DEVINFO_LIST_DETAIL_DATA 
SP_DEVINSTALL_PARAMS 
SP_DRVINFO_DATA 
SP_DRVINFO_DETAIL_DATA 
SP_DRVINSTALL_PARAMS 
SP_ENABLECLASS_PARAMS
SP_INSTALLWIZARD_DATA
SP_MOVEDEV_PARAMS 
SP_NEWDEVICEWIZARD_DATA 
SP_POWERMESSAGEWAKE_PARAMS 
SP_PROPCHANGE_PARAMS 
SP_PROPSHEETPAGE_REQUEST 
SP_REMOVEDEVICE_PARAMS 
SP_SELECTDEVICE_PARAMS 
SP_TROUBLESHOOTER_PARAMS 
SP_UNREMOVEDEVICE_PARAMS 
第13章 設(shè)備安裝函數(shù)代碼 
DIF_ADDPROPERTYPAGE_ADVANCED 
DIF_ALLOW_INSTALL 
DIF_DESTROYPRIVATEDATA 
DIF_DETECT 
DIF_INSTALLDEVICE 
DIF_INSTALLDEVICEFILES 
DIF_INSTALLINTERFACES 
DIF_NEWDEVICEWIZARD_FINIS_HINSTALL 
DIF_NEWDEVICEWIZARD_POSTA_NALYZE 
DIF_NEWDEVICEWIZARD_PREA_NALYZE 
DIF_NEWDEVICEWIZARD_PRESELECT 
DIF_NEWDEVICEWIZARD_SELECT 
DIF_POWERMESSAGEWAKE 
DIF_PROPERTYCHANGE 
DIF_REGISTER_COINSTALLERS 
DIF_REGISTERDEVICE 
DIF_REMOVE 
DIF_SELECTBESTCOMPATDRV 
DIF_SELECTDEVICE 
DIF_TROUBLESHOOTER 
DIF_UNREMOVE 
保留的DIF代碼
DIF_ADDPROPERTYPAGE_BASIC 
DIF_ASSIGNRESOURCES 
DIF_CALCDISKSPACE 
DIF_DETECTCANCEL 
DIF_DETECTVERIFY 
DIF_ENABLECLASS 
DIF_FIRSTTIMESETUP 
DIF_FOUNDDEVICE 
DIF_INSTALLCLASSDRIVERS 
DIF_MOVEDEVICE 
廢棄的DIF代碼 
DIF_DESTROYWIZARDDATA 
DIF_INSTALLWIZARD 
DIF_PROPERTIES 
DIF_SELECTCLASSDRIVERS 
DIF_VALIDATECLASSDRIVERS 
DIF_VALIDATEDRIVER 
第14章 PnP配置管理程序函數(shù) 
CM_Add_Empty_Log_Conf 
CM_Add_Empty_Log_Conf_Ex 
CM_Add_ID 
CM_Add_ID_Ex 
CM_Add_Res_Des 
CM_Add_Res_Des_Ex 
CM_Connect_Machine
CM_Disconnect_Machine 
CM_Enumerate_Classes 
CM_Enumerate_Classes_Ex 
CM_Enumerate_Enumerators
CM_Enumerate_Enumerators_Ex 
CM_Free_Log_Conf 
CM_Free_Log_Conf_Ex 
CM_Free_Log_Conf_Handle 
CM_Free_Res_Des 
CM_Free_Res_Des_Ex 
CM_Free_Res_Des_Handle 
CM_Free_Resource_Conflict_Handle 
CM_Get_Child 
CM_Get_Child_Ex 
CM_Get_Depth 
CM_Get_Depth_Ex 
CM_Get_Device_ID
CM_Get_Device_ID_Ex 
CM_Get_Device_ID_List 
CM_Get_Device_ID_List_Ex 
CM_Get_Device_ID_List_Size 
CM_Get_Device_ID_List_Size_Ex 
CM_Get_Device_ID_Size 
CM_Get_Device_ID_Size_Ex 
CM_Get_DevNode_Status 
CM_Get_DevNode_Status_Ex 
CM_Get_First_Log_Conf 
CM_Get_First_Log_Conf_Ex 
CM_Get_Log_Conf_Priority 
CM_Get_Log_Conf_Priority_Ex 
CM_Get_Next_Log_Conf 
CM_Get_Next_Log_Conf_Ex 
CM_Get_Next_Res_Des 
CM_Get_Next_Res_Des_Ex 
CM_Get_Parent 
CM_Get_Parent_Ex 
CM_Get_Res_Des_Data 
CM_Get_Res_Des_Data_Ex 
CM_Get_Res_Des_Data_Size 
CM_Get_Res_Des_Data_Size_Ex 
CM_Get_Resource_Conflict_Count 
CM_Get_Resource_Conflict_Details 
CM_Get_Sibling 
CM_Get_Sibling_Ex 
CM_Get_Version 
CM_Get_Version_Ex 
CM_Locate_DevNode 
CM_Locate_DevNode_Ex 
CM_Modify_Res_Des 
CM_Modify_Res_Des_Ex 
CM_Query_Resource_Conflict_List 
CM_Reenumerate_DevNode 
CM_Reenumerate_DevNode_Ex 
CM_Request_Device_Eject 
CM_Request_Device_Eject_Ex 
第15章 PnP配置管理程序結(jié)構(gòu)和類型 
資源描述符結(jié)構(gòu) 
BUSNUMBER_DES 
BUSNUMBER_RANGE 
BUSNUMBER_RESOURCE 
CS_DES 
CS_RESOURCE 
DEVPRIVATE_DES 
DEVPRIVATE_RANGE 
DEVPRIVATE_RESOURCE
DMA_DES 
DMA_RANGE 
DMA_RESOURCE 
IO_DES 
IO_RANGE 
IO_RESOURCE 
IRQ_DES 
IRQ_RANGE 
IRQ_RESOURCE 
MEM_DES 
MEM_RANGE 
MEM_RESOURCE 
MFCARD_DES 
MFCARD_RESOURCE 
PCCARD_DES 
PCCARD_RESOURCE 
其他的結(jié)構(gòu) 
CONFLICT_DETAILS 
PnP 配置管理程序類型 
PNP_VETO_TYPE 
第16章 設(shè)備安裝類 
第17章 txtsetup.oem文件格式 
txtsetup.oem文件中的Disks節(jié) 
txtsetup.oem文件中的Defaults節(jié) 
txtsetup.oem 文件中的HwComponent節(jié) 
txtsetup.oem 文件中的Files.HwComponent.ID節(jié) 
txtsetup.oem 文件中的Config.DriverKey節(jié) 
txtsetup.oem 文件中的HardwareIds.scsi.Service節(jié) 
第二篇 內(nèi)核模式驅(qū)動程序開發(fā)參考
第一部分 內(nèi)核模式支持例程
第1章 內(nèi)核模式支持例程概述 
初始化和卸載 
IRP 
同步
內(nèi)存
DMA 
PIO 
驅(qū)動程序管理隊列 
驅(qū)動程序系統(tǒng)線程 
串 
數(shù)據(jù)轉(zhuǎn)換 
訪問驅(qū)動程序管理的對象 
錯誤處理 
第2章 可執(zhí)行支持例程 
ExAcquireFastMutex 
ExAcquireFastMutexUnsafe 
ExAcquireResourceExclusive 
ExAcquireResourceExclusiveLite 
ExAcquireResourceShared 
ExAcquireResourceSharedLite 
ExAcquireSharedStarveExclusive 
ExAcquireSharedWaitForExclusive 
ExAllocateFromNPagedLookasideList 
ExAllocateFromPagedLookasideList 
ExAllocateFromZone 
ExAllocatePool 
ExAllocatePoolWithQuota 
ExAllocatePoolWithQuotaTag 
ExAllocatePoolWithTag 
ExAllocatePoolWithTagPriority 
ExConvertExclusiveToShared 
ExConvertExclusiveToSharedLite 
ExCreateCallback 
ExDeleteNPagedLookasideList 
ExDeletePagedLookasideList 
ExDeleteResource 
ExDeleteResourceLite 
ExExtendZone 
ExFreePool 
ExFreeToNPagedLookasideList 
ExFreeToPagedLookasideList 
ExFreeToZone 
ExGetCurrentResourceThread 
ExGetExclusiveWaiterCount 
ExGetPreviousMode 
ExGetSharedWaiterCount 
ExInitializeFastMutex 
ExInitializeNPagedLookasideList 
ExInitializePagedLookasideList 
ExInitializeResource 
ExInitializeResourceLite 
ExInitializeSListHead 
ExInitializeWorkItem 
ExInitializeZone 
ExInterlockedAddLargeInteger 
ExInterlockedAddLargeStatistic 
ExInterlockedAddUlong 
ExInterlockedAllocateFromZone 
ExInterlockedCompareExchange64
ExInterlockedDecrementLong 
ExInterlockedExchangeAddLargeInteger 
ExInterlockedExchangeUlong 
ExInterlockedExtendZone 
ExInterlockedFlushSList 
ExInterlockedFreeToZone 
ExInterlockedIncrementLong 
ExInterlockedInsertHeadList
ExInterlockedInsertTailList
ExInterlockedPopEntryList 
ExInterlockedPopEntrySList
ExInterlockedPushEntryList
ExInterlockedPushEntrySList 
ExInterlockedRemoveHeadList 
ExIsFullZone 
ExIsObjectInFirstZoneSegment 
ExIsProcessorFeaturePresent 
ExIsResourceAcquiredExclusive 
ExIsResourceAcquiredExclusiveLite 
ExIsResourceAcquiredSharedLite 
ExLocalTimeToSystemTime 
ExNotifyCallback 
ExQueryDepthSList
ExQueueWorkItem 
ExRaiseAccessViolation 
ExRaiseDatatypeMisalignment 
ExRaiseStatus 
ExRegisterCallback 
ExReinitializeResourceLite 
ExReleaseFastMutex 
ExReleaseFastMutexUnsafe 
ExReleaseResource 
ExReleaseResourceForThread 
ExReleaseResourceForThreadLite 
ExReleaseResourceLite 
ExSetResourceOwnerPointer 
ExSetTimerResolution 
ExSystemTimeToLocalTime 
ExTryToAcquireFastMutex 
ExTryToAcquireResourceExclusiveLite 
ExUnregisterCallback 
ExUnidCreate 
InterlockedCompareExchange 
InterlockedCompareExchangePointer 
InterlockedDecrement 
InterlockedExchange 
InterlockedExchangeAdd 
InterlockedExchangePointer 
InterlockedIncrement 
PAGED_CODE 
ProbeForRead 
ProbeForWrite
第3章 硬件抽象層例程 
AllocateAdapterChannel 
AllocateCommonBuffer 
FlushAdapterBuffers 
FreeAdapterChannel 
FreeCommonBuffer 
FreeMapRegisters 
GetDmaAlignment 
GetScatterGatherList 
HalAllocateCommonBuffer 
HalAssignSlotResources 
HalExamineMBR 
HalFreeCommonBuffer 
HalGetAdapter 
HalGetBusData 
HalGetBusDataByOffset 
HalGetDmaAlignmentRequirement 
HalGetInterruptVector 
HalReadDmaCounter 
HalSetBusData 
HalSetBusDataByOffset 
HalTranslateBusAddress
MapTransfer 
PutDmaAdapter 
PutScatterGatherList 
ReadDmaCounter 
READ_PORT_BUFFER_UCHAR 
READ_PORT_BUFFER_ULONG 
READ_PORT_BUFFER_USHORT
READ_PORT_UCHAR 
READ_PORT_ULONG 
READ_PORT_USHORT
READ_REGISTER_BUFFER_UCHAR 
READ_REGISTER_BUFFER_ULONG 
READ_REGISTER_BUFFER_USHORT
READ_REGISTER_UCHAR 
READ_REGISTER_ULONG 
READ_REGISTER_USHORT
WRITE_PORT_BUFFER_UCHAR 
WRITE_PORT_BUFFER_ULONG 
WRITE_PORT_BUFFER_USHORT
WRITE_PORT_UCHAR 
WRITE_PORT_ULONG 
WRITE_PORT_USHORT
WRITE_REGISTER_BUFFER_UCHAR 
WRITE_REGISTER_BUFFER_ULONG 
WRITE_REGISTER_BUFFER_USHORT
WRITE_REGISTER_UCHAR 
WRITE_REGISTER_ULONG 
WRITE_REGISTER_USHORT
第4章 I/O 管理程序例程 
IoAcquireCancelSpinLock
IoAcquireRemoveLock 
IoAcquireRemoveLockEx 
IoAdjustPagingPathCount 
IoAllocateAdapterChannel
IoAssignArcName 
IoAssignResources 
IoAttachDevice 
IoAttachDeviceByPointer 
IoAttachDeviceToDeviceStack 
IoBuildAsynchronousFsdRequest 
IoBuildDeviceIoControlRequest 
IoBuildPartialMdl 
IoBuildSynchronousFsdRequest 
IoCallDriver 
IoCancelIrp 
IoCheckShareAccess 
IoCompleteRequest 
IoConnectInterrupt
IoCopyCurrentIrpStackLocationToNext 
IoCreateController 
IoCreateDevice 
IoCreateFile 
IoCreateNotificationEvent 
IoCreateSymbolicLink 
IoCreateSynchronizationEvent 
IoCreateUnprotectedSymbolicLink 
IoDeassignArcName 
IoDeleteController
IoDeleteDevice 
IoDeleteSymbolicLink 
IoFreeAdapterChannel 
IoFreeController 
IoFreeIrp 
IoFreeMapRegisters 
IoFreeMdl 
IoFreeWorkItem 
IoGetAttachedDeviceReference 
IoGetBootDiskInformation 
IoGetConfigurationInformation 
IoGetCurrentIrpStackLocation 
IoGetCurrentProcess 
IoGetDeviceInterfaceAlias 
IoGetDeviceInterfaces 
IoGetDeviceObjectPointer 
IoGetDeviceProperty 
IoGetDeviceToVerify 
IoGetDmaAdapter 
IoGetDriverObjectExtension 
IoGetFileObjectGenericMapping 
IoGetFunctionCodeFromCtlCode 
IoGetInitialStack 
IoGetNextIrpStackLocation 
IoGetRelatedDeviceObject 
IoGetRemainingStackSize 
IoGetStackLimits 
IoInitializeDpcRequest 
IoInitializeIrp 
IoInitializeRemoveLock 
IoInitializeRemoveLockEx 
IoInitializeTimer 
IoInvalidateDeviceRelations 
IoInvalidateDeviceState 
IoIsErrorUserInduced 
IoIsWdmVersionAvailable 
IoMakeAssociatedIrp 
IoMapTransfer 
IoMarkIrpPending 
IoOpenDeviceInterfaceRegistryKey 
IoOpenDeviceRegistryKey 
IoQueryDeviceDescription
IoQueueWorkItem 
IoRaiseHardError
IoRaiseInformationalHardError 
IoReadPartitionTable 
IoRegisterDeviceInterface 
IoRegisterDriverReinitialization 
IoRegisterPlugPlayNotification 
IoRegisterShutdownNotification 
IoReleaseCancelSpinLock 
IoReleaseRemoveLock 
IoReleaseRemoveLockEx 
IoReleaseRemoveLockAndWait 
IoReleaseRemoveLockAndWaitEx 
IoRemoveShareAccess 
IoReportDetectedDevice 
IoReportResourceForDetection 
IoReportResourceUsage 
IoReportTargetDeviceChange 
IoReportTargetDeviceChangeAsynchronous 
IoRequestDeviceEject 
IoRequestDpc 
IoReuseIrp 
IoSetCancelRoutine 
IoSetCompletionRoutine 
IoSetDeviceInterfaceState 
IoSetHardErrorOrVerifyDevice 
IoSetNextIrpStackLocation 
IoSetPartitionInformation 
IoSetShareAccess 
IoSetThreadHardErrorMode 
IoSizeOfIrp 
IoSkipCurrentIrpStackLocation 
IoStartNextPacket 
IoStartNextPacketByKey 
IoStartPacket 
IoStartTimer 
IoStopTimer 
IoUnregisterPlugPlayNotification 
IoUnregisterShutdownNotification 
IoUpdateShareAccess 
IoWMIAllocateInstanceIds 
IoWMIDeviceObjectToProviderId 
IoWMIRegistrationControl 
IoWMISuggestInstanceName 
IoWMIWriteEvent 
IoWriteErrorLogEntry 
IoWritePartitionTable
第5章 內(nèi)核例程
KeAcquireSpinLock 
KeAcquireSpinLockAtDpcLevel 
KeBugCheck 
KeBugCheckEx 
KeCancelTimer
KeClearEvent 
KeDelayExecutionThread 
KeDeregisterBugCheckCallback 
KeEnterCriticalRegion 
KeFlushIoBuffers 
KeGetCurrentIrql 
KeGetCurrentProcessorNumber 
KeGetCurrentThread 
KeGetDcacheFillSize
KeInitializeCallbackRecord 
KeInitializeDeviceQueue 
KeInitializeDpc 
KeInitializeEvent 
KeInitializeMutex 
KeInitializeSemaphore 
KeInitializeSpinLock 
KeInitializeTimer 
KeInitializeTimerEx 
KeInsertByKeyDeviceQueue 
KeInsertDeviceQueue 
KeInsertQueueDpc 
KeLeaveCriticalRegion 
KeLowerIrql 
KePulseEvent
KeQueryInterruptTime 
KeQueryPerformanceCounter 
KeQueryPriorityThread 
KeQuerySystemTime 
KeQueryTickCount 
KeQueryTimeIncrement 
KeRaiseIrql 
KeRaiseIrqlToDpcLevel 
KeReadStateEvent 
KeReadStateMutex 
KeReadStateSemaphore 
KeReadStateTimer 
KeRegisterBugCheckCallback 
KeReleaseMutex 
KeReleaseSemaphore 
KeReleaseSpinLock 
KeReleaseSpinLockFromDpcLevel 
KeRemoveByKeyDeviceQueue 
KeRemoveDeviceQueue 
KeRemoveEntryDeviceQueue 
KeRemoveQueueDpc 
KeResetEvent 
KeRestoreFloatingPointState 
KeSaveFloatingPointState 
KeSetBasePriorityThread 
KeSetEvent 
KeSetImportanceDpc 
KeSetTargetProcessorDpc 
KeSetPriorityThread 
KeSetTimer 
KeSetTimerEx 
KeStallExecutionProcessor 
KeSynchronizeExecution 
KeWaitForMultipleObjects 
KeWaitForMutexObject 
KeWaitForSingleObject
第6章 內(nèi)存管理程序例程 
ADDRESS_AND_SIZE_TO_SPAN_PAGES 
ARGUMENT_PRESENT 
BYTE_OFFSET 
BYTES_TO_PAGES 
COMPUTE_PAGES_SPANNED 
CONTAINING_RECORD 
FIELD_OFFSET 
MmAllocateContiguousMemory 
MmAllocateContiguousMemorySpecifyCache 
MmAllocateNonCachedMemory 
MmAllocatePagesForMdl 
MmBuildMdlForNonPagedPool 
MmCreateMdl 
MmFreeContiguousMemory 
MmFreeContiguousMemorySpecityCache 
MmFreeNonCachedMemory 
MmFreePagesFromMdl 
MmGetMdlByteCount 
MmGetMdlByteOffset
MmGetMdlPfnArray 
MmGetMdlVirtualAddress 
MmGetPhysicalAddress 
MmGetSystemAddressForMdl 
MmGetSystemAddressForMdlSafe 
MmInitializeMdl 
MmIsAddressValid
MmIsNonPagedSystemAddressValid 
MmIsThisAnNtAsSystem 
MmLockPagableCodeSection 
MmLockPagableDataSection 
MmLockPagableSectionByHandle 
MmMapIoSpace 
MmMapLockedPages 
MmMapLockedPagesSpecifyCache 
MmPageEntireDriver 
MmResetDriverPaging
MmPrepareMdlForReuse 
MmProbeAndLockPages 
MmQuerySystemSize 
MmSizeOfMdl 
MmUnlockPages 
MmUnlockPagableImageSection 
MmUnmapIoSpace 
MmUnmapLockedPages 
PAGE_ALIGN 
ROUND_TO_PAGES 
第7章 對象管理程序例程 
ObDereferenceObject 
ObGetObjectSecurity 
ObReferenceObject 
ObReferenceObjectByHandle 
ObReferenceObjectByPointer
ObReleaseObjectSecurity 
第8章 進程結(jié)構(gòu)例程 
PsCreateSystemThread 
PsGetCurrentProcess 
PsGetCurrentProcessId 
PsGetCurrentThread 
PsGetCurrentThreadId 
PsGetVersion 
PsSetCreateProcessNotifyRoutine 
PsSetCreateThreadNotifyRoutine 
PsSetLoadImageNotifyRoutine 
PsTerminateSystemThread 
第9章 運行時庫例程 
InitializeListHead 
InitializeObjectAttributes 
InsertHeadList 
InsertTailList 
IsListEmpty 
PopEntryList
PushEntryList 
RemoveEntryList 
RemoveHeadList 
RemoveTailList 
RtlAnsiStringToUnicodeSize 
RtlAnsiStringToUnicodeString 
RtlAppendUnicodeStringToString 
RtlAppendUnicodeToString 
RtlAreBitsClear 
RtlAreBitsSet 
RtlCharToInteger 
RtlCheckBit 
RtlCheckRegistryKey 
RtlClearAllBits 
RtlClearBits 
RtlCompareMemory 
RtlCompareString 
RtlCompareUnicodeString 
RtlConvertLongToLargeInteger 
RtlConvertLongToLuid 
RtlConvertUlongToLargeInteger 
RtlConvertUlongToLuid 
RtlCopyBytes 
RtlCopyMemory
RtlCopyMemory32 
RtlCopyString 
RtlCopyUnicodeString 
RtlCreateRegistryKey 
RtlCreateSecurityDescriptor 
RtlDeleteRegistryValue 
RtlEnlargedIntegerMultiply 
RtlEnlargedUnsignedDivide 
RtlEnlargedUnsignedMultiply 
RtlEqualLuid 
RtlEqualMemory 
RtlEqualString 
RtlEqualUnicodeString 
RtlExtendedIntegerMultiply 
RtlExtendedLargeIntegerDivide 
RtlExtendedMagicDivide 
RtlFillBytes 
RtlFillMemory
RtlFindClearBits 
RtlFindClearBitsAndSet 
RtlFindClearRuns 
RtlFindFirstRunClear 
RtlFindLastBackwardRunClear 
RtlFindLeastSignificantBit 
RtlFindMostSignificantBit 
RtlFindLongestRunClear 
RtlFindNextForwardRunClear 
RtlFindSetBits 
RtlFindSetBitsAndClear 
RtlFreeAnsiString 
RtlFreeUnicodeString 
RtlGetVersion 
RtlGUIDFromString 
RtlInitAnsiString 
RtlInitializeBitMap 
RtlInitString 
RtlInitUnicodeString 
RtlInt64ToUnicodeString 
RtlIntegerToUnicodeString 
RtlIntPtrToUnicodeString 
RtlLargeIntegerAdd 
RtlLargeIntegerAnd 
RtlLargeIntegerArithmeticShift 
RtlLargeIntegerDivide 
RtlLargeIntegerEqualTo
RtlLargeIntegerEqualToZero 
RtlLargeIntegerGreaterThan 
RtlLargeIntegerGreaterThanOrEqualTo 
RtlLargeIntegerGreaterOrEqualToZero 
RtlLargeIntegerGreaterThanZero 
RtlLargeIntegerLessThan 
RtlLargeIntegerLessThanOrEqualTo 
RtlLargeIntegerLessOrEqualToZero 
RtlLargeIntegerLessThanZero 
RtlLargeIntegerNegate 
RtlLargeIntegerNotEqualTo 
RtlLargeIntegerNotEqualToZero 
RtlLargeIntegerShiftLeft 
RtlLargeIntegerShiftRight
RtlLargeIntegerSubtract 
RtlLengthSecurityDescriptor 
RtlMoveMemory 
RtlNumberOfClearBits 
RtlNumberOfSetBits 
RtlPrefixUnicodeString 
RtlQueryRegistryValues 
RtlRetrieveUlong 
RtlRetrieveUshort
RtlSetAllBits 
RtlSetBits 
RtlSetDaclSecurityDescriptor 
RtlStoreUlong 
RtlStoreUlonglong 
RtlStoreUlongPtr 
RtlStoreUshort 
RtlStringFromGUID 
RtlTimeFieldsToTime 
RtlTimeToTimeFields 
RtlUlongByteSwap 
RtlUlonglongByteSwap 
RtlUnicodeStringToAnsiSize 
RtlUnicodeStringToAnsiString 
RtlUnicodeStringToInteger 
RtlUpcaseUnicodeChar 
RtlUpcaseUnicodeString 
RtlUpperChar 
RtlUpperString 
RtlUshortByteSwap 
RtlValidSecurityDescriptor 
RtlVerifyVersionInfo 
RtlVolumeDeviceToDosName 
RtlWriteRegistryValue 
RtlxUnicodeStringToAnsiSize 
RtlZeroBytes 
RtlZeroMemory 
第10章 安全引用監(jiān)視器例程 
SeAccessCheck 
SeAssignSecurity 
SeAssignSecurityEx 
SeDeassignSecurity 
SeSinglePrivilegeCheck 
SeValidSecurityDescriptor 
第11章 ZwXxx例程 
ZwClose 
ZwCreateDirectoryObject 
ZwCreateFile 
ZwCreateKey 
ZwDeleteKey 
ZwEnumerateKey 
ZwEnumerateValueKey 
ZwFlushKey 
ZwMakeTemporaryObject
ZwMapViewOfSection 
ZwOpenFile 
ZwOpenKey 
ZwOpenSection 
ZwOpenSymbolicLinkObject 
ZwQueryInformationFile 
ZwQueryKey 
ZwQuerySymbolicLinkObject 
ZwQueryValueKey 
ZwReadFile 
ZwSetInformationFile 
ZwSetInformationThread 
ZwSetValueKey 
ZwUnmapViewOfSection 
ZwWriteFile 
第12章 系統(tǒng)結(jié)構(gòu) 
ANSI_STRING 
CM_EISA_FUNCTION_INFORMATION 
CM_EISA_SLOT_INFORMATION 
CM_FLOPPY_DEVICE_DATA 
CM_FULL_RESOURCE_DESCRIPTOR 
CM_INT13_DRIVE_PARAMETER 
CM_KEYBOARD_DEVICE_DATA 
CM_MCA_POS_DATA 
CM_PARTIAL_RESOURCE_DESCRIPTOR 
CM_PARTIAL_RESOURCE_LIST 
CM_RESOURCE_LIST 
CM_SCSI_DEVICE_DATA 
CM_SERIAL_DEVICE_DATA 
CONTROLLER_OBJECT 
DEVICE_DESCRIPTION
DEVICE_OBJECT 
DMA_ADAPTER 
DMA_OPERATIONS 
DRIVER_OBJECT 
FILE_ALIGNMENT_INFORMATION 
FILE_BASIC_INFORMATION 
FILE_DISPOSITION_INFORMATION 
FILE_END_OF_FILE_INFORMATION 
FILE_FS_DEVICE_INFORMATION 
FILE_FULL_EA_INFORMATION 
FILE_NAME_INFORMATION 
FILE_OBJECT 
FILE_POSITION_INFORMATION 
FILE_STANDARD_INFORMATION 
IO_RESOURCE_DESCRIPTOR 
IO_RESOURCE_LIST 
IO_RESOURCE_REQUIREMENTS_LIST 
IO_STACK_LOCATION 
IO_STATUS_BLOCK 
IRP 
KEY_BASIC_INFORMATION 
KEY_FULL_INFORMATION 
KEY_NODE_INFORMATION 
KEY_VALUE_BASIC_INFORMATION 
KEY_VALUE_FULL_INFORMATION 
KEY_VALUE_PARTIAL_INFORMATION 
OEM_STRING 
PCI_COMMON_CONFIG 
PCI_SLOT_NUMBER 
POOL_TYPE 
RTL_OSVERSIONINFOW 
RTL_OSVERSIONINFOEXW 
SCATTER_GATHER_LIST 
UNICODE_STRING 
第13章 IRP函數(shù)代碼和IOCTL 
根據(jù)設(shè)備對象類型決定需要的I/O支持 
公共I/O請求的輸入和輸出參數(shù) 
IRP_MJ_CLEANUP 
IRP_MJ_CLOSE 
IRP_MJ_CREATE 
IRP_MJ_DEVICE_CONTROL 
IRP_MJ_FLUSH_BUFFERS 
IRP_MJ_INTERNAL_DEVICE_CONTROL 
IRP_MJ_PNP 
IRP_MJ_POWER 
IRP_MJ_READ 
IRP_MJ_SHUTDOWN 
IRP_MJ_WRITE 
定義I/O控制代碼 
設(shè)備類型專有的I/O請求 
第二部分 串行和并行接口驅(qū)動程序
第14章 串行接口驅(qū)動程序參考 
Serial主要I/O請求 
IRP_MJ_CREATE 
IRP_MJ_DEVICE_CONTROL 
IRP_MJ_FLUSH_BUFFERS 
IRP_MJ_INTERNAL_DEVICE_CONTROL 
IRP_MJ_PNP 
IRP_MJ_POWER 
IRP_MJ_QUERY_INFORMATION 
IRP_MJ_READ 
IRP_MJ_SET_INFORMATION 
IRP_MJ_SYSTEM_CONTROL 
IRP_MJ_WRITE 
Serial設(shè)備控制請求 
IOCTL_SERIAL_CLEAR_STATS 
IOCTL_SERIAL_CLR_DTR 
IOCTL_SERIAL_CLR_RTS 
IOCTL_SERIAL_CONFIG_SIZE
IOCTL_SERIAL_GET_BAUD_RATE 
IOCTL_SERIAL_GET_CHARS 
IOCTL_SERIAL_GET_COMMSTATUS 
IOCTL_SERIAL_GET_DTRRTS 
IOCTL_SERIAL_GET_HANDFLOW 
IOCTL_SERIAL_GET_LINE_CONTROL 
IOCTL_SERIAL_GET_MODEM_CONTROL
IOCTL_SERIAL_GET_MODEMSTATUS 
IOCTL_SERIAL_GET_PROPERTIES 
IOCTL_SERIAL_GET_STATS 
IOCTL_SERIAL_GET_TIMEOUTS 
IOCTL_SERIAL_GET_WAIT_MASK
IOCTL_SERIAL_IMMEDIATE_CHAR 
IOCTL_SERIAL_LSRMST_INSERT 
IOCTL_SERIAL_PURGE 
IOCTL_SERIAL_RESET_DEVICE 
IOCTL_SERIAL_SET_BAUD_RATE
IOCTL_SERIAL_SET_BREAK_OFF
IOCTL_SERIAL_SET_BREAK_ON
IOCTL_SERIAL_SET_CHARS 
IOCTL_SERIAL_SET_DTR 
IOCTL_SERIAL_SET_FIFO_CONTROL 
IOCTL_SERIAL_SET_HANDFLOW 
IOCTL_SERIAL_SET_LINE_CONTROL 
IOCTL_SERIAL_SET_MODEM_CONTROL
IOCTL_SERIAL_SET_QUEUE_SIZE 
IOCTL_SERIAL_SET_RTS 
IOCTL_SERIAL_SET_TIMEOUTS 
IOCTL_SERIAL_SET_WAIT_MASK
IOCTL_SERIAL_SET_XOFF 
IOCTL_SERIAL_SET_XON 
IOCTL_SERIAL_WAIT_ON_MASK 
IOCTL_SERIAL_XOFF_COUNTER 
Serial內(nèi)部設(shè)備控制請求 
IOCTL_SERIAL_INTERNAL_BASIC_SETTINGS 
IOCTL_SERIAL_INTERNAL_CANCEL_WAIT_WAKE 
IOCTL_SERIAL_INTERNAL_DO_WAIT_WAKE 
IOCTL_SERIAL_INTERNAL_RESTORE_SETTINGS 
第15章 Serenum驅(qū)動程序參考 
Serenum設(shè)備控制請求 
IOCTL_SERENUM_PORT_DESC 
IOCTL_SERENUM_GET_PORT_NAME 
Serenum內(nèi)部設(shè)備控制請求 
IOCTL_INTERNAL_SERENUM_REMOVE_SELF 
第16章 Parport驅(qū)動程序參考 
Parport主要I/O請求 
IRP_MJ_CREATE 
IRP_MJ_INTERNAL_DEVICE_CONTROL
Parport內(nèi)部設(shè)備控制請求 
IOCTL_INTERNAL_DESELECT_DEVICE
IOCTL_INTERNAL_GET_MORE_PARALLEL_PORT_INFO 
IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO 
IOCTL_INTERNAL_GET_PARALLEL_PORT_INFO 
IOCTL_INTERNAL_INIT_1284_3_BUS 
IOCTL_INTERNAL_PARALLEL_CLEAR_CHIP_MODE 
IOCTL_INTERNAL_PARALLEL_CONNECT_INTERRUPT 
IOCTL_INTERNAL_PARALLEL_DISCONNECT_INTERRUPT 
IOCTL_INTERNAL_PARALLEL_PORT_ALLOCATE 
IOCTL_INTERNAL_PARALLEL_PORT_FREE 
IOCTL_INTERNAL_PARALLEL_SET_CHIP_MODE 
IOCTL_INTERNAL_RELEASE_PARALLEL_PORT_INFO 
IOCTL_INTERNAL_SELECT_DEVICE 
IOCTL_INTERNAL_Xxx 
Parport數(shù)據(jù)類型 
MORE_PARALLEL_PORT_INFOR-MATION 
PARALLEL_1284_COMMAND 
PARALLEL_CHIP_MODE 
PARALLEL_PNP_INFORMATION 
PARALLEL_PORT_INFORMATION
PARALLEL_INTERRUPT_INFORMATION 
PARALLEL_INTERRUPT_SERVICE_ROUTINE 
Parport回調(diào)例程 
ClearChipMode 
DeselectDevice
FreePort 
FreePortFromInterruptLevel
QueryNumWaiters 
TryAllocatePort 
TryAllocatePortAtInterruptLevel 
TrySelectDevice 
TrySetChipMode 
第17章 Parclass驅(qū)動程序參考 
Parclass主要I/O請求 
IRP_MJ_CREATE 
IRP_MJ_DEVICE_CONTROL 
IRP_MJ_INTERNAL_DEVICE_CONTROL 
IRP_MJ_QUERY_INFORMATION 
IRP_MJ_READ 
IRP_MJ_WRITE
Parclass設(shè)備控制請求 
IOCTL_IEEE1284_GET_MODE
IOCTL_IEEE1284_NEGOTIATE 
IOCTL_PAR_GET_DEFAULT_MODES 
IOCTL_PAR_GET_DEVICE_CAPS 
IOCTL_PAR_IS_PORT_FREE 
IOCTL_PAR_QUERY_DEVICE_ID 
IOCTL_PAR_QUERY_DEVICE_ID_SIZE 
IOCTL_PAR_QUERY_INFORMATION 
IOCTL_PAR_QUERY_RAW_DEVICE_ID 
IOCTL_PAR_SET_INFORMATION 
IOCTL_PAR_SET_READ_ADDRESS
IOCTL_PAR_SET_WRITE_ADDRESS 
IOCTL_SERIAL_GET_TIMEOUTS 
IOCTL_SERIAL_SET_TIMEOUTS 
Parclass內(nèi)部設(shè)備控制請求 
IOCTL_INTERNAL_DISCONNECT_IDLE 
IOCTL_INTERNAL_LOCK_PORT 
IOCTL_INTERNAL_PARCLASS_CONNECT 
IOCTL_INTERNAL_PARCLASS_DISCONNECT 
IOCTL_INTERNAL_PARDOT3_CONNECT 
IOCTL_INTERNAL_PARDOT3_DISCONNECT 
IOCTL_INTERNAL_UNLOCK_PORT 
Parclass數(shù)據(jù)類型 
PAR_QUERY_INFORMATION 
PAR_SET_INFORMATION 
PARCLASS_INFORMATION
PARCLASS_NEGOTIATION_MASK 
Parclass回調(diào)例程 
DetermineIeeeModes 
IeeeFwdToRevMode 
IeeeRevToFwdMode 
NegotiateIeeeMode
ParallelRead 
ParallelWrite
TerminateIeeeMode 
第三部分 輸入設(shè)備的驅(qū)動程序
第18章 HID 輸入/輸出請求 
HID類驅(qū)動程序支持的I/O請求 
IOCTL_HID_GET_POLL_FREQUENCY_MSEC 
IOCTL_HID_SET_POLL_FREQUENCY_MSEC 
IOCTL_GET_NUM_DEVICE_INPUT_BUFFERS 
IOCTL_SET_NUM_DEVICE_INPUT_BUFFERS 
IOCTL_HID_GET_COLLECTION_INFORMATION 
IOCTL_HID_GET_COLLECTION_DESCRIPTOR 
IOCTL_HID_FLUSH_QUEUE 
IOCTL_HID_GET_FEATURE 
IOCTL_HID_SET_FEATURE 
IOCTL_GET_PHYSICAL_DESCRIPTOR 
IOCTL_HID_GET_HARDWARE_ID 
IOCTL_HID_GET_MANUFACTURER_STRING 
IOCTL_HID_GET_PRODUCT_STRING 
IOCTL_HID_GET_SERIALNUMBER_STRING 
IOCTL_HID_GET_INDEXED_STRING 
HID微驅(qū)動程序支持的I/O請求 
IOCTL_GET_PHYSICAL_DESCRIPTOR 
IOCTL_HID_ACTIVATE_DEVICE 
IOCTL_HID_DEACTIVATE_DEVICE 
IOCTL_HID_GET_DEVICE_ATTRIBUTES 
IOCTL_HID_GET_DEVICE_DESCRIPTOR 
IOCTL_HID_GET_FEATURE 
IOCTL_HID_GET_INDEXED_STRING 
IOCTL_HID_GET_REPORT_DESCRIPTOR 
IOCTL_HID_GET_STRING 
IOCTL_HID_READ_REPORT
IOCTL_HID_SET_FEATURE
IOCTL_HID_WRITE_REPORT 
第19章 客戶HID支持例程 
HidD_FlushQueue 
HidD_FreePreparsedData 
HidD_GetAttributes 
HidD_GetConfiguration 
HidD_GetFeature 
HidD_GetHidGuid 
HidD_GetIndexedString 
HidD_GetManufacturerString 
HidD_GetNumInputBuffers 
HidD_GetPhysicalDescriptor 
HidD_GetPreparsedData 
HidD_GetProductString 
HidD_GetSerialNumberString 
HidD_SetConfiguration 
HidD_SetFeature 
HidD_SetNumInputBuffers 
HidP_GetButtonCaps 
HidP_GetButtons 
HidP_GetButtonsEx 
HidP_GetCaps 
HidP_GetLinkCollectionNodes 
HidP_GetScaledUsageValue 
HidP_GetSpecificButtonCaps 
HidP_GetSpecificValueCaps 
HidP_GetUsageValue 
HidP_GetUsageValueArray 
HidP_GetValueCaps 
HidP_MaxUsageListLength 
HidP_SetButtons 
HidP_SetScaledUsageValue 
HidP_SetUsageValue 
HidP_SetUsageValueArray 
HidP_TranslateUsagesToI8042ScanCodes
HidP_UsageListDifference 
第20章 客戶HID結(jié)構(gòu) 
HID_COLLECTION_INFORMATION 
HIDP_COLLECTION_DESC 
HIDD_ATTRIBUTES 
HIDD_CONFIGURATION 
HIDP_BUTTON_CAPS 
HIDP_CAPS 
HIDP_LINK_COLLECTION_NODE 
HIDP_VALUE_CAPS 
USAGE_AND_PAGE 
第21章 微驅(qū)動程序HID支持例程 
HidRegisterMinidriver 
第22章 微驅(qū)動程序HID結(jié)構(gòu) 
HID_DEVICE_ATTRIBUTES 
HID_DEVICE_EXTENSION 
HID_MINIDRIVER_REGISTRATION 
HID_XFER_PACKET 
第23章 Kbdclass驅(qū)動程序參考 
Kbdclass主要I/O請求 
Kbdclass設(shè)備控制請求
Kbdclass類服務(wù)回調(diào)例程 
KeyboardClassServiceCallback
第24章 Mouclass驅(qū)動程序參考
Mouclass主要I/O請求 
IOCTL-Xxx設(shè)備控制請求 
Mouclass類服務(wù)回調(diào)例程
第25章 I8042prt驅(qū)動程序參考
I8042prt鍵盤主要I/O請求 
I8042prt鍵盤內(nèi)部設(shè)備控制請求 
I8042prt鼠標(biāo)主要I/O請求 
I8042prt鼠標(biāo)內(nèi)部設(shè)備控制請求 
I8042prt鍵盤回調(diào)例程 
I8042prt鼠標(biāo)回調(diào)例程 
第26章 Kbfiltr驅(qū)動程序參考 
Kbfiltr內(nèi)部設(shè)備控制請求 
Kbfiltr回調(diào)例程 
第27章 Moufiltr驅(qū)動程序參考 
Moufiltr內(nèi)部設(shè)備控制請求 
Moufiltr回調(diào)例程 
第四部分 USB驅(qū)動程序
第28章 USB客戶驅(qū)動程序I/O請求 
IOCTL_INTERNAL_USB_SUBMIT_URB 
IOCTL_INTERNAL_USB_RESET_PORT 
IOCTL_INTERNAL_USB_GET_PORT_STATUS 
IOCTL_INTERNAL_USB_ENABLE_PORT 
IOCTL_INTERNAL_USB_GET_HUB_COUNT 
IOCTL_INTERNAL_USB_CYCLE_PORT 
IOCTL_INTERNAL_USB_GET_ROOTHUB_PDO 
IOCTL_INTERNAL_USB_GET_HUB_NAME 
IOCTL_INTERNAL_USB_GET_BUS_INFO 
IOCTL_INTERNAL_USB_GET_CONTROLLER_NAME 
第29章 USB客戶支持例程 
GET_ISO_URB_SIZE 
GET_SELECT_CONFIGURATION_REQUEST_SIZE 
GET_SELECT_INTERFACE_REQUEST_SIZE 
GET_USBD_INTERFACE_SIZE 
UsbBuildFeatureRequest 
UsbBuildGetDescriptorRequest 
UsbBuildGetStatusRequest 
UsbBuildInterruptOrBulkTransferRequest 
UsbBuildSelectConfigurationRequest 
UsbBuildSelectInterfaceRequest 
UsbBuildVendorRequest 
USBD_CreateConfigurationRequest 
USBD_CreateConfigurationRequestEx 
USBD_GetInterfaceLength 
USBD_GetUSBDIVersion 
USBD_ParseConfigurationDescriptor 
USBD_ParseConfigurationDescriptorEx 
USBD_ParseDescriptors 
USBD_RegisterHcFilter 
第30章 USB結(jié)構(gòu) 
URB 
_URB_BULK_OR_INTERRUPT_TRANSFER 
_URB_CONTROL_DESCRIPTOR_REQUEST 
_URB_CONTROL_FEATURE_REQUEST 
_URB_CONTROL_GET_CONFIGURATIONREQUEST 
_URB_CONTROL_GET_INTERFACE_REQUEST 
_URB_CONTROL_GET_STATUS_REQUEST 
_URB_CONTROL_TRANSFER 
_URB_CONTROL_VENDOR_OR_CLASS_REQUEST 
_URB_FRAME_LENGTH_CONTROL 
_URB_GET_CURRENT_FRAME_NUMBER 
_URB_GET_FRAME_LENGTH 
_URB_HEADER 
_URB_ISOCH_TRANSFER 
_URB_PIPE_REQUEST 
_URB_SELECT_CONFIGURATION 
_URB_SELECT_INTERFACE 
_URB_SET_FRAME_LENGTH 
USB_CONFIGURATION_DESCRIPTOR 
USB_DEVICE_DESCRIPTOR 
USB_ENDPOINT_DESCRIPTOR 
USB_INTERFACE_DESCRIPTOR
USB_HUB_NAME 
USB_ROOT_HUB_NAME 
USB_STRING_DESCRIPTOR 
USBD_INTERFACE_INFORMATION 
USBD_INTERFACE_LIST_ENTRY 
USBD_PIPE_INFORMATION 
USBD_ISO_PACKET_DESCRIPTOR 
第五部分 IEEE 1394驅(qū)動程序
第31章 IEEE 1394總線I/O請求 
IOCTL_CLASS_1394 
REQUEST_ALLOCATE_ADDRESS_RANGE 
REQUEST_ASYNC_LOCK 
REQUEST_ASYNC_READ 
REQUEST_ASYNC_STREAM 
REQUEST_ASYNC_WRITE 
REQUEST_BUS_RESET 
REQUEST_BUS_RESET_NOTIFICATION 
REQUEST_CONTROL 
REQUEST_FREE_ADDRESS_RANGE 
REQUEST_GET_ADDR_FROM_DEVICE_OBJECT 
REQUEST_GET_CONFIGURATION_INFO 
REQUEST_GET_GENERATION_COUNT 
REQUEST_GET_LOCAL_HOST_INFO 
REQUEST_GET_SPEED_BETWEEN_DEVICES 
REQUEST_GET_SPEED_TOPOLOGY_MAPS 
REQUEST_ISOCH_ALLOCATE_BANDWIDTH 
REQUEST_ISOCH_ALLOCATE_CHANNEL 
REQUEST_ISOCH_ALLOCATE_RESOURCES 
REQUEST_ISOCH_ATTACH_BUFFERS 
REQUEST_ISOCH_DETACH_BUFFERS 
REQUEST_ISOCH_FREE_BANDWIDTH 
REQUEST_ISOCH_FREE_CHANNEL 
REQUEST_ISOCH_FREE_RESOURCES 
REQUEST_ISOCH_LISTEN 
REQUEST_ISOCH_QUERY_CYCLE_TIME 
REQUEST_ISOCH_QUERY_RESOURCES 
REQUEST_ISOCH_SET_CHANNEL_BANDWIDTH 
REQUEST_ISOCH_STOP 
REQUEST_ISOCH_TALK 
REQUEST_SEND_PHY_CONFIG_PACKET 
REQUEST_SET_DEVICE_XMIT_PROPERTIES 
REQUEST_SET_LOCAL_HOST_PROPERTIES 
第32章 IEEE 1394結(jié)構(gòu) 
ADDRESS_FIFO 
ADDRESS_OFFSET 
ADDRESS_RANGE 
CONFIG_ROM 
CYCLE_TIME 
GET_LOCAL_HOST_INFO1 
GET_LOCAL_HOST_INFO2 
GET_LOCAL_HOST_INFO3 
GET_LOCAL_HOST_INFO4 
GET_LOCAL_HOST_INFO5 
GET_LOCAL_HOST_INFO6 
IO_ADDRESS 
IRB 
ISOCH_DESCRIPTOR 
NODE_ADDRESS 
NOTIFICATION_INFO 
PHY_CONFIGURATION_PACKET 
SELF_ID 
SELF_ID_MORE 
SPEED_MAP 
TEXTUAL_LEAF 
TOPOLOGY_MAP 
第六部分 PCMCIA驅(qū)動程序 
第33章 PCMCIA_INTERFACE_STANDARD接口內(nèi)存卡例程 
PCMCIA_IS_WRITE_PROTECTED 
PCMCIA_MODIFY_MEMORY_WINDOW 
PCMCIA_SET_VPP 
第七部分 SMB客戶驅(qū)動程序
第34章 SMB IOCTL 
SMB_BUS_REQUEST 
SMB_DEREGISTER_ALARM_NOTIFY 
SMB_REGISTER_ALARM_NOTIFY 
第35章 SMB結(jié)構(gòu) 
SMB_CLASS 
SMB_REGISTER_ALARM 
SMB_REQUEST 
第八部分 WMI內(nèi)核模式數(shù)據(jù)提供者
第36章 WMI IRP 
IRP_MN_CHANGE_SINGLE_INSTANCE 
IRP_MN_CHANGE_SINGLE_ITEM 
IRP_MN_DISABLE_COLLECTION 
IRP_MN_DISABLE_EVENTS 
IRP_MN_ENABLE_COLLECTION 
IRP_MN_ENABLE_EVENTS 
IRP_MN_EXECUTE_METHOD
IRP_MN_QUERY_ALL_DATA
IRP_MN_QUERY_SINGLE_INSTANCE 
IRP_MN_REGINFO 
第37章 WMI庫支持例程 
WmiCompleteRequest 
WmiFireEvent 
WmiSystemControl 
第38章 WMI庫回調(diào)例程 
DpWmiExecuteMethod 
DpWmiFunctionControl 
DpWmiQueryDataBlock 
DpWmiQueryReginfo 
DpWmiSetDataBlock 
DpWmiSetDataItem 
第39章 WMI結(jié)構(gòu) 
WMILIB_CONTEXT 
WMIGUIDREGINFO 
WMIREGGUID 
WMIREGINFO 
WNODE_ALL_DATA 
WNODE_EVENT_ITEM 
WNODE_EVENT_REFERENCE 
WNODE_HEADER 
WNODE_METHOD_ITEM 
WNODE_SINGLE_INSTANCE 
WNODE_SINGLE_ITEM 
WNODE_TOO_SMALL 
第40章 WMI事件跟蹤結(jié)構(gòu) 
EVENT_TRACE_HEADER 

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號