Files

264 lines
9.3 KiB
C

************************************************************************
* WCONNECT Header File
**********************
*** Author: Rick Strahl
*** (c) West Wind Technologies, 1995-2002
*** Contact: http://www.west-wind.com/
*** Function: Global DEFINEs used by West Wind Web Connection.
***
*** IMPORTANT: Any changes made here or in WCONNECT_OVERRIDE.H
*** require a full recompile of all files that use
*** this header file!
************************************************************************
#DEFINE WWVERSION "Version 4.20"
#DEFINE WWVERSIONDATE "May 6, 2002"
*** DEBUGMODE effects how errors are handled.
*** If .T. errors are not handled and the server stops on errors.
*** If .F. the Web Connection error handlers kick in and
*** provide error pages and logging
#DEFINE DEBUGMODE .T.
*** Use this flag to handle different configurations
*** You can set up conditional DEFINES for applications
*** to easily switch configurations. (Optional - not used by framework)
*** 1 - Development Server
*** 2 - Live Server
#DEFINE LOCALSITE 1
*** When .T. server runs as a Top Level while running file based
#DEFINE SERVER_IN_DESKTOP .F.
*** Carriage Return/Line Break
#DEFINE CR CHR(13)+CHR(10) && DO NOT USE ANY MORE
#DEFINE CRLF CHR(13)+CHR(10)
*** Customizable default HTTP Header
#DEFINE DEFAULT_CONTENTTYPE_HEADER ;
"HTTP/1.1 200 OK" + CRLF + ;
"Content-type: text/html" + CRLF
#DEFINE DEFAULT_HTTP_VERSION "1.1"
*** Post boundary used for posting multipart vars
#DEFINE POST_BOUNDARY CHR(13)+CHR(10)+ "#@$ FORM VARIABLES $@#" + CHR(13)+CHR(10)
#DEFINE MULTIPART_BOUNDARY "-----------------------------7cf2a327f01ae"
*** SQL Connect String to database containing
*** wwSession and RequestLog files
#DEFINE WWC_USE_SQL_SYSTEMFILES .F.
*** Determines whether the store runs with SQL Server Tables
#DEFINE WWSTORE_USE_SQL_TABLES .F.
#DEFINE WWMSGBOARD_USE_SQL_TABLES .F.
*** Visual FoxPro Version Number Macro
#DEFINE wwVFPVERSION VAL(SUBSTR(Version(),ATC("FoxPro",VERSION())+7,2))
*** Determines whether TEMPLATE pages are cached (ExpandTemplate calls)
*** Note: This value specifies how often the file is checked for
*** a newer version in seconds. 0 means - don't cache.
#DEFINE WWC_CACHE_TEMPLATES 0
*** Maximum String size for the wwResponseString class
#DEFINE MAX_STRINGSIZE 8000
*** Maximum number of cells that ShowCursor generates
*** before reverting to <pre> list
#DEFINE MAX_TABLE_CELLS 15000
*** Special 'NULL' String to differentiate none from empty strings
#DEFINE WWC_NULLSTRING "*#*"
*** Defines the location of the Web Connection framework
*** the default is the current directory
#DEFINE WWC_FRAMEWORK_PATH ".\"
*** XML Size Id used for Memo Fields to differentiate memos from strings
*** This value is compatible with ADO's usage
#DEFINE XML_SCHEMA_MEMOSIZE 2147483647
#DEFINE XML_XMLDOM_PROGID "MSXML2.DOMDocument"
**"MSXML2.DOMDocument.4.0"
*** Determines whether wwXML::XMLTOCURSOR tries to use
*** VFP 7's XMLTOCURSOR. NOTE: Requires SP1!!!!
*** This can drastically improve performance for large data sets
#DEFINE WWXML_USE_VFP_XMLTOCURSOR .F.
*** Class Names - These classes are defined here and used in the code
*** so if you subclass an essential class you can change
*** the class used here and automatically have the framework
*** inherit from your subclass
#DEFINE WWC_SERVER wwServer
#DEFINE WWC_SERVERFORM wwServerForm
#DEFINE WWC_SERVERFORM_VFPFRAME wwServerFormVFPFrame
#DEFINE WWC_PROCESS wwProcess
#DEFINE WWC_WEBSERVICE wwWebService
#DEFINE WWC_SESSION wwSession
#DEFINE WWC_SQLSESSION wwSessionSQL
#DEFINE WWC_REQUEST wwRequest
#DEFINE WWC_REQUESTASP wwASPRequest
#DEFINE WWC_RESPONSE wwResponse
#DEFINE WWC_RESPONSEFILE wwResponseFile
#DEFINE WWC_RESPONSESTRING wwResponseStringNoBuffer
#DEFINE WWC_RESPONSEASP wwASPResponse
#DEFINE WWC_WWDHTMLFORM wwDhtmlForm
#DEFINE WWC_WWDHTMLCONTROL wwDhtmlControl
#DEFINE WWC_HTTPHEADER wwHTTPHeader
#DEFINE WWC_WWEVAL wwEval
#DEFINE WWC_WWVFPSCRIPT wwVFPScript
#DEFINE WWC_WWPDF wwPDF50
#DEFINE WWC_WWSOAP wwSOAP
#DEFINE WWC_WWBUSINESS wwBusiness
*** Class Include flags - Use these to make the install lighter - New 07/05/97
#DEFINE WWC_LOAD_WWSESSION .T.
#DEFINE WWC_LOAD_WWBANNER .T.
#DEFINE WWC_LOAD_WWSHOWCURSOR .T.
#DEFINE WWC_LOAD_WWDBFPOPUP .T.
#DEFINE WWC_LOAD_WWIPSTUFF .T.
#DEFINE WWC_LOAD_WWHTTP .T.
#DEFINE WWC_LOAD_WWBUSINESS .T.
#DEFINE WWC_LOAD_WWSQL .T.
#DEFINE WWC_LOAD_WWHTTPSQL .T.
#DEFINE WWC_LOAD_WWVFPSCRIPT .T.
#DEFINE WWC_LOAD_WWPDF .T.
#DEFINE WWC_LOAD_WWXML .T. && Don't change! Required!
#DEFINE WWC_LOAD_WWMSMQ .F.
#DEFINE WWC_LOAD_WWSOAP .T.
#DEFINE WWC_LOAD_DYNAMICHTML_FORMRENDERING .T.
*** VERSION CONSTANTS
#DEFINE SHAREWARE .F.
#DEFINE WWC_DEMO .T.
#DEFINE SWTIMEOUT 1800
#DEFINE HTMLCLASSONLY .F.
#DEFINE SHOWSQLERRORS .F.
#DEFINE FOXISAPI .F.
#DEFINE VISUALWEBBUILDER .F.
*** COMPATIBILITY CONSTANTS
*** Turn on for backwards compatibility
*** As features are removed they are bracketed in this flag.
#DEFINE WWC_COMPATIBILITY .F.
*** Use old Style button in Form Rendering
*** All buttons are rendered with the same name if .t.
*** END COMPATIBILITY CONSTANTS
*** Images in forms are pathed relative to the Web request
*** and must be located in the directory specified here
#DEFINE WWFORM_IMAGEPATH "formimages/"
#DEFINE WWFORM_USEOLD_BUTTONSTYLE .F.
*** wwList ActiveX Control settings - Changed 9/2/2000
#DEFINE WWLIST_USEOLDGRID .F.
#DEFINE WWLIST_CLASSID "36E500EB-8219-11D1-A398-00600889F23B"
#DEFINE WWLIST_CODEBASE "wwCTLS.cab"
#DEFINE LISTVIEW_CLASSID "BDD1F04B-858B-11D1-B16A-00C0F0283628"
#DEFINE LISTVIEW_CODEBASE "http://activex.microsoft.com/controls/vb6/MSComCtl.cab"
*** General WinINET Constants
#DEFINE INTERNET_OPEN_TYPE_PRECONFIG 0
#DEFINE INTERNET_OPEN_TYPE_DIRECT 1
#DEFINE INTERNET_OPEN_TYPE_PROXY 3
#DEFINE INTERNET_OPTION_CONNECT_TIMEOUT 2
#DEFINE INTERNET_OPTION_CONNECT_RETRIES 3
#DEFINE INTERNET_OPTION_SEND_TIMEOUT 5
#DEFINE INTERNET_OPTION_RECEIVE_TIMEOUT 6
#DEFINE INTERNET_OPTION_DATA_SEND_TIMEOUT 5
#DEFINE INTERNET_OPTION_DATA_RECEIVE_TIMEOUT 6
#DEFINE INTERNET_OPTION_LISTEN_TIMEOUT 11
#DEFINE INTERNET_SERVICE_FTP 1
#DEFINE INTERNET_DEFAULT_FTP_PORT 21
#DEFINE ERROR_INTERNET_EXTENDED_ERROR 12003
*** WinInet Service Flags
#DEFINE INTERNET_SERVICE_HTTP 3
#DEFINE INTERNET_DEFAULT_HTTP_PORT 80
#DEFINE INTERNET_DEFAULT_HTTPS_PORT 443
#DEFINE INTERNET_FLAG_RELOAD 2147483648
#DEFINE INTERNET_FLAG_SECURE 8388608
#define INTERNET_FLAG_KEEP_CONNECTION 0x00400000
#DEFINE HTTP_STATUS_PROXY_AUTH_REQ 407
#define HTTP_QUERY_STATUS_CODE 19
#define HTTP_QUERY_FLAG_NUMBER 0x20000000
#DEFINE HTTP_QUERY_RAW_HEADERS_CRLF 22
#define HTTP_QUERY_STATUS_CODE 19
#define HTTP_QUERY_STATUS_TEXT 20
#DEFINE FTP_TRANSFER_TYPE_ASCII 1
#DEFINE FTP_TRANSFER_TYPE_BINARY 2
#DEFINE INTERNET_FLAG_IGNORE_CERT_DATE_INVALID 0x00002000
*** Win32 API Constants
#DEFINE ERROR_SUCCESS 0
*** Access Flags
#DEFINE GENERIC_READ 0x80000000
#DEFINE GENERIC_WRITE 0x40000000
#DEFINE GENERIC_EXECUTE 0x20000000
#DEFINE GENERIC_ALL 0x10000000
*** File Attribute Flags
#DEFINE FILE_ATTRIBUTE_NORMAL 0x00000080
#DEFINE FILE_ATTRIBUTE_READONLY 0x00000001
#DEFINE FILE_ATTRIBUTE_HIDDEN 0x00000002
#DEFINE FILE_ATTRIBUTE_SYSTEM 0x00000004
*** Values for FormatMessage API
#DEFINE FORMAT_MESSAGE_FROM_SYSTEM 4096
#DEFINE FORMAT_MESSAGE_FROM_HMODULE 2048
*** Registry roots
#DEFINE HKEY_CLASSES_ROOT -2147483648 && (( HKEY ) 0x80000000 )
#DEFINE HKEY_CURRENT_USER -2147483647 && (( HKEY ) 0x80000001 )
#DEFINE HKEY_LOCAL_MACHINE -2147483646 && (( HKEY ) 0x80000002 )
#DEFINE HKEY_USERS -2147483645 && (( HKEY ) 0x80000003 )
*** Registry Value types
#DEFINE REG_NONE 0 && Undefined Type (default)
#DEFINE REG_SZ 1 && Regular Null Terminated String
#DEFINE REG_BINARY 3 && ??? (unimplemented)
#DEFINE REG_DWORD 4 && Long Integer value
#DEFINE MULTI_SZ 7 && Multiple Null Term Strings (not implemented)
*** Generic File Access Rights for NT ACLs
#define FILERIGHTS_READ 1179785
#define FILERIGHTS_READEXECUTE 1179817
#define FILERIGHTS_CHANGE 1245631
#define FILERIGHTS_FULL 2032127
**** CUSTOMIZE AND OVERRIDE SETTINGS INDEPENDENTLY
**** OF THE WC INSTALLATION
#IF FILE("WCONNECT_OVERRIDE.H")
#INCLUDE WCONNECT_OVERRIDE.H
#ENDIF
*!* WCONNECT_OVERRIDE.H would contain (for example):
*!* #UNDEFINE DEBUGMODE
*!* #DEFINE DEBUGMODE .T.
*!* #UNDEFINE SERVER_IN_DESKTOP
*!* #DEFINE SERVER_IN_DESKTOP .T.