#pragma warning(disable:4820)
#endif
+#define PROCESS_NAME_NATIVE 1
+
#define FILE_ENCRYPTABLE 0
#define FILE_IS_ENCRYPTED 1
#define FILE_SYSTEM_ATTR 2
#define QUERY_ACTCTX_FLAG_USE_ACTIVE_ACTCTX 0x00000004
#define QUERY_ACTCTX_FLAG_ACTCTX_IS_HMODULE 0x00000008
#define QUERY_ACTCTX_FLAG_ACTCTX_IS_ADDRESS 0x00000010
+#define QUERY_ACTCTX_FLAG_NO_ADDREF 0x80000000
#if (_WIN32_WINNT >= 0x0600)
#define SYMBOLIC_LINK_FLAG_DIRECTORY 0x1
#endif
WCHAR szHwProfileName[MAX_PROFILE_LEN];
} HW_PROFILE_INFOW,*LPHW_PROFILE_INFOW;
+/* Event Logging */
+
+#define EVENTLOG_FULL_INFO 0
+
+typedef struct _EVENTLOG_FULL_INFORMATION {
+ DWORD dwFull;
+} EVENTLOG_FULL_INFORMATION, *LPEVENTLOG_FULL_INFORMATION;
+
typedef enum _GET_FILEEX_INFO_LEVELS {
GetFileExInfoStandard,
GetFileExMaxInfoLevel
#if (_WIN32_WINNT >= 0x0501)
VOID WINAPI GetNativeSystemInfo(LPSYSTEM_INFO);
#endif
+BOOL WINAPI GetEventLogInformation(HANDLE,DWORD,LPVOID,DWORD,LPDWORD);
BOOL WINAPI GetNumberOfEventLogRecords(HANDLE,PDWORD);
BOOL WINAPI GetOldestEventLogRecord(HANDLE,PDWORD);
BOOL WINAPI GetOverlappedResult(HANDLE,LPOVERLAPPED,PDWORD,BOOL);
VOID WINAPI InitializeSListHead(PSLIST_HEADER);
USHORT WINAPI QueryDepthSList(PSLIST_HEADER);
+#ifdef _MSC_VER
+
+//
+// Intrinsics are a mess -- *sigh*
+//
+long _InterlockedCompareExchange(volatile long * const Destination, const long Exchange, const long Comperand);
+#pragma intrinsic(_InterlockedCompareExchange)
+#endif
+
#if !defined(InterlockedAnd)
#define InterlockedAnd InterlockedAnd_Inline
FORCEINLINE