File Index Symbol Index

/**************************************************************************** * * * minwindef.h -- Basic Windows Type Definitions for minwin partition * * * * Copyright (c) Microsoft Corporation. All rights reserved. * * * ****************************************************************************/
#ifndef _MINWINDEF_
#define _MINWINDEF_
#pragma once
#include <specstrings.h>
#include <winapifamily.h>
#pragma region Application Family or OneCore Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM)
#ifndef NO_STRICT
#ifndef STRICT
#define STRICT 1 #endif #endif /* NO_STRICT */
// Win32 defines _WIN32 automatically,
// but Macintosh doesn't, so if we are using
// Win32 Functions, we must do it here
#ifdef _MAC
#ifndef _WIN32
#define _WIN32
#endif
#endif //_MAC
#ifndef WIN32
#define WIN32
#endif
#ifdef __cplusplus
extern
"C"
{
#endif
/* * BASETYPES is defined in ntdef.h if these types are already defined */
#ifndef BASETYPES
#define BASETYPES
typedef
unsigned
long
ULONG
;
typedef
ULONG
*
PULONG
;
typedef
unsigned
short
USHORT
;
typedef
USHORT
*
PUSHORT
;
typedef
unsigned
char
UCHAR
;
typedef
UCHAR
*
PUCHAR
;
#define MAX_PATH 260
#ifndef NULL
#ifdef __cplusplus
#define NULL 0
#else
#define NULL ((void *)0)
#endif
#endif
#ifndef FALSE
#define FALSE 0 #endif
#ifndef TRUE
#define TRUE 1 #endif
#ifndef IN
#define IN #endif
#ifndef OUT
#define OUT #endif
#ifndef OPTIONAL
#define OPTIONAL #endif
#undef far
#undef near
#undef pascal
#define far
#define near
#if (!defined(_MAC)) && ((_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED))
#define pascal __stdcall
#else
#define pascal #endif
#if defined(DOSWIN32) || defined(_MAC)
#define cdecl _cdecl
#ifndef CDECL
#define CDECL _cdecl
#endif #else
#define cdecl
#ifndef CDECL
#define CDECL #endif #endif
#ifdef _MAC
#define CALLBACK PASCAL
#define WINAPI CDECL
#define WINAPIV CDECL
#define APIENTRY WINAPI
#define APIPRIVATE CDECL
#ifdef _68K_
#define PASCAL __pascal
#else
#define PASCAL
#endif
#elif (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED)
#define CALLBACK __stdcall
#define WINAPI __stdcall
#define WINAPIV __cdecl
#define APIENTRY WINAPI
#define APIPRIVATE __stdcall
#define PASCAL __stdcall
#else
#define CALLBACK
#define WINAPI
#define WINAPIV
#define APIENTRY WINAPI
#define APIPRIVATE
#define PASCAL pascal #endif
#ifndef _M_CEE_PURE
#ifndef WINAPI_INLINE
#define WINAPI_INLINE WINAPI #endif #endif
#undef FAR
#undef NEAR
#define FAR far
#define NEAR near
#ifndef CONST
#define CONST const #endif
typedef
unsigned
long
DWORD
;
typedef
int
BOOL
;
typedef
unsigned
char
BYTE
;
typedef
unsigned
short
WORD
;
typedef
float
FLOAT
;
typedef
FLOAT
*
PFLOAT
;
typedef
int
INT
;
typedef
unsigned
int
UINT
;
typedef
unsigned
int
*
PUINT
;
#ifndef NT_INCLUDED #include <winnt.h> #endif /* NT_INCLUDED */
/* Types use for passing & returning polymorphic values */
typedef
UINT_PTR
WPARAM
;
typedef
LONG_PTR
LPARAM
;
typedef
LONG_PTR
LRESULT
;
#ifndef NOMINMAX
#ifndef max
#define max(a,b) (((a) > (b)) ? (a) : (b)) #endif
#ifndef min
#define min(a,b) (((a) < (b)) ? (a) : (b)) #endif
#endif /* NOMINMAX */
#define MAKEWORD(a, b) ((WORD)(((BYTE)(((DWORD_PTR)(a)) & 0xff)) | ((WORD)((BYTE)(((DWORD_PTR)(b)) & 0xff))) << 8))
#define MAKELONG(a, b) ((LONG)(((WORD)(((DWORD_PTR)(a)) & 0xffff)) | ((DWORD)((WORD)(((DWORD_PTR)(b)) & 0xffff))) << 16))
#define LOWORD(l) ((WORD)(((DWORD_PTR)(l)) & 0xffff))
#define HIWORD(l) ((WORD)((((DWORD_PTR)(l)) >> 16) & 0xffff))
#define LOBYTE(w) ((BYTE)(((DWORD_PTR)(w)) & 0xff))
#define HIBYTE(w) ((BYTE)((((DWORD_PTR)(w)) >> 8) & 0xff))
typedef
HANDLE
HGLOBAL
;
typedef
HANDLE
HLOCAL
;
typedef
HANDLE
GLOBALHANDLE
;
typedef
HANDLE
LOCALHANDLE
;
#ifndef _MANAGED
#if _MSC_VER >= 1200
#pragma warning(push)
#ifndef _MAC
#ifdef _WIN64
typedef INT_PTR (FAR WINAPI *FARPROC)();
typedef INT_PTR (NEAR WINAPI *NEARPROC)();
typedef INT_PTR (WINAPI *PROC)();
#else
#else
typedef int (CALLBACK *FARPROC)();
typedef int (CALLBACK *NEARPROC)();
typedef int (CALLBACK *PROC)(); #endif
#if _MSC_VER >= 1200
#pragma warning(pop)
#endif
#else
typedef INT_PTR (WINAPI *FARPROC)(void);
typedef INT_PTR (WINAPI *NEARPROC)(void);
typedef INT_PTR (WINAPI *PROC)(void); #endif
typedef
WORD
ATOM
;
//BUGBUG - might want to remove this from minwin
typedef
HKEY
*
PHKEY
;
typedef
HINSTANCE
HMODULE
;
/* HMODULEs can be used in place of HINSTANCEs */
#ifndef _MAC
typedef
int
HFILE
;
#else
typedef short HFILE; #endif
//
// File System time stamps are represented with the following structure:
//
typedef
struct
_FILETIME
{
DWORD
dwLowDateTime
;
DWORD
dwHighDateTime
; }
FILETIME
, *
PFILETIME
, *
LPFILETIME
;
#define _FILETIME_
#ifdef __cplusplus
}
#endif
#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP | WINAPI_PARTITION_SYSTEM) */
#pragma endregion
#endif // _MINWINDEF_