#define RTL_SYSTEM_VOLUME_INFORMATION_FOLDER L"System Volume Information"
-#define DEVICE_TYPE ULONG
-
-#define FILE_DEVICE_BEEP 0x00000001
-#define FILE_DEVICE_CD_ROM 0x00000002
-#define FILE_DEVICE_CD_ROM_FILE_SYSTEM 0x00000003
-#define FILE_DEVICE_CONTROLLER 0x00000004
-#define FILE_DEVICE_DATALINK 0x00000005
-#define FILE_DEVICE_DFS 0x00000006
-#define FILE_DEVICE_DISK 0x00000007
-#define FILE_DEVICE_DISK_FILE_SYSTEM 0x00000008
-#define FILE_DEVICE_FILE_SYSTEM 0x00000009
-#define FILE_DEVICE_INPORT_PORT 0x0000000a
-#define FILE_DEVICE_KEYBOARD 0x0000000b
-#define FILE_DEVICE_MAILSLOT 0x0000000c
-#define FILE_DEVICE_MIDI_IN 0x0000000d
-#define FILE_DEVICE_MIDI_OUT 0x0000000e
-#define FILE_DEVICE_MOUSE 0x0000000f
-#define FILE_DEVICE_MULTI_UNC_PROVIDER 0x00000010
-#define FILE_DEVICE_NAMED_PIPE 0x00000011
-#define FILE_DEVICE_NETWORK 0x00000012
-#define FILE_DEVICE_NETWORK_BROWSER 0x00000013
-#define FILE_DEVICE_NETWORK_FILE_SYSTEM 0x00000014
-#define FILE_DEVICE_NULL 0x00000015
-#define FILE_DEVICE_PARALLEL_PORT 0x00000016
-#define FILE_DEVICE_PHYSICAL_NETCARD 0x00000017
-#define FILE_DEVICE_PRINTER 0x00000018
-#define FILE_DEVICE_SCANNER 0x00000019
-#define FILE_DEVICE_SERIAL_MOUSE_PORT 0x0000001a
-#define FILE_DEVICE_SERIAL_PORT 0x0000001b
-#define FILE_DEVICE_SCREEN 0x0000001c
-#define FILE_DEVICE_SOUND 0x0000001d
-#define FILE_DEVICE_STREAMS 0x0000001e
-#define FILE_DEVICE_TAPE 0x0000001f
-#define FILE_DEVICE_TAPE_FILE_SYSTEM 0x00000020
-#define FILE_DEVICE_TRANSPORT 0x00000021
-#define FILE_DEVICE_UNKNOWN 0x00000022
-#define FILE_DEVICE_VIDEO 0x00000023
-#define FILE_DEVICE_VIRTUAL_DISK 0x00000024
-#define FILE_DEVICE_WAVE_IN 0x00000025
-#define FILE_DEVICE_WAVE_OUT 0x00000026
-#define FILE_DEVICE_8042_PORT 0x00000027
-#define FILE_DEVICE_NETWORK_REDIRECTOR 0x00000028
-#define FILE_DEVICE_BATTERY 0x00000029
-#define FILE_DEVICE_BUS_EXTENDER 0x0000002a
-#define FILE_DEVICE_MODEM 0x0000002b
-#define FILE_DEVICE_VDM 0x0000002c
-#define FILE_DEVICE_MASS_STORAGE 0x0000002d
-#define FILE_DEVICE_SMB 0x0000002e
-#define FILE_DEVICE_KS 0x0000002f
-#define FILE_DEVICE_CHANGER 0x00000030
-#define FILE_DEVICE_SMARTCARD 0x00000031
-#define FILE_DEVICE_ACPI 0x00000032
-#define FILE_DEVICE_DVD 0x00000033
-#define FILE_DEVICE_FULLSCREEN_VIDEO 0x00000034
-#define FILE_DEVICE_DFS_FILE_SYSTEM 0x00000035
-#define FILE_DEVICE_DFS_VOLUME 0x00000036
-#define FILE_DEVICE_SERENUM 0x00000037
-#define FILE_DEVICE_TERMSRV 0x00000038
-#define FILE_DEVICE_KSEC 0x00000039
-#define FILE_DEVICE_FIPS 0x0000003A
-#define FILE_DEVICE_INFINIBAND 0x0000003B
-#define FILE_DEVICE_VMBUS 0x0000003E
-#define FILE_DEVICE_CRYPT_PROVIDER 0x0000003F
-#define FILE_DEVICE_WPD 0x00000040
-#define FILE_DEVICE_BLUETOOTH 0x00000041
-#define FILE_DEVICE_MT_COMPOSITE 0x00000042
-#define FILE_DEVICE_MT_TRANSPORT 0x00000043
-#define FILE_DEVICE_BIOMETRIC 0x00000044
-#define FILE_DEVICE_PMI 0x00000045
-
-#define CTL_CODE(DeviceType, Function, Method, Access) \
- (((DeviceType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method))
-
-#define DEVICE_TYPE_FROM_CTL_CODE(ctl) (((ULONG) (ctl & 0xffff0000)) >> 16)
-
#define METHOD_FROM_CTL_CODE(ctrlCode) ((ULONG)(ctrlCode & 3))
-#define METHOD_BUFFERED 0
-#define METHOD_IN_DIRECT 1
-#define METHOD_OUT_DIRECT 2
-#define METHOD_NEITHER 3
#define METHOD_DIRECT_TO_HARDWARE METHOD_IN_DIRECT
#define METHOD_DIRECT_FROM_HARDWARE METHOD_OUT_DIRECT
-#define FILE_ANY_ACCESS 0x00000000
-#define FILE_SPECIAL_ACCESS FILE_ANY_ACCESS
-#define FILE_READ_ACCESS 0x00000001
-#define FILE_WRITE_ACCESS 0x00000002
-
typedef ULONG LSA_OPERATIONAL_MODE, *PLSA_OPERATIONAL_MODE;
typedef enum _SECURITY_LOGON_TYPE {
#if (NTDDI_VERSION >= NTDDI_WIN2K)
-NTKERNELAPI
-VOID
-NTAPI
-SeCaptureSubjectContext(
- OUT PSECURITY_SUBJECT_CONTEXT SubjectContext);
-
-NTKERNELAPI
-VOID
-NTAPI
-SeLockSubjectContext(
- IN PSECURITY_SUBJECT_CONTEXT SubjectContext);
-
-NTKERNELAPI
-VOID
-NTAPI
-SeUnlockSubjectContext(
- IN PSECURITY_SUBJECT_CONTEXT SubjectContext);
-
NTKERNELAPI
VOID
NTAPI
extern NTKERNELAPI PSE_EXPORTS SeExports;
-#if !defined(_PSGETCURRENTTHREAD_)
-#define _PSGETCURRENTTHREAD_
-
-FORCEINLINE
-PETHREAD
-PsGetCurrentThread(
- VOID)
-{
- return (PETHREAD)KeGetCurrentThread();
-}
-#endif
-
#if (NTDDI_VERSION >= NTDDI_WIN2K)
NTKERNELAPI
IN PKEVENT Event,
OUT PIO_STATUS_BLOCK IoStatusBlock);
-NTKERNELAPI
-PDEVICE_OBJECT
-NTAPI
-IoGetAttachedDevice(
- IN PDEVICE_OBJECT DeviceObject);
-
-NTKERNELAPI
-PDEVICE_OBJECT
-NTAPI
-IoGetAttachedDeviceReference(
- IN PDEVICE_OBJECT DeviceObject);
-
NTKERNELAPI
PDEVICE_OBJECT
NTAPI
IoSetTopLevelIrp(
IN PIRP Irp OPTIONAL);
-NTKERNELAPI
-VOID
-NTAPI
-IoStartNextPacket(
- IN PDEVICE_OBJECT DeviceObject,
- IN BOOLEAN Cancelable);
-
-NTKERNELAPI
-VOID
-NTAPI
-IoStartNextPacketByKey(
- IN PDEVICE_OBJECT DeviceObject,
- IN BOOLEAN Cancelable,
- IN ULONG Key);
-
-NTKERNELAPI
-VOID
-NTAPI
-IoStartPacket(
- IN PDEVICE_OBJECT DeviceObject,
- IN PIRP Irp,
- IN PULONG Key OPTIONAL,
- IN PDRIVER_CANCEL CancelFunction OPTIONAL);
-
-NTKERNELAPI
-VOID
-NTAPI
-IoStartTimer(
- IN PDEVICE_OBJECT DeviceObject);
-
-NTKERNELAPI
-VOID
-NTAPI
-IoStopTimer(
- IN PDEVICE_OBJECT DeviceObject);
-
NTKERNELAPI
NTSTATUS
NTAPI
IN PDEVICE_OBJECT DeviceObject,
IN BOOLEAN AllowRawMount);
-NTKERNELAPI
-VOID
-NTAPI
-IoWriteErrorLogEntry(
- IN PVOID ElEntry);
-
NTKERNELAPI
NTSTATUS
NTAPI
IN PFILE_OBJECT FileObject,
OUT POBJECT_NAME_INFORMATION *ObjectNameInformation);
-VOID
-NTAPI
-IoSetStartIoAttributes(
- IN PDEVICE_OBJECT DeviceObject,
- IN BOOLEAN DeferredStartIo,
- IN BOOLEAN NonCancelable);
-
NTKERNELAPI
NTSTATUS
NTAPI
#define PO_CB_LID_SWITCH_STATE 4
#define PO_CB_PROCESSOR_POWER_POLICY 5
-#if (NTDDI_VERSION >= NTDDI_WIN2K)
-
-NTKERNELAPI
-PVOID
-NTAPI
-PoRegisterSystemState(
- IN OUT PVOID StateHandle OPTIONAL,
- IN EXECUTION_STATE Flags);
-
-NTKERNELAPI
-VOID
-NTAPI
-PoUnregisterSystemState(
- IN OUT PVOID StateHandle);
-
-NTKERNELAPI
-POWER_STATE
-NTAPI
-PoSetPowerState(
- IN PDEVICE_OBJECT DeviceObject,
- IN POWER_STATE_TYPE Type,
- IN POWER_STATE State);
-
-NTKERNELAPI
-NTSTATUS
-NTAPI
-PoCallDriver(
- IN PDEVICE_OBJECT DeviceObject,
- IN OUT PIRP Irp);
-
-NTKERNELAPI
-VOID
-NTAPI
-PoStartNextPowerIrp(
- IN OUT PIRP Irp);
-
-NTKERNELAPI
-PULONG
-NTAPI
-PoRegisterDeviceForIdleDetection(
- IN PDEVICE_OBJECT DeviceObject,
- IN ULONG ConservationIdleTime,
- IN ULONG PerformanceIdleTime,
- IN DEVICE_POWER_STATE State);
-
-#endif /* (NTDDI_VERSION >= NTDDI_WIN2K) */
-
#if (NTDDI_VERSION >= NTDDI_WINXP)
NTKERNELAPI
NTSTATUS
IN OUT PWORK_QUEUE_ITEM WorkItem);
#endif
-#if (NTDDI_VERSION >= NTDDI_WIN6SP1)
-NTKERNELAPI
-VOID
-NTAPI
-PoSetDeviceBusyEx(
- IN OUT PULONG IdlePointer);
-#endif
-
-#if (NTDDI_VERSION >= NTDDI_WIN7)
-
-NTKERNELAPI
-NTSTATUS
-NTAPI
-PoCreatePowerRequest(
- OUT PVOID *PowerRequest,
- IN PDEVICE_OBJECT DeviceObject,
- IN PCOUNTED_REASON_CONTEXT Context);
-
-NTKERNELAPI
-NTSTATUS
-NTAPI
-PoSetPowerRequest(
- IN OUT PVOID PowerRequest,
- IN POWER_REQUEST_TYPE Type);
-
-NTKERNELAPI
-NTSTATUS
-NTAPI
-PoClearPowerRequest(
- IN OUT PVOID PowerRequest,
- IN POWER_REQUEST_TYPE Type);
-
-NTKERNELAPI
-VOID
-NTAPI
-PoDeletePowerRequest(
- IN OUT PVOID PowerRequest);
-
-NTKERNELAPI
-VOID
-NTAPI
-PoStartDeviceBusy(
- IN OUT PULONG IdlePointer);
-
-NTKERNELAPI
-VOID
-NTAPI
-PoEndDeviceBusy(
- IN OUT PULONG IdlePointer);
-
-NTKERNELAPI
-BOOLEAN
-NTAPI
-PoQueryWatchdogTime(
- IN PDEVICE_OBJECT Pdo,
- OUT PULONG SecondsRemaining);
-
-#endif /* (NTDDI_VERSION >= NTDDI_WIN7) */
-
#if defined(_IA64_)
#if (NTDDI_VERSION >= NTDDI_WIN2K)
//DECLSPEC_DEPRECATED_DDK
IN BOOLEAN GenerateOnClose
);
-NTSYSAPI
-NTSTATUS
-NTAPI
-ZwCreateSection (
- OUT PHANDLE SectionHandle,
- IN ACCESS_MASK DesiredAccess,
- IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
- IN PLARGE_INTEGER MaximumSize OPTIONAL,
- IN ULONG SectionPageProtection,
- IN ULONG AllocationAttributes,
- IN HANDLE FileHandle OPTIONAL
-);
-
NTSYSAPI
NTSTATUS
NTAPI
IN PUNICODE_STRING TargetName
);
-NTSYSAPI
-NTSTATUS
-NTAPI
-ZwDeleteValueKey (
- IN HANDLE Handle,
- IN PUNICODE_STRING Name
-);
-
-
NTSYSAPI
NTSTATUS
NTAPI
#endif /* (VER_PRODUCTBUILD >= 2195) */
-NTSYSAPI
-NTSTATUS
-NTAPI
-ZwLoadDriver (
- /* "\\Registry\\Machine\\System\\CurrentControlSet\\Services\\<DriverName>" */
- IN PUNICODE_STRING RegistryPath
-);
-
NTSYSAPI
NTSTATUS
NTAPI
IN NTSTATUS ExitStatus
);
-NTSYSAPI
-NTSTATUS
-NTAPI
-ZwUnloadDriver (
- /* "\\Registry\\Machine\\System\\CurrentControlSet\\Services\\<DriverName>" */
- IN PUNICODE_STRING RegistryPath
-);
-
NTSYSAPI
NTSTATUS
NTAPI