Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

119 lines
3.6 KiB

#include "msodw.h"
#define FAULTH_CREATE_NAME "FAULTHCreate"
#define FAULTH_DELETE_NAME "FAULTHDelete"
#define FAULTH_WININET_NAME "WININET.DLL"
#define WININET_MIN_VERSION 4.72.2106.5
#define FAULTH_WININET_MIN_MS ((4<<16)+72)
#define FAULTH_WININET_MIN_LS ((2106<<16)+5)
#define DW_MAX_ADDFILES 1024
typedef struct _SETUP_FAULT_HANDLER *PSETUP_FAULT_HANDLER;
// Ascii Version of functions
typedef void (* PFAULTHSetURLMethodA)(
IN PSETUP_FAULT_HANDLER This,
IN PCSTR pszURL
);
typedef void (* PFAULTHSetAdditionalFilesMethodA)(
IN PSETUP_FAULT_HANDLER This,
IN PCSTR pszAdditionalFiles
);
typedef void (* PFAULTHSetAppNameMethodA)(
IN PSETUP_FAULT_HANDLER This,
IN PCSTR pszAppName
);
typedef void (* PFAULTHSetErrorTextA)(
IN PSETUP_FAULT_HANDLER This,
IN PCSTR pszErrorText
);
// Unicode Version of functions
typedef void (* PFAULTHSetURLMethodW)(
IN PSETUP_FAULT_HANDLER This,
IN PCWSTR pwszURL
);
typedef void (* PFAULTHSetAdditionalFilesMethodW)(
IN PSETUP_FAULT_HANDLER This,
IN PCWSTR pwszAdditionalFiles
);
typedef void (* PFAULTHSetAppNameMethodW)(
IN PSETUP_FAULT_HANDLER This,
IN PCWSTR pwszAppName
);
typedef void (* PFAULTHSetErrorTextW)(
IN PSETUP_FAULT_HANDLER This,
IN PCWSTR pwszErrorText
);
typedef void (* PFAULTHSetLCID)(
IN PSETUP_FAULT_HANDLER This,
IN LCID lcid
);
typedef BOOL (* PFAULTHIsSupported)(
IN PSETUP_FAULT_HANDLER This
);
typedef EFaultRepRetVal (*PREPORTFAULTA_FN)(
IN PSETUP_FAULT_HANDLER This,
IN LPEXCEPTION_POINTERS pep,
IN DWORD dwReserved
);
typedef struct _SETUP_FAULT_HANDLER {
//
// Data members
//
CHAR szURL[DW_MAX_SERVERNAME];
WCHAR wzAppName[DW_APPNAME_LENGTH];
WCHAR wzAdditionalFiles[DW_MAX_ADDFILES];
WCHAR wzErrorText[DW_MAX_ERROR_CWC];
LCID lcid;
BOOL bDebug;
//
// Methods
//
PFAULTHSetURLMethodA SetURLA;
PFAULTHSetAppNameMethodA SetAppNameA;
PFAULTHSetAdditionalFilesMethodA SetAdditionalFilesA;
PFAULTHSetErrorTextA SetErrorTextA;
PFAULTHSetURLMethodW SetURLW;
PFAULTHSetAppNameMethodW SetAppNameW;
PFAULTHSetAdditionalFilesMethodW SetAdditionalFilesW;
PFAULTHSetErrorTextW SetErrorTextW;
PFAULTHSetLCID SetLCID;
PFAULTHIsSupported IsSupported;
PREPORTFAULTA_FN Report;
} SETUP_FAULT_HANDLER,*PSETUP_FAULT_HANDLER;
typedef PSETUP_FAULT_HANDLER (APIENTRY *PFAULTHCreate) (VOID);
typedef VOID (APIENTRY *PFAULTHDelete)(IN PSETUP_FAULT_HANDLER This);
PSETUP_FAULT_HANDLER
FAULTHCreate(
VOID
);
VOID
FAULTHDelete(
IN PSETUP_FAULT_HANDLER This
);