#IFNDEF _VFP2C_H__
#DEFINE _VFP2C_H__

#DEFINE CRLF CHR(13) + CHR(10)
#DEFINE FLL_MAX_ARRAY_SIZE	65000 && vfp system limit

&& Initialization flags for InitVFP2C32()
#DEFINE VFP2C_INIT_MARSHAL	0x00000001
#DEFINE VFP2C_INIT_ENUM		0x00000002
#DEFINE VFP2C_INIT_ASYNC	0x00000004
#DEFINE VFP2C_INIT_FILE		0x00000008
#DEFINE VFP2C_INIT_WINSOCK	0x00000010
#DEFINE VFP2C_INIT_ODBC		0x00000020
#DEFINE VFP2C_INIT_PRINT	0x00000040
#DEFINE VFP2C_INIT_NETAPI	0x00000080
#DEFINE VFP2C_INIT_CALLBACK	0x00000100
#DEFINE VFP2C_INIT_SERVICES 0x00000200
#DEFINE VFP2C_INIT_WINDOWS	0x00000400
#DEFINE VFP2C_INIT_RAS		0x00000800
#DEFINE VFP2C_INIT_IPHELPER	0x00001000
#DEFINE VFP2C_INIT_URLMON	0x00002000
#DEFINE VFP2C_INIT_ALL		0xFFFFFFFF

#DEFINE E_INSUFMEMORY		43
#DEFINE E_INVALIDPARAMS		11
#DEFINE E_USERERROR			1098

#DEFINE SIZEOF_BYTE			1
#DEFINE SIZEOF_CHAR			1
#DEFINE SIZEOF_WCHAR		2
#DEFINE SIZEOF_SHORT		2
#DEFINE SIZEOF_INT			4
#DEFINE SIZEOF_LONG			4
#DEFINE SIZEOF_FLOAT		4
#DEFINE SIZEOF_POINTER		4
#DEFINE SIZEOF_DOUBLE		8
#DEFINE SIZEOF_INT64		8

#DEFINE CTYPE_SHORT			0
#DEFINE CTYPE_USHORT		1
#DEFINE CTYPE_INT			2
#DEFINE CTYPE_UINT			3
#DEFINE CTYPE_FLOAT			4
#DEFINE CTYPE_DOUBLE		5
#DEFINE CTYPE_BOOL			6
#DEFINE CTYPE_CSTRING		7
#DEFINE CTYPE_WSTRING		8
#DEFINE CTYPE_CHARARRAY		9
#DEFINE CTYPE_WCHARARRAY	10

#DEFINE MIN_CHAR	-128
#DEFINE MAX_CHAR	127
#DEFINE MIN_UCHAR	0
#DEFINE MAX_UCHAR	255
#DEFINE MIN_SHORT	-32768
#DEFINE MAX_SHORT	32767
#DEFINE MIN_USHORT	0
#DEFINE MAX_USHORT	65535
#DEFINE MIN_INT		-2147483648
#DEFINE MAX_INT		2147483647
#DEFINE MIN_UINT 	0
#DEFINE MAX_UINT 	4294967295

&& flags for AllocHGlobal & ReAllocHGlobal
#DEFINE GMEM_FIXED          0x0000
#DEFINE GMEM_MOVEABLE       0x0002
#DEFINE GMEM_ZEROINIT       0x0040
#DEFINE GMEM_MODIFY         0x0080

&& CodePages for Unicode string functions (ReadWString, ReadWCharArray, MarshalArrayWString ..)
#DEFINE CP_ACP			0           && default to ANSI code page
#DEFINE CP_OEMCP		1           && default to OEM  code page
#DEFINE CP_THREAD_ACP	3           && current thread's ANSI code page
#DEFINE CP_SYMBOL		42          && SYMBOL translations
#DEFINE CP_UTF7			65000       && UTF-7 translation
#DEFINE CP_UTF8			65001       && UTF-8 translation

&& CreateGUID
#DEFINE CREATE_GUID_ANSI	0
#DEFINE CREATE_GUID_UNICODE 	1
#DEFINE CREATE_GUID_BINARY	2

&& defines for SHBrowseFolder
#DEFINE BIF_RETURNONLYFSDIRS   0x0001  && For finding a folder to start document searching
#DEFINE BIF_DONTGOBELOWDOMAIN  0x0002  && For starting the Find Computer
#DEFINE BIF_STATUSTEXT         0x0004
&& Top of the dialog has 2 lines of text for BROWSEINFO.lpszTitle and one line if
&& this flag is set.  Passing the message BFFM_SETSTATUSTEXTA to the hwnd can set the
&& rest of the text.  This is not used with BIF_USENEWUI and BROWSEINFO.lpszTitle gets
&& all three lines of text.

#DEFINE BIF_RETURNFSANCESTORS  0x0008
#DEFINE BIF_EDITBOX            0x0010   && Add an editbox to the dialog
#DEFINE BIF_VALIDATE           0x0020   && insist on valid result (or CANCEL)
#DEFINE BIF_NEWDIALOGSTYLE     0x0040   && Use the new dialog layout with the ability to resize
                                        && Caller needs to call OleInitialize() before using this API
#DEFINE BIF_USENEWUI           0x0050	&& (BIF_NEWDIALOGSTYLE | BIF_EDITBOX)
#DEFINE BIF_BROWSEINCLUDEURLS  0x0080   && Allow URLs to be displayed or entered. (Requires BIF_USENEWUI)
#DEFINE BIF_UAHINT             0x0100   
&& Add a UA hint to the dialog, in place of the edit box. May not be combined with BIF_EDITBOX
#DEFINE BIF_NONEWFOLDERBUTTON  0x0200
&& Do not add the "New Folder" button to the dialog.  Only applicable with BIF_NEWDIALOGSTYLE.
#DEFINE BIF_NOTRANSLATETARGETS 0x0400  && don't traverse target as shortcut
#DEFINE BIF_BROWSEFORCOMPUTER  0x1000  && Browsing for Computers.
#DEFINE BIF_BROWSEFORPRINTER   0x2000  && Browsing for Printers
#DEFINE BIF_BROWSEINCLUDEFILES 0x4000  && Browsing for Everything
#DEFINE BIF_SHAREABLE          0x8000  && sharable resources displayed (remote shares, requires BIF_USENEWUI)

&& message from browser
#DEFINE BFFM_INITIALIZED        1
#DEFINE BFFM_SELCHANGED         2
#DEFINE BFFM_VALIDATEFAILEDA    3   && lParam:szPath ret:1(cont),0(EndDialog)
#DEFINE BFFM_VALIDATEFAILEDW    4   && lParam:wzPath ret:1(cont),0(EndDialog)
#DEFINE BFFM_IUNKNOWN           5   && provides IUnknown to client. lParam: IUnknown*

&& messages to browser
#DEFINE BFFM_SETSTATUSTEXTA     (WM_USER + 100)
#DEFINE BFFM_ENABLEOK           (WM_USER + 101)
#DEFINE BFFM_SETSELECTIONA      (WM_USER + 102)
#DEFINE BFFM_SETSELECTIONW      (WM_USER + 103)
#DEFINE BFFM_SETSTATUSTEXTW     (WM_USER + 104)
#DEFINE BFFM_SETOKTEXT          (WM_USER + 105) && Unicode only
#DEFINE BFFM_SETEXPANDED        (WM_USER + 106) && Unicode only

&& defines for GetOpenFileName/GetSaveFileName
#DEFINE OFN_READONLY                 0x00000001
#DEFINE OFN_OVERWRITEPROMPT          0x00000002
#DEFINE OFN_HIDEREADONLY             0x00000004
#DEFINE OFN_NOCHANGEDIR              0x00000008
#DEFINE OFN_SHOWHELP                 0x00000010
#DEFINE OFN_ENABLEHOOK               0x00000020
#DEFINE OFN_ENABLETEMPLATE           0x00000040
#DEFINE OFN_ENABLETEMPLATEHANDLE     0x00000080
#DEFINE OFN_NOVALIDATE               0x00000100
#DEFINE OFN_ALLOWMULTISELECT         0x00000200
#DEFINE OFN_EXTENSIONDIFFERENT       0x00000400
#DEFINE OFN_PATHMUSTEXIST            0x00000800
#DEFINE OFN_FILEMUSTEXIST            0x00001000
#DEFINE OFN_CREATEPROMPT             0x00002000
#DEFINE OFN_SHAREAWARE               0x00004000
#DEFINE OFN_NOREADONLYRETURN         0x00008000
#DEFINE OFN_NOTESTFILECREATE         0x00010000
#DEFINE OFN_NONETWORKBUTTON          0x00020000
#DEFINE OFN_NOLONGNAMES              0x00040000     && force no long names for 4.x modules
#DEFINE OFN_EXPLORER                 0x00080000     && new look commdlg
#DEFINE OFN_NODEREFERENCELINKS       0x00100000
#DEFINE OFN_LONGNAMES                0x00200000     && force long names for 3.x modules
#DEFINE OFN_ENABLEINCLUDENOTIFY      0x00400000     && send include message to callback
#DEFINE OFN_ENABLESIZING             0x00800000
#DEFINE OFN_DONTADDTORECENT          0x02000000
#DEFINE OFN_FORCESHOWHIDDEN          0x10000000     && Show All files including System and hidden files
#DEFINE OFN_EX_NOPLACESBAR			 0x00000001

&& defines for Registry functions
#DEFINE HKEY_CLASSES_ROOT			0x80000000
#DEFINE HKEY_CURRENT_USER			0x80000001
#DEFINE HKEY_LOCAL_MACHINE			0x80000002
#DEFINE HKEY_USERS					0x80000003
#DEFINE HKEY_PERFORMANCE_DATA		0x80000004
#DEFINE HKEY_PERFORMANCE_TEXT		0x80000050
#DEFINE HKEY_PERFORMANCE_NLSTEXT	0x80000060
#DEFINE HKEY_CURRENT_CONFIG			0x80000005
#DEFINE HKEY_DYN_DATA				0x80000006

#DEFINE REG_ENUMCLASSNAME	1
#DEFINE REG_ENUMWRITETIME	2
#DEFINE REG_ENUMTYPE		1
#DEFINE REG_ENUMVALUE		2

#DEFINE REG_DELETE_NORMAL	1
#DEFINE REG_DELETE_SHELL	2

&& access rights
*!* #DEFINE SYNCHRONIZE				0x00100000
*!* #DEFINE STANDARD_RIGHTS_READ	0x00020000
*!* #DEFINE STANDARD_RIGHTS_WRITE	0x00020000
*!* #DEFINE STANDARD_RIGHTS_EXECUTE	0x00020000
*!* #DEFINE STANDARD_RIGHTS_ALL		0x001F0000

#DEFINE KEY_QUERY_VALUE			0x0001
#DEFINE KEY_SET_VALUE           0x0002
#DEFINE KEY_CREATE_SUB_KEY      0x0004
#DEFINE KEY_ENUMERATE_SUB_KEYS  0x0008
#DEFINE KEY_NOTIFY              0x0010
#DEFINE KEY_CREATE_LINK         0x0020
#DEFINE KEY_WOW64_64KEY         0x0100
#DEFINE KEY_WOW64_32KEY         0x0200
#DEFINE KEY_WOW64_RES           0x0300

#DEFINE KEY_READ				0x00020019				
*!*  #DEFINE KEY_READ (BITAND(BITOR(STANDARD_RIGHTS_READ,KEY_QUERY_VALUE,
*!*  KEY_ENUMERATE_SUB_KEYS,KEY_NOTIFY),BITNOT(SYNCHRONIZE))))

#DEFINE KEY_WRITE				0x00020006
*!* #DEFINE KEY_WRITE (BITAND(BITOR(STANDARD_RIGHTS_WRITE,KEY_SET_VALUE,KEY_CREATE_SUB_KEY),
*!* BITNOT(SYNCHRONIZE))))

#DEFINE KEY_EXECUTE				0x00020019	
*!* #DEFINE KEY_EXECUTE (BITAND(KEY_READ,BITNOT(SYNCHRONIZE)))

#DEFINE KEY_ALL_ACCESS			0x000F003F
*!* #DEFINE KEY_ALL_ACCESS (BITAND(BITOR(STANDARD_RIGHTS_ALL,KEY_QUERY_VALUE,
*!* KEY_SET_VALUE,KEY_CREATE_SUB_KEY,KEY_ENUMERATE_SUB_KEYS,KEY_NOTIFY,KEY_CREATE_LINK),
*!* BITNOT(SYNCHRONIZE))))

&& types of registry values
#DEFINE REG_SZ						1
#DEFINE REG_EXPAND_SZ				2
#DEFINE REG_BINARY					3
#DEFINE REG_DWORD					4
#DEFINE REG_DWORD_LITTLE_ENDIAN 	4
#DEFINE REG_DWORD_BIG_ENDIAN		5
#DEFINE REG_LINK					6
#DEFINE REG_MULTI_SZ				7
#DEFINE REG_QWORD					11
#DEFINE REG_INTEGER					12
#DEFINE REG_DOUBLE					13
#DEFINE REG_DATE					14
#DEFINE REG_DATETIME				15
#DEFINE REG_LOGICAL					16
#DEFINE REG_MONEY					17

#DEFINE REG_NOTIFY_CHANGE_NAME			0x01
#DEFINE REG_NOTIFY_CHANGE_ATTRIBUTES	0x02
#DEFINE REG_NOTIFY_CHANGE_LAST_SET		0x04
#DEFINE REG_NOTIFY_CHANGE_SECURITY		0x08

&& defines for AServices
#DEFINE SERVICE_ACTIVE				0x01
#DEFINE SERVICE_INACTIVE			0x02
#DEFINE SERVICE_STATE_ALL			0x03

#DEFINE SERVICE_KERNEL_DRIVER		0x01
#DEFINE SERVICE_FILE_SYSTEM_DRIVER	0x02
#DEFINE SERVICE_ADAPTER				0x04
#DEFINE SERVICE_RECOGNIZER_DRIVER	0x08
#DEFINE SERVICE_DRIVER				0x0B
#DEFINE SERVICE_WIN32_OWN_PROCESS	0x10
#DEFINE SERVICE_WIN32_SHARE_PROCESS	0x20
#DEFINE SERVICE_WIN32				0x30
#DEFINE SERVICE_INTERACTIVE_PROCESS	0x0100
#DEFINE SERVICE_TYPE_ALL			0x013F

&& defines for AServiceStatus (current service state)
#DEFINE SERVICE_STOPPED				0x01
#DEFINE SERVICE_START_PENDING		0x02
#DEFINE SERVICE_STOP_PENDING		0x03
#DEFINE SERVICE_RUNNING				0x04
#DEFINE SERVICE_CONTINUE_PENDING	0x05
#DEFINE SERVICE_PAUSE_PENDING		0x06
#DEFINE SERVICE_PAUSED				0x07

&& defines for Servie Handler function
#DEFINE SERVICE_CONTROL_STOP                   0x00000001
#DEFINE SERVICE_CONTROL_PAUSE                  0x00000002
#DEFINE SERVICE_CONTROL_CONTINUE               0x00000003
#DEFINE SERVICE_CONTROL_INTERROGATE            0x00000004
#DEFINE SERVICE_CONTROL_SHUTDOWN               0x00000005
#DEFINE SERVICE_CONTROL_PARAMCHANGE            0x00000006
#DEFINE SERVICE_CONTROL_NETBINDADD             0x00000007
#DEFINE SERVICE_CONTROL_NETBINDREMOVE          0x00000008
#DEFINE SERVICE_CONTROL_NETBINDENABLE          0x00000009
#DEFINE SERVICE_CONTROL_NETBINDDISABLE         0x0000000A
#DEFINE SERVICE_CONTROL_DEVICEEVENT            0x0000000B
#DEFINE SERVICE_CONTROL_HARDWAREPROFILECHANGE  0x0000000C
#DEFINE SERVICE_CONTROL_POWEREVENT             0x0000000D
#DEFINE SERVICE_CONTROL_SESSIONCHANGE          0x0000000E

#DEFINE SERVICE_ACCEPT_STOP                    0x00000001
#DEFINE SERVICE_ACCEPT_PAUSE_CONTINUE          0x00000002
#DEFINE SERVICE_ACCEPT_SHUTDOWN                0x00000004
#DEFINE SERVICE_ACCEPT_PARAMCHANGE             0x00000008
#DEFINE SERVICE_ACCEPT_NETBINDCHANGE           0x00000010
#DEFINE SERVICE_ACCEPT_HARDWAREPROFILECHANGE   0x00000020
#DEFINE SERVICE_ACCEPT_POWEREVENT              0x00000040
#DEFINE SERVICE_ACCEPT_SESSIONCHANGE           0x00000080

#DEFINE ERROR_CALL_NOT_IMPLEMENTED				120

&& defines for OpenService (access rights)
#DEFINE SERVICE_QUERY_CONFIG           0x0001
#DEFINE SERVICE_CHANGE_CONFIG          0x0002
#DEFINE SERVICE_QUERY_STATUS           0x0004
#DEFINE SERVICE_ENUMERATE_DEPENDENTS   0x0008
#DEFINE SERVICE_START                  0x0010
#DEFINE SERVICE_STOP                   0x0020
#DEFINE SERVICE_PAUSE_CONTINUE         0x0040
#DEFINE SERVICE_INTERROGATE            0x0080
#DEFINE SERVICE_USER_DEFINED_CONTROL   0x0100
#DEFINE SERVICE_ALL_ACCESS             0x000F01FF
*!* #DEFINE SERVICE_ALL_ACCESS (BITOR(STANDARD_RIGHTS_REQUIRED,SERVICE_QUERY_CONFIG,SERVICE_CHANGE_CONFIG,
*!*					         SERVICE_QUERY_STATUS,SERVICE_ENUMERATE_DEPENDENTS,SERVICE_START,SERVICE_STOP,
*!*					         SERVICE_PAUSE_CONTINUE,SERVICE_INTERROGATE,SERVICE_USER_DEFINED_CONTROL))

&& flags for ADIREX
#DEFINE ADIREX_DEST_ARRAY		0x01
#DEFINE ADIREX_DEST_CURSOR		0x02
#DEFINE ADIREX_DEST_CALLBACK	0x04
#DEFINE ADIREX_FILTER_ALL		0x08
#DEFINE ADIREX_FILTER_NONE		0x10
#DEFINE ADIREX_FILTER_EXACT		0x20
#DEFINE ADIREX_UTC_TIMES		0x40

&& file attributes for ADIREX, GETFILEATTRIBUTES, SETFILEATTRIBUTES, AFILEATTRIBUTES & 
&& AFILEATTRIBUTESEX
#DEFINE FILE_ATTRIBUTE_READONLY             0x00000001  
#DEFINE FILE_ATTRIBUTE_HIDDEN               0x00000002  
#DEFINE FILE_ATTRIBUTE_SYSTEM               0x00000004  
#DEFINE FILE_ATTRIBUTE_DIRECTORY            0x00000010  
#DEFINE FILE_ATTRIBUTE_ARCHIVE              0x00000020  
#DEFINE FILE_ATTRIBUTE_DEVICE               0x00000040  
#DEFINE FILE_ATTRIBUTE_NORMAL               0x00000080  
#DEFINE FILE_ATTRIBUTE_TEMPORARY            0x00000100  
#DEFINE FILE_ATTRIBUTE_SPARSE_FILE          0x00000200  
#DEFINE FILE_ATTRIBUTE_REPARSE_POINT        0x00000400  
#DEFINE FILE_ATTRIBUTE_COMPRESSED           0x00000800  
#DEFINE FILE_ATTRIBUTE_OFFLINE              0x00001000  
#DEFINE FILE_ATTRIBUTE_NOT_CONTENT_INDEXED  0x00002000  
#DEFINE FILE_ATTRIBUTE_ENCRYPTED            0x00004000  
#DEFINE FILE_ATTRIBUTE_FAKEDIRECTORY		0x80000000

&& additional flags for FCreateEx, FOpenEx - see MSDN -> CreateFile function for an 
&& explanation of these constants
#DEFINE FILE_FLAG_OPEN_NO_RECALL        0x00100000
#DEFINE FILE_FLAG_OPEN_REPARSE_POINT    0x00200000
#DEFINE FILE_FLAG_POSIX_SEMANTICS       0x01000000
#DEFINE FILE_FLAG_BACKUP_SEMANTICS      0x02000000
#DEFINE FILE_FLAG_DELETE_ON_CLOSE       0x04000000
#DEFINE FILE_FLAG_SEQUENTIAL_SCAN       0x08000000
#DEFINE FILE_FLAG_RANDOM_ACCESS         0x10000000
#DEFINE FILE_FLAG_NO_BUFFERING          0x20000000
#DEFINE FILE_FLAG_WRITE_THROUGH         0x80000000

&& access mode flags for FCreateEx/FOpenEx
#DEFINE FILE_SHARE_READ				0x01
#DEFINE FILE_SHARE_WRITE			0x02
#DEFINE FILE_SHARE_DELETE			0x04

&& seek mode for FSeekEx
#DEFINE FILE_BEGIN					0
#DEFINE FILE_CURRENT				1
#DEFINE FILE_END					2

&& flags for SHCopy/Rename/Delete/Move Files functions
#DEFINE FOF_MULTIDESTFILES         0x0001
#DEFINE FOF_CONFIRMMOUSE           0x0002
#DEFINE FOF_SILENT                 0x0004
#DEFINE FOF_RENAMEONCOLLISION      0x0008
#DEFINE FOF_NOCONFIRMATION         0x0010
#DEFINE FOF_ALLOWUNDO              0x0040
#DEFINE FOF_FILESONLY              0x0080
#DEFINE FOF_SIMPLEPROGRESS         0x0100
#DEFINE FOF_NOCONFIRMMKDIR         0x0200
#DEFINE FOF_NOERRORUI              0x0400
#DEFINE FOF_NOCOPYSECURITYATTRIBS  0x0800
#DEFINE FOF_NORECURSION            0x1000
#DEFINE FOF_NO_CONNECTED_ELEMENTS  0x2000
#DEFINE FOF_WANTNUKEWARNING        0x4000
#DEFINE FOF_NORECURSEREPARSE       0x8000

&& flags for APRINTERSEX
#DEFINE PRINTER_ENUM_DEFAULT     0x00000001
#DEFINE PRINTER_ENUM_LOCAL       0x00000002
#DEFINE PRINTER_ENUM_CONNECTIONS 0x00000004
#DEFINE PRINTER_ENUM_FAVORITE    0x00000004
#DEFINE PRINTER_ENUM_NAME        0x00000008
#DEFINE PRINTER_ENUM_REMOTE      0x00000010
#DEFINE PRINTER_ENUM_SHARED      0x00000020
#DEFINE PRINTER_ENUM_NETWORK     0x00000040

&& flags for APAPERSIZES
#DEFINE PAPERSIZE_UNIT_MM		1
#DEFINE PAPERSIZE_UNIT_INCH		2
#DEFINE PAPERSIZE_UNIT_POINT	3

&& callback flags for CreateCallbackFunc
#DEFINE CALLBACK_SYNCRONOUS			1
#DEFINE CALLBACK_ASYNCRONOUS_POST	2	
#DEFINE CALLBACK_ASYNCRONOUS_SEND	4
#DEFINE CALLBACK_CDECL				8

&& callback status codes for UrlDownloadToFileEx
#DEFINE BINDSTATUS_FINDINGRESOURCE			1
#DEFINE BINDSTATUS_CONNECTING				2
#DEFINE BINDSTATUS_REDIRECTING				3
#DEFINE BINDSTATUS_BEGINDOWNLOADDATA		4
#DEFINE BINDSTATUS_DOWNLOADINGDATA			5
#DEFINE BINDSTATUS_ENDDOWNLOADDATA			6
#DEFINE BINDSTATUS_BEGINDOWNLOADCOMPONENTS	7
#DEFINE BINDSTATUS_INSTALLINGCOMPONENTS		8
#DEFINE BINDSTATUS_ENDDOWNLOADCOMPONENTS	9
#DEFINE BINDSTATUS_USINGCACHEDCOPY			10
#DEFINE BINDSTATUS_SENDINGREQUEST			11
#DEFINE BINDSTATUS_CLASSIDAVAILABLE			12
#DEFINE BINDSTATUS_MIMETYPEAVAILABLE		13
#DEFINE BINDSTATUS_CACHEFILENAMEAVAILABLE	14
#DEFINE BINDSTATUS_BEGINSYNCOPERATION		15
#DEFINE BINDSTATUS_ENDSYNCOPERATION			16
#DEFINE BINDSTATUS_BEGINUPLOADDATA			17
#DEFINE BINDSTATUS_UPLOADINGDATA			18
#DEFINE BINDSTATUS_ENDUPLOADINGDATA			19
#DEFINE BINDSTATUS_PROTOCOLCLASSID			20
#DEFINE BINDSTATUS_ENCODING					21
#DEFINE BINDSTATUS_VERFIEDMIMETYPEAVAILABLE	22
#DEFINE BINDSTATUS_CLASSINSTALLLOCATION		23
#DEFINE BINDSTATUS_DECODING					24
#DEFINE BINDSTATUS_LOADINGMIMEHANDLER		25
#DEFINE BINDSTATUS_CONTENTDISPOSITIONATTACH	26
#DEFINE BINDSTATUS_FILTERREPORTMIMETYPE		27
#DEFINE BINDSTATUS_CLSIDCANINSTANTIATE		28
#DEFINE BINDSTATUS_IUNKNOWNAVAILABLE		29
#DEFINE BINDSTATUS_DIRECTBIND				30
#DEFINE BINDSTATUS_RAWMIMETYPE				31
#DEFINE BINDSTATUS_PROXYDETECTING			32
#DEFINE BINDSTATUS_ACCEPTRANGES				33
#DEFINE BINDSTATUS_COOKIE_SENT				34
#DEFINE BINDSTATUS_COMPACT_POLICY_RECEIVED	35
#DEFINE BINDSTATUS_COOKIE_SUPPRESSED		36
#DEFINE BINDSTATUS_COOKIE_STATE_UNKNOWN		37
#DEFINE BINDSTATUS_COOKIE_STATE_ACCEPT		38
#DEFINE BINDSTATUS_COOKIE_STATE_REJECT		39
#DEFINE BINDSTATUS_COOKIE_STATE_PROMPT		40
#DEFINE BINDSTATUS_COOKIE_STATE_LEASH		41
#DEFINE BINDSTATUS_COOKIE_STATE_DOWNGRADE	42
#DEFINE BINDSTATUS_POLICY_HREF				43
#DEFINE BINDSTATUS_P3P_HEADER				44
#DEFINE BINDSTATUS_SESSION_COOKIE_RECEIVED	45
#DEFINE BINDSTATUS_PERSISTENT_COOKIE_RECEIVED	46
#DEFINE BINDSTATUS_SESSION_COOKIES_ALLOWED	47
#DEFINE BINDSTATUS_CACHECONTROL				48
#DEFINE BINDSTATUS_CONTENTDISPOSITIONFILENAME	49
#DEFINE BINDSTATUS_MIMETEXTPLAINMISMATCH	50
#DEFINE BINDSTATUS_PUBLISHERAVAILABLE		51
#DEFINE BINDSTATUS_DISPLAYNAMEAVAILABLE		52
#DEFINE BINDSTATUS_INTRANETREQUESTDENIED	53
#DEFINE BINDSTATUS_SSLUX_NAVBLOCKED			54
#DEFINE BINDSTATUS_DOWNLOAD_FINISHED		99
#DEFINE BINDSTATUS_DOWNLOAD_ABORTED			100


&& AWindows, AWindowsEx flags
#DEFINE AWINDOWS_TOPLEVEL	0x01
#DEFINE AWINDOWS_CHILD		0x02
#DEFINE AWINDOWS_THREAD		0x04
#DEFINE AWINDOWS_DESKTOP	0x08
#DEFINE AWINDOWS_CALLBACK	0x10

&& SQLExecEx flags
#DEFINE SQLEXECEX_DEST_CURSOR			0x0001
#DEFINE SQLEXECEX_DEST_VARIABLE			0x0002
#DEFINE SQLEXECEX_REUSE_CURSOR			0x0004
#DEFINE SQLEXECEX_NATIVE_SQL			0x0008
#DEFINE SQLEXECEX_CALLBACK_PROGRESS		0x0010
#DEFINE SQLEXECEX_CALLBACK_INFO			0x0020
#DEFINE SQLEXECEX_STORE_INFO			0x0040

&& ODBC SQL types
#DEFINE SQL_UNKNOWN_TYPE	0
#DEFINE SQL_CHAR			1
#DEFINE SQL_NUMERIC			2
#DEFINE SQL_DECIMAL			3
#DEFINE SQL_INTEGER			4
#DEFINE SQL_SMALLINT		5
#DEFINE SQL_FLOAT			6
#DEFINE SQL_REAL			7
#DEFINE SQL_DOUBLE			8
#DEFINE SQL_DATE			9
#DEFINE SQL_DATETIME		9
#DEFINE SQL_TIMESTAMP		11
#DEFINE SQL_VARCHAR			12
#DEFINE SQL_LONGVARCHAR		-1
#DEFINE SQL_BINARY			-2
#DEFINE SQL_VARBINARY		-3
#DEFINE SQL_LONGVARBINARY	-4
#DEFINE SQL_BIGINT			-5
#DEFINE SQL_TINYINT			-6
#DEFINE SQL_BIT				-7
#DEFINE SQL_WCHAR			-8
#DEFINE SQL_WVARCHAR		-9
#DEFINE SQL_WLONGVARCHAR	-10

&& BindEventsEx flags
#DEFINE BINDEVENTSEX_CALL_BEFORE	0x0001
#DEFINE BINDEVENTSEX_CALL_AFTER		0x0002
#DEFINE BINDEVENTSEX_RETURN_VALUE	0x0004
#DEFINE BINDEVENTSEX_NO_RECURSION	0x0008
#DEFINE BINDEVENTSEX_CLASSPROC		0x0010

&& some usefull windowmessages
#DEFINE WM_CREATE				0x0001
#DEFINE WM_DESTROY				0x0002
#DEFINE WM_MOVE					0x0003
#DEFINE WM_SIZE					0x0005
#DEFINE WM_ACTIVATE				0x0006
#DEFINE WM_QUERYENDSESSION		0x0011
#DEFINE WM_ENDSESSION			0x0016
#DEFINE WM_SYSCOLORCHANGE		0x0015
#DEFINE WM_WININICHANGE			0x001A
#DEFINE WM_ACTIVATEAPP			0x001C
#DEFINE WM_FONTCHANGE			0x001D
#DEFINE WM_TIMECHANGE			0x001E
#DEFINE WM_POWER				0x0048
#DEFINE WM_USERCHANGED			0x0054
#DEFINE WM_KEYDOWN				0x0100
#DEFINE WM_KEYUP				0x0101
#DEFINE WM_CHAR					0x0102
#DEFINE WM_DEADCHAR				0x0103
#DEFINE WM_SYSKEYDOWN			0x0104
#DEFINE WM_SYSKEYUP				0x0105
#DEFINE WM_SYSCHAR				0x0106
#DEFINE WM_SYSDEADCHAR			0x0107
#DEFINE WM_MOUSEMOVE			0x0200
#DEFINE WM_LBUTTONDOWN			0x0201
#DEFINE WM_LBUTTONUP			0x0202
#DEFINE WM_LBUTTONDBLCLK		0x0203
#DEFINE WM_RBUTTONDOWN			0x0204
#DEFINE WM_RBUTTONUP			0x0205
#DEFINE WM_RBUTTONDBLCLK		0x0206
#DEFINE WM_MBUTTONDOWN			0x0207
#DEFINE WM_MBUTTONUP			0x0208
#DEFINE WM_MBUTTONDBLCLK		0x0209
#DEFINE WM_MOUSEWHEEL			0x020A
#DEFINE WM_ENTERMENULOOP		0x0211
#DEFINE WM_EXITMENULOOP			0x0212
#DEFINE WM_MOVING				0x0216
#DEFINE WM_POWERBROADCAST		0x0218
#DEFINE WM_DEVICECHANGE			0x0219
#DEFINE WM_APPCOMMAND			0x0319
#DEFINE WM_THEMECHANGED			0x031A

&& FindFileChange notification events
#DEFINE FILE_NOTIFY_CHANGE_FILE_NAME    0x00000001   
#DEFINE FILE_NOTIFY_CHANGE_DIR_NAME     0x00000002   
#DEFINE FILE_NOTIFY_CHANGE_ATTRIBUTES   0x00000004   
#DEFINE FILE_NOTIFY_CHANGE_SIZE         0x00000008   
#DEFINE FILE_NOTIFY_CHANGE_LAST_WRITE   0x00000010   
#DEFINE FILE_NOTIFY_CHANGE_SECURITY     0x00000100   

&& OsEx - windows version 
#DEFINE OSEX_WINDOWS					0
#DEFINE OSEX_WINDOWS32S					1
#DEFINE OSEX_WINDOWS95					2
#DEFINE OSEX_WINDOWS95OSR2				3
#DEFINE OSEX_WINDOWS98					4
#DEFINE OSEX_WINDOWS98SE				5
#DEFINE OSEX_WINDOWSMILLENNIUM			6
#DEFINE OSEX_WINDOWSNT351				7
#DEFINE OSEX_WINDOWSNT40				8
#DEFINE OSEX_WINDOWSNT40SERVER			9
#DEFINE OSEX_WINDOWS2000				10
#DEFINE OSEX_WINDOWSXP					11
#DEFINE OSEX_WINDOWSXPPROFESSIONALX64	12
#DEFINE OSEX_WINDOWSHOMESERVER			13
#DEFINE OSEX_WINDOWSVISTA				14
#DEFINE OSEX_WINDOWSSERVER2003			15
#DEFINE OSEX_WINDOWSSERVER2003R2		16
#DEFINE OSEX_WINDOWS7					17
#DEFINE OSEX_WINDOWSSERVER2008			18
#DEFINE OSEX_WINDOWSSERVER2008R2		19
#DEFINE OSEX_WINDOWSX					20

&& CreateThreadObject - execution context
#DEFINE CLSCTX_INPROC_SERVER			0x1
#DEFINE CLSCTX_LOCAL_SERVER				0x4

#ENDIF && _VFP2C_H__