//======================================================================= // // Copyright (c) 1998-2000 Microsoft Corporation. All Rights Reserved. // // File: SchemaKeys.h // // Author: Charles Ma // 2000.12.4 // // Description: // // header file to declare all schema keys // //======================================================================= #pragma once #include #include #include class CSchemaKeys { public: CSchemaKeys(); ~CSchemaKeys(); BSTR SCHEMA_KEY_XML_NAMESPACE; // = L"xmlns"; BSTR SCHEMA_KEY_XML; // = L"xml"; BSTR SCHEMA_KEY_SYSTEMINFO; // = L"systemInfo"; BSTR SCHEMA_KEY_COMPUTERSYSTEM; // = L"computerSystem"; BSTR SCHEMA_KEY_MANUFACTURER; // = L"manufacturer"; BSTR SCHEMA_KEY_MODEL; // = L"model"; BSTR SCHEMA_KEY_SUPPORTSITE; // = L"supportSite"; BSTR SCHEMA_KEY_ADMINISTRATOR; // = L"administrator"; BSTR SCHEMA_KEY_WU_DISABLED; // = L"windowsUpdateDisabled"; BSTR SCHEMA_KEY_AU_ENABLED; // = L"autoUpdateEnabled"; BSTR SCHEMA_KEY_DRIVESPACE; // = L"driveSpace"; BSTR SCHEMA_KEY_DRIVE; // = L"drive"; BSTR SCHEMA_KEY_KBYTES; // = L"kbytes"; BSTR SCHEMA_KEY_REGKEYS; // = L"regKeys"; BSTR SCHEMA_KEY_REG_HKLM; // = L"HKEY_LOCAL_MACHINE"; BSTR SCHEMA_KEY_REG_SW; // = L"SOFTWARE"; BSTR SCHEMA_KEY_NAME; // = L"name"; BSTR SCHEMA_KEY_COMSERVER; // = L"comserverID"; BSTR SCHEMA_KEY_KEY; // = L"key"; BSTR SCHEMA_KEY_ENTRY; // = L"entry"; BSTR SCHEMA_KEY_VALUE; // = L"value"; BSTR SCHEMA_KEY_VERSION; // = L"version"; BSTR SCHEMA_KEY_VERSIONSTATUS; // = L"versionStatus"; BSTR SCHEMA_KEY_FILEPATH; // = L"filePath"; BSTR SCHEMA_KEY_TIMESTAMP; // = L"timestamp"; BSTR SCHEMA_KEY_GUID; // = L"guid"; BSTR SCHEMA_KEY_CATALOG_PROVIDER;// = L"catalog/provider" BSTR SCHEMA_KEY_ITEMS; // = L"items" BSTR SCHEMA_KEY_ITEM_SEARCH; // = L"catalog/provider/item" BSTR SCHEMA_KEY_ITEM; // = L"item" BSTR SCHEMA_KEY_ITEM_ITEMSTATUS; // = L"items/itemStatus"; BSTR SCHEMA_KEY_ITEMSTATUS; // = L"itemStatus"; BSTR SCHEMA_KEY_DETECTION; // = L"detection" BSTR SCHEMA_KEY_INSTALLATION; // = L"installation"; BSTR SCHEMA_KEY_INSTALLSTATUS; // = L"installStatus"; BSTR SCHEMA_KEY_INSTALLERTYPE; // = L"installerType"; BSTR SCHEMA_KEY_EXCLUSIVE; // = L"exclusive"; BSTR SCHEMA_KEY_NEEDSREBOOT; // = L"needsReboot"; BSTR SCHEMA_KEY_COMMAND; // = L"command"; BSTR SCHEMA_KEY_SWITCHES; // = L"switches"; BSTR SCHEMA_KEY_COMMANDTYPE; // = L"commandType"; BSTR SCHEMA_KEY_INFINSTALL; // = L"infInstallSection"; BSTR SCHEMA_KEY_CODEBASE; // = L"codeBase"; BSTR SCHEMA_KEY_CRC; // = L"crc"; BSTR SCHEMA_KEY_PATCHAVAILABLE; // = L"patchAvailable"; BSTR SCHEMA_KEY_SIZE; // = L"size"; BSTR SCHEMA_KEY_DOWNLOADPATH; // = L"downloadPath"; BSTR SCHEMA_KEY_DOWNLOADSTATUS; // = L"downloadStatus"; BSTR SCHEMA_KEY_DEPENDENCIES; // = L"dependencies"; BSTR SCHEMA_KEY_DESCRIPTION; // = L"description"; BSTR SCHEMA_KEY_HREF; // = L"href" // NSOY - Fix build break BSTR SCHEMA_KEY_CRC; // = L"crc"; BSTR SCHEMA_KEY_IDENTITY; // = L"identity"; BSTR SCHEMA_KEY_PUBLISHERNAME; // = L"publisherName"; BSTR SCHEMA_KEY_LANGUAGE; // = L"language" BSTR SCHEMA_KEY_PLATFORM; // = L"platform" BSTR SCHEMA_KEY_PROCESSORARCHITECTURE; // = L"processorArchitecture" BSTR SCHEMA_KEY_SUITE; // = L"suite" BSTR SCHEMA_KEY_PRODUCTTYPE; // = L"productType" BSTR SCHEMA_KEY_LOCALE; // = L"locale"; BSTR SCHEMA_KEY_CONTEXT; // = L"context"; BSTR SCHEMA_KEY_MAJOR; // = L"major" BSTR SCHEMA_KEY_MINOR; // = L"minor" BSTR SCHEMA_KEY_BUILD; // = L"build" BSTR SCHEMA_KEY_SERVICEPACKMAJOR;// = L"servicePackMajor" BSTR SCHEMA_KEY_SERVICEPACKMINOR;// = L"servicePackMinor" BSTR SCHEMA_KEY_COMPATIBLEHARDWARE; // = L"compatibleHardware" BSTR SCHEMA_KEY_DEVICES; // = L"devices" BSTR SCHEMA_KEY_DEVICE; // = L"device" BSTR SCHEMA_KEY_PRINTERINFO; // = L"printerInfo" BSTR SCHEMA_KEY_CDM_PINFO; // = L"device/printerInfo" BSTR SCHEMA_KEY_DRIVERNAME; // = L"driverName" BSTR SCHEMA_KEY_HWID; // = L"hwid" BSTR SCHEMA_KEY_CDM_HWIDPATH; // = L"device/hwid" BSTR SCHEMA_KEY_DESCRIPTIONTEXT; // = L"descriptionText" BSTR SCHEMA_KEY_TITLE; // = L"title" BSTR SCHEMA_KEY_ITEMID; // = L"itemID"; BSTR SCHEMA_KEY_HIDDEN; // = L"hidden"; BSTR SCHEMA_KEY_ISPRINTER; // = L"isPrinter" BSTR SCHEMA_KEY_DEVICEINSTANCE; // = L"deviceInstance" BSTR SCHEMA_KEY_DRIVERPROVIDER; // = L"driverProvider" BSTR SCHEMA_KEY_MFGNAME; // = L"mfgName" BSTR SCHEMA_KEY_DRIVERVER; // = L"driverVer" BSTR SCHEMA_KEY_RANK; // = L"rank" BSTR SCHEMA_KEY_READMORE; // = L"description/descriptionText/details" BSTR SCHEMA_KEY_ERRORCODE; // = L"errorCode"; BSTR SCHEMA_KEY_CATALOGSTATUS; // = L"catalogStatus"; BSTR SCHEMA_KEY_PID; // = L"pid"; BSTR SCHEMA_KEY_DETECTRESULT; // = L"detectResult" BSTR SCHEMA_KEY_INSTALLED; // = L"installed" BSTR SCHEMA_KEY_UPTODATE; // = L"upToDate" BSTR SCHEMA_KEY_NEWERVERSION; // = L"newerVersion"; BSTR SCHEMA_KEY_EXCLUDED; // = L"excluded" BSTR SCHEMA_KEY_FORCE; // = L"force" BSTR SCHEMA_KEY_VERSTATUS_HI; // = L"HIGHER"; BSTR SCHEMA_KEY_VERSTATUS_HE; // = L"HIGHER_OR_SAME"; BSTR SCHEMA_KEY_VERSTATUS_EQ; // = L"SAME"; BSTR SCHEMA_KEY_VERSTATUS_LE; // = L"LOWER_OR_SAME"; BSTR SCHEMA_KEY_VERSTATUS_LO; // = L"LOWER"; BSTR SCHEMA_KEY_FILE; // = L"path"; BSTR SCHEMA_KEY_REGKEY; // = L"regKey"; BSTR SCHEMA_KEY_PATH; // = L"path"; BSTR SCHEMA_KEY_STATUS_COMPLETE; // = L"COMPLETE"; BSTR SCHEMA_KEY_STATUS_FAILED; // = L"FAILED"; BSTR SCHEMA_KEY_CLIENT; // = L"client"; BSTR SCHEMA_KEY_CLIENTINFO; // = L"clientInfo"; BSTR SCHEMA_KEY_CLIENTNAME; // = L"clientName"; attr of clientInfo tag LPCTSTR SCHEMA_KEY_REGKEYEXISTS; // = _T("regKeyExists"); LPCTSTR SCHEMA_KEY_REGKEYVALUE; // = _T("regKeyValue"); LPCTSTR SCHEMA_KEY_REGKEYSUBSTR; // = _T("regKeySubstring"); LPCTSTR SCHEMA_KEY_REGKEYVERSION; // = _T("regKeyVersion"); LPCTSTR SCHEMA_KEY_FILEVERSION; // = _T("fileVersion"); LPCTSTR SCHEMA_KEY_FILEEXISTS; // = _T("fileExists"); LPCTSTR SCHEMA_KEY_AND; // = _T("and"); LPCTSTR SCHEMA_KEY_OR; // = _T("or"); LPCTSTR SCHEMA_KEY_NOT; // = _T("not"); }; extern CSchemaKeys *g_pGlobalSchemaKeys; // // Safe return of schema key from global object pointer // #define RETURN_SCHEMA_KEY( key ) (NULL == g_pGlobalSchemaKeys ? NULL : g_pGlobalSchemaKeys->##key) #define KEY_XML_NAMESPACE RETURN_SCHEMA_KEY(SCHEMA_KEY_XML_NAMESPACE) #define KEY_XML RETURN_SCHEMA_KEY(SCHEMA_KEY_XML) #define KEY_SYSTEMINFO RETURN_SCHEMA_KEY(SCHEMA_KEY_SYSTEMINFO) #define KEY_COMPUTERSYSTEM RETURN_SCHEMA_KEY(SCHEMA_KEY_COMPUTERSYSTEM) #define KEY_SUPPORTSITE RETURN_SCHEMA_KEY(SCHEMA_KEY_SUPPORTSITE) #define KEY_ADMINISTRATOR RETURN_SCHEMA_KEY(SCHEMA_KEY_ADMINISTRATOR) #define KEY_WU_DISABLED RETURN_SCHEMA_KEY(SCHEMA_KEY_WU_DISABLED) #define KEY_AU_ENABLED RETURN_SCHEMA_KEY(SCHEMA_KEY_AU_ENABLED) #define KEY_DRIVESPACE RETURN_SCHEMA_KEY(SCHEMA_KEY_DRIVESPACE) #define KEY_DRIVE RETURN_SCHEMA_KEY(SCHEMA_KEY_DRIVE) #define KEY_KBYTES RETURN_SCHEMA_KEY(SCHEMA_KEY_KBYTES) #define KEY_REGKEYS RETURN_SCHEMA_KEY(SCHEMA_KEY_REGKEYS) #define KEY_REG_HKLM RETURN_SCHEMA_KEY(SCHEMA_KEY_REG_HKLM) #define KEY_REG_SW RETURN_SCHEMA_KEY(SCHEMA_KEY_REG_SW) #define KEY_NAME RETURN_SCHEMA_KEY(SCHEMA_KEY_NAME) #define KEY_COMSERVER RETURN_SCHEMA_KEY(SCHEMA_KEY_COMSERVER) #define KEY_KEY RETURN_SCHEMA_KEY(SCHEMA_KEY_KEY) #define KEY_ENTRY RETURN_SCHEMA_KEY(SCHEMA_KEY_ENTRY) #define KEY_VALUE RETURN_SCHEMA_KEY(SCHEMA_KEY_VALUE) #define KEY_VERSION RETURN_SCHEMA_KEY(SCHEMA_KEY_VERSION) #define KEY_VERSIONSTATUS RETURN_SCHEMA_KEY(SCHEMA_KEY_VERSIONSTATUS) #define KEY_FILEPATH RETURN_SCHEMA_KEY(SCHEMA_KEY_FILEPATH) #define KEY_TIMESTAMP RETURN_SCHEMA_KEY(SCHEMA_KEY_TIMESTAMP) #define KEY_GUID RETURN_SCHEMA_KEY(SCHEMA_KEY_GUID) #define KEY_CATALOG_PROVIDER RETURN_SCHEMA_KEY(SCHEMA_KEY_CATALOG_PROVIDER) #define KEY_ITEMS RETURN_SCHEMA_KEY(SCHEMA_KEY_ITEMS) #define KEY_ITEM_SEARCH RETURN_SCHEMA_KEY(SCHEMA_KEY_ITEM_SEARCH) #define KEY_ITEM RETURN_SCHEMA_KEY(SCHEMA_KEY_ITEM) #define KEY_ITEM_ITEMSTATUS RETURN_SCHEMA_KEY(SCHEMA_KEY_ITEM_ITEMSTATUS) #define KEY_ITEMSTATUS RETURN_SCHEMA_KEY(SCHEMA_KEY_ITEMSTATUS) #define KEY_DETECTION RETURN_SCHEMA_KEY(SCHEMA_KEY_DETECTION) #define KEY_INSTALLATION RETURN_SCHEMA_KEY(SCHEMA_KEY_INSTALLATION) #define KEY_INSTALLSTATUS RETURN_SCHEMA_KEY(SCHEMA_KEY_INSTALLSTATUS) #define KEY_INSTALLERTYPE RETURN_SCHEMA_KEY(SCHEMA_KEY_INSTALLERTYPE) #define KEY_EXCLUSIVE RETURN_SCHEMA_KEY(SCHEMA_KEY_EXCLUSIVE) #define KEY_NEEDSREBOOT RETURN_SCHEMA_KEY(SCHEMA_KEY_NEEDSREBOOT) #define KEY_COMMAND RETURN_SCHEMA_KEY(SCHEMA_KEY_COMMAND) #define KEY_SWITCHES RETURN_SCHEMA_KEY(SCHEMA_KEY_SWITCHES) #define KEY_COMMANDTYPE RETURN_SCHEMA_KEY(SCHEMA_KEY_COMMANDTYPE) #define KEY_INFINSTALL RETURN_SCHEMA_KEY(SCHEMA_KEY_INFINSTALL) #define KEY_CODEBASE RETURN_SCHEMA_KEY(SCHEMA_KEY_CODEBASE) #define KEY_CRC RETURN_SCHEMA_KEY(SCHEMA_KEY_CRC) #define KEY_PATCHAVAILABLE RETURN_SCHEMA_KEY(SCHEMA_KEY_PATCHAVAILABLE) #define KEY_SIZE RETURN_SCHEMA_KEY(SCHEMA_KEY_SIZE) #define KEY_DOWNLOADPATH RETURN_SCHEMA_KEY(SCHEMA_KEY_DOWNLOADPATH) #define KEY_DOWNLOADSTATUS RETURN_SCHEMA_KEY(SCHEMA_KEY_DOWNLOADSTATUS) #define KEY_DEPENDENCIES RETURN_SCHEMA_KEY(SCHEMA_KEY_DEPENDENCIES) #define KEY_DESCRIPTION RETURN_SCHEMA_KEY(SCHEMA_KEY_DESCRIPTION) #define KEY_HREF RETURN_SCHEMA_KEY(SCHEMA_KEY_HREF) #define KEY_LANGUAGE RETURN_SCHEMA_KEY(SCHEMA_KEY_LANGUAGE) #define KEY_PLATFORM RETURN_SCHEMA_KEY(SCHEMA_KEY_PLATFORM) #define KEY_PROCESSORARCHITECTURE RETURN_SCHEMA_KEY(SCHEMA_KEY_PROCESSORARCHITECTURE) #define KEY_SUITE RETURN_SCHEMA_KEY(SCHEMA_KEY_SUITE) #define KEY_PRODUCTTYPE RETURN_SCHEMA_KEY(SCHEMA_KEY_PRODUCTTYPE) #define KEY_LOCALE RETURN_SCHEMA_KEY(SCHEMA_KEY_LOCALE) #define KEY_CONTEXT RETURN_SCHEMA_KEY(SCHEMA_KEY_CONTEXT) #define KEY_MAJOR RETURN_SCHEMA_KEY(SCHEMA_KEY_MAJOR) #define KEY_MINOR RETURN_SCHEMA_KEY(SCHEMA_KEY_MINOR) #define KEY_BUILD RETURN_SCHEMA_KEY(SCHEMA_KEY_BUILD) #define KEY_SERVICEPACKMAJOR RETURN_SCHEMA_KEY(SCHEMA_KEY_SERVICEPACKMAJOR) #define KEY_SERVICEPACKMINOR RETURN_SCHEMA_KEY(SCHEMA_KEY_SERVICEPACKMINOR) #define KEY_COMPATIBLEHARDWARE RETURN_SCHEMA_KEY(SCHEMA_KEY_COMPATIBLEHARDWARE) #define KEY_DEVICES RETURN_SCHEMA_KEY(SCHEMA_KEY_DEVICES) #define KEY_DEVICE RETURN_SCHEMA_KEY(SCHEMA_KEY_DEVICE) #define KEY_PRINTERINFO RETURN_SCHEMA_KEY(SCHEMA_KEY_PRINTERINFO) #define KEY_CDM_PINFO RETURN_SCHEMA_KEY(SCHEMA_KEY_CDM_PINFO) #define KEY_DRIVERNAME RETURN_SCHEMA_KEY(SCHEMA_KEY_DRIVERNAME) #define KEY_HWID RETURN_SCHEMA_KEY(SCHEMA_KEY_HWID) #define KEY_CDM_HWIDPATH RETURN_SCHEMA_KEY(SCHEMA_KEY_CDM_HWIDPATH) #define KEY_DESCRIPTIONTEXT RETURN_SCHEMA_KEY(SCHEMA_KEY_DESCRIPTIONTEXT) #define KEY_TITLE RETURN_SCHEMA_KEY(SCHEMA_KEY_TITLE) #define KEY_ITEMID RETURN_SCHEMA_KEY(SCHEMA_KEY_ITEMID) #define KEY_HIDDEN RETURN_SCHEMA_KEY(SCHEMA_KEY_HIDDEN) #define KEY_ISPRINTER RETURN_SCHEMA_KEY(SCHEMA_KEY_ISPRINTER) #define KEY_DEVICEINSTANCE RETURN_SCHEMA_KEY(SCHEMA_KEY_DEVICEINSTANCE) #define KEY_DRIVERPROVIDER RETURN_SCHEMA_KEY(SCHEMA_KEY_DRIVERPROVIDER) #define KEY_MFGNAME RETURN_SCHEMA_KEY(SCHEMA_KEY_MFGNAME) #define KEY_DRIVERVER RETURN_SCHEMA_KEY(SCHEMA_KEY_DRIVERVER) #define KEY_RANK RETURN_SCHEMA_KEY(SCHEMA_KEY_RANK) #define KEY_READMORE RETURN_SCHEMA_KEY(SCHEMA_KEY_READMORE) #define KEY_ERRORCODE RETURN_SCHEMA_KEY(SCHEMA_KEY_ERRORCODE) #define KEY_CATALOGSTATUS RETURN_SCHEMA_KEY(SCHEMA_KEY_CATALOGSTATUS) #define KEY_PID RETURN_SCHEMA_KEY(SCHEMA_KEY_PID) #define KEY_DETECTRESULT RETURN_SCHEMA_KEY(SCHEMA_KEY_DETECTRESULT) #define KEY_INSTALLED RETURN_SCHEMA_KEY(SCHEMA_KEY_INSTALLED) #define KEY_UPTODATE RETURN_SCHEMA_KEY(SCHEMA_KEY_UPTODATE) #define KEY_NEWERVERSION RETURN_SCHEMA_KEY(SCHEMA_KEY_NEWERVERSION) #define KEY_EXCLUDED RETURN_SCHEMA_KEY(SCHEMA_KEY_EXCLUDED) #define KEY_FORCE RETURN_SCHEMA_KEY(SCHEMA_KEY_FORCE) #define KEY_VERSTATUS_HI RETURN_SCHEMA_KEY(SCHEMA_KEY_VERSTATUS_HI) #define KEY_VERSTATUS_HE RETURN_SCHEMA_KEY(SCHEMA_KEY_VERSTATUS_HE) #define KEY_VERSTATUS_EQ RETURN_SCHEMA_KEY(SCHEMA_KEY_VERSTATUS_EQ) #define KEY_VERSTATUS_LE RETURN_SCHEMA_KEY(SCHEMA_KEY_VERSTATUS_LE) #define KEY_VERSTATUS_LO RETURN_SCHEMA_KEY(SCHEMA_KEY_VERSTATUS_LO) #define KEY_IDENTITY RETURN_SCHEMA_KEY(SCHEMA_KEY_IDENTITY) #define KEY_PUBLISHERNAME RETURN_SCHEMA_KEY(SCHEMA_KEY_PUBLISHERNAME) #define KEY_FILE RETURN_SCHEMA_KEY(SCHEMA_KEY_FILE) #define KEY_REGKEY RETURN_SCHEMA_KEY(SCHEMA_KEY_REGKEY) #define KEY_PATH RETURN_SCHEMA_KEY(SCHEMA_KEY_PATH) #define KEY_STATUS_COMPLETE RETURN_SCHEMA_KEY(SCHEMA_KEY_STATUS_COMPLETE) #define KEY_STATUS_FAILED RETURN_SCHEMA_KEY(SCHEMA_KEY_STATUS_FAILED) #define KEY_CLIENT RETURN_SCHEMA_KEY(SCHEMA_KEY_CLIENT) #define KEY_CLIENTINFO RETURN_SCHEMA_KEY(SCHEMA_KEY_CLIENTINFO) #define KEY_CLIENTNAME RETURN_SCHEMA_KEY(SCHEMA_KEY_CLIENTNAME) #define KEY_MANUFACTURER RETURN_SCHEMA_KEY(SCHEMA_KEY_MANUFACTURER) #define KEY_MODEL RETURN_SCHEMA_KEY(SCHEMA_KEY_MODEL) #define KEY_REGKEYEXISTS RETURN_SCHEMA_KEY(SCHEMA_KEY_REGKEYEXISTS) #define KEY_REGKEYVALUE RETURN_SCHEMA_KEY(SCHEMA_KEY_REGKEYVALUE) #define KEY_REGKEYSUBSTR RETURN_SCHEMA_KEY(SCHEMA_KEY_REGKEYSUBSTR) #define KEY_REGKEYVERSION RETURN_SCHEMA_KEY(SCHEMA_KEY_REGKEYVERSION) #define KEY_FILEVERSION RETURN_SCHEMA_KEY(SCHEMA_KEY_FILEVERSION) #define KEY_FILEEXISTS RETURN_SCHEMA_KEY(SCHEMA_KEY_FILEEXISTS) #define KEY_AND RETURN_SCHEMA_KEY(SCHEMA_KEY_AND) #define KEY_OR RETURN_SCHEMA_KEY(SCHEMA_KEY_OR) #define KEY_NOT RETURN_SCHEMA_KEY(SCHEMA_KEY_NOT)