BUILD: Updated WIX to v3.7.917.0

This commit is contained in:
ptsurbeleu 2012-09-18 22:21:14 -07:00
parent 92975d7272
commit 2d9c8fd86d
171 changed files with 2597 additions and 200 deletions

View file

@ -91,12 +91,40 @@ public: // IBurnUserExperience
}
virtual STDMETHODIMP_(int) OnDetectBegin(
__in BOOL /*fInstalled*/,
__in DWORD /*cPackages*/
)
{
return CheckCanceled() ? IDCANCEL : IDNOACTION;
}
virtual STDMETHODIMP_(int) OnDetectForwardCompatibleBundle(
__in_z LPCWSTR /*wzBundleId*/,
__in BOOTSTRAPPER_RELATION_TYPE /*relationType*/,
__in_z LPCWSTR /*wzBundleTag*/,
__in BOOL /*fPerMachine*/,
__in DWORD64 /*dw64Version*/,
__in int nRecommendation
)
{
return CheckCanceled() ? IDCANCEL : nRecommendation;
}
virtual STDMETHODIMP_(int) OnDetectUpdateBegin(
__in_z LPCWSTR /*wzUpdateLocation*/,
__in int nRecommendation
)
{
return CheckCanceled() ? IDCANCEL : nRecommendation;
}
virtual STDMETHODIMP_(void) OnDetectUpdateComplete(
__in HRESULT /*hrStatus*/,
__in_z_opt LPCWSTR /*wzUpdateLocation*/
)
{
}
virtual STDMETHODIMP_(int) OnDetectPriorBundle(
__in_z LPCWSTR /*wzBundleId*/
)
@ -113,6 +141,7 @@ public: // IBurnUserExperience
virtual STDMETHODIMP_(int) OnDetectRelatedBundle(
__in_z LPCWSTR /*wzBundleId*/,
__in BOOTSTRAPPER_RELATION_TYPE /*relationType*/,
__in_z LPCWSTR /*wzBundleTag*/,
__in BOOL /*fPerMachine*/,
__in DWORD64 /*dw64Version*/,

View file

@ -53,6 +53,7 @@ enum BOOTSTRAPPER_ERROR_TYPE
BOOTSTRAPPER_ERROR_TYPE_EXE_PACKAGE, // error came from an exe package.
BOOTSTRAPPER_ERROR_TYPE_HTTP_AUTH_SERVER, // error occurred trying to authenticate with HTTP server.
BOOTSTRAPPER_ERROR_TYPE_HTTP_AUTH_PROXY, // error occurred trying to authenticate with HTTP proxy.
BOOTSTRAPPER_ERROR_TYPE_APPLY, // error occurred during apply.
};
@ -92,6 +93,7 @@ enum BOOTSTRAPPER_RELATION_TYPE
BOOTSTRAPPER_RELATION_ADDON,
BOOTSTRAPPER_RELATION_PATCH,
BOOTSTRAPPER_RELATION_DEPENDENT,
BOOTSTRAPPER_RELATION_UPDATE,
};
@ -109,6 +111,7 @@ struct BOOTSTRAPPER_COMMAND
// If this was run from a related bundle, specifies the relation type
BOOTSTRAPPER_RELATION_TYPE relationType;
BOOL fPassthrough;
LPWSTR wzLayoutDirectory;
};
@ -141,7 +144,7 @@ DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-A
// All other return codes allow the shutdown to commence.
STDMETHOD_(int, OnSystemShutdown)(
__in DWORD dwEndSession,
__in int nRecommdendation
__in int nRecommendation
) = 0;
// OnDetectBegin - called when the engine begins detection.
@ -151,9 +154,49 @@ DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-A
//
// IDNOACTION instructs the engine to continue.
STDMETHOD_(int, OnDetectBegin)(
__in BOOL fInstalled,
__in DWORD cPackages
) = 0;
// OnDetectForwardCompatibleBundle - called when the engine detects a forward compatible bundle.
//
// Return:
// IDOK instructs the engine to use the forward compatible bundle.
//
// IDCANCEL instructs the engine to stop detection.
//
// IDNOACTION instructs the engine to not use the forward compatible bundle.
STDMETHOD_(int, OnDetectForwardCompatibleBundle)(
__in_z LPCWSTR wzBundleId,
__in BOOTSTRAPPER_RELATION_TYPE relationType,
__in_z LPCWSTR wzBundleTag,
__in BOOL fPerMachine,
__in DWORD64 dw64Version,
__in int nRecommendation
) = 0;
// OnDetectUpdateBegin - called when the engine begins detection for bundle update.
//
// Return:
// IDOK instructs the engine to attempt update detection.
//
// IDCANCEL instructs the engine to stop detection.
//
// IDNOACTION instructs the engine to skip update detection.
STDMETHOD_(int, OnDetectUpdateBegin)(
__in_z LPCWSTR wzUpdateLocation,
__in int nRecommendation
) = 0;
// OnDetectUpdateComplete - called when the engine completes detection for bundle update.
//
// Remarks:
// wzUpdateLocation is null if no update was available.
STDMETHOD_(void, OnDetectUpdateComplete)(
__in HRESULT hrStatus,
__in_z_opt LPCWSTR wzUpdateLocation
) = 0;
// OnDetectRelatedBundle - called when the engine detects a related bundle.
//
// Return:
@ -162,6 +205,7 @@ DECLARE_INTERFACE_IID_(IBootstrapperApplication, IUnknown, "53C31D56-49C0-426B-A
// IDNOACTION instructs the engine to continue.
STDMETHOD_(int, OnDetectRelatedBundle)(
__in_z LPCWSTR wzBundleId,
__in BOOTSTRAPPER_RELATION_TYPE relationType,
__in_z LPCWSTR wzBundleTag,
__in BOOL fPerMachine,
__in DWORD64 dw64Version,

View file

@ -30,6 +30,8 @@ enum BOOTSTRAPPER_ACTION
BOOTSTRAPPER_ACTION_INSTALL,
BOOTSTRAPPER_ACTION_MODIFY,
BOOTSTRAPPER_ACTION_REPAIR,
BOOTSTRAPPER_ACTION_UPDATE_REPLACE,
BOOTSTRAPPER_ACTION_UPDATE_REPLACE_EMBEDDED,
};
enum BOOTSTRAPPER_ACTION_STATE
@ -94,6 +96,12 @@ enum BOOTSTRAPPER_LOG_LEVEL
BOOTSTRAPPER_LOG_LEVEL_ERROR, // always gets reported, but can never be specified
};
enum BOOTSTRAPPER_UPDATE_HASH_TYPE
{
BOOTSTRAPPER_UPDATE_HASH_TYPE_NONE,
BOOTSTRAPPER_UPDATE_HASH_TYPE_SHA1,
};
DECLARE_INTERFACE_IID_(IBootstrapperEngine, IUnknown, "6480D616-27A0-44D7-905B-81512C29C2FB")
{
@ -152,6 +160,15 @@ DECLARE_INTERFACE_IID_(IBootstrapperEngine, IUnknown, "6480D616-27A0-44D7-905B-8
__out int* pnResult
) = 0;
STDMETHOD(SetUpdate)(
__in_z_opt LPCWSTR wzLocalSource,
__in_z_opt LPCWSTR wzDownloadSource,
__in DWORD64 qwSize,
__in BOOTSTRAPPER_UPDATE_HASH_TYPE hashType,
__in_bcount_opt(cbHash) BYTE* rgbHash,
__in DWORD cbHash
) = 0;
STDMETHOD(SetLocalSource)(
__in_z LPCWSTR wzPackageOrContainerId,
__in_z_opt LPCWSTR wzPayloadId,

View file

@ -47,6 +47,7 @@ typedef struct _BAL_INFO_PACKAGES
typedef struct _BAL_INFO_BUNDLE
{
BOOL fPerMachine;
LPWSTR sczName;
LPWSTR sczLogVariable;
BAL_INFO_PACKAGES packages;

View file

@ -67,6 +67,16 @@ DAPI_(HRESULT) BalFormatString(
__inout LPWSTR* psczOut
);
/*******************************************************************
BalGetNumericVariable - gets a number from a variable in the engine.
Note: Returns E_NOTFOUND if variable does not exist.
********************************************************************/
DAPI_(HRESULT) BalGetNumericVariable(
__in_z LPCWSTR wzVariable,
__out LONGLONG* pllValue
);
/*******************************************************************
BalStringVariableExists - checks if a string variable exists in the engine.

View file

@ -0,0 +1,153 @@
#pragma once
//-------------------------------------------------------------------------------------------------
// <copyright file="custommsierrors.h" company="Outercurve Foundation">
// Copyright (c) 2004, Outercurve Foundation.
// This software is released under Microsoft Reciprocal License (MS-RL).
// The license and further copyright text can be found in the file
// LICENSE.TXT at the root directory of the distribution.
// </copyright>
//-------------------------------------------------------------------------------------------------
//---------------------------------------------------------------------------
// Indexes for custom errors in the MSI
//
// Note: Custom Errors must be in the range 25000-30000, all other error
// codes are reserved for the Windows Installer as standard error ranges
// NEVER reuse an error number or you're likely to break the builds.
//---------------------------------------------------------------------------
// Instructions:
// 1. add the index to this file
// 2. define the error table row
// 3. #include CustomMsiErrors to refer to the index
// 4. Import Misc\CustomErrors { MYDEFINE=1 }; with your errorgroup under MYDEFINE
//---------------------------------------------------------------------------
// GLOBAL 25501-25600
#define GLOBAL_ERROR_BASE 25501
#define msierrSecureObjectsFailedCreateSD 25520
#define msierrSecureObjectsFailedSet 25521
#define msierrSecureObjectsUnknownType 25522
#define msierrXmlFileFailedRead 25530
#define msierrXmlFileFailedOpen 25531
#define msierrXmlFileFailedSelect 25532
#define msierrXmlFileFailedSave 25533
#define msierrXmlConfigFailedRead 25540
#define msierrXmlConfigFailedOpen 25541
#define msierrXmlConfigFailedSelect 25542
#define msierrXmlConfigFailedSave 25543
#define msierrFirewallCannotConnect 25580
//---------------------------------------------------------------------------
// Server CustomAction Errors
// SERVER range: 26001-26100
#define SERVER_ERROR_BASE 26000
#define msierrIISCannotConnect 26001
#define msierrIISFailedReadWebSite 26002
#define msierrIISFailedReadWebDirs 26003
#define msierrIISFailedReadVDirs 26004
#define msierrIISFailedReadFilters 26005
#define msierrIISFailedReadAppPool 26006
#define msierrIISFailedReadMimeMap 26007
#define msierrIISFailedReadProp 26008
#define msierrIISFailedReadWebSvcExt 26009
#define msierrIISFailedReadWebError 26010
#define msierrIISFailedReadHttpHeader 26011
#define msierrIISFailedSchedTransaction 26031
#define msierrIISFailedSchedInstallWebs 26032
#define msierrIISFailedSchedInstallWebDirs 26033
#define msierrIISFailedSchedInstallVDirs 26034
#define msierrIISFailedSchedInstallFilters 26035
#define msierrIISFailedSchedInstallAppPool 26036
#define msierrIISFailedSchedInstallProp 26037
#define msierrIISFailedSchedInstallWebSvcExt 26038
#define msierrIISFailedSchedUninstallWebs 26051
#define msierrIISFailedSchedUninstallWebDirs 26052
#define msierrIISFailedSchedUninstallVDirs 26053
#define msierrIISFailedSchedUninstallFilters 26054
#define msierrIISFailedSchedUninstallAppPool 26055
#define msierrIISFailedSchedUninstallProp 26056
#define msierrIISFailedSchedUninstallWebSvcExt 26057
#define msierrIISFailedStartTransaction 26101
#define msierrIISFailedOpenKey 26102
#define msierrIISFailedCreateKey 26103
#define msierrIISFailedWriteData 26104
#define msierrIISFailedCreateApp 26105
#define msierrIISFailedDeleteKey 26106
#define msierrIISFailedDeleteApp 26107
#define msierrIISFailedDeleteValue 26108
#define msierrIISFailedCommitInUse 26109
#define msierrSQLFailedCreateDatabase 26201
#define msierrSQLFailedDropDatabase 26202
#define msierrSQLFailedConnectDatabase 26203
#define msierrSQLFailedExecString 26204
#define msierrSQLDatabaseAlreadyExists 26205
#define msierrPERFMONFailedRegisterDLL 26251
#define msierrPERFMONFailedUnregisterDLL 26252
#define msierrInstallPerfCounterData 26253
#define msierrUninstallPerfCounterData 26254
#define msierrSMBFailedCreate 26301
#define msierrSMBFailedDrop 26302
#define msierrCERTFailedOpen 26351
#define msierrCERTFailedAdd 26352
#define msierrUSRFailedUserCreate 26401
#define msierrUSRFailedUserCreatePswd 26402
#define msierrUSRFailedUserGroupAdd 26403
#define msierrUSRFailedUserCreateExists 26404
#define msierrUSRFailedGrantLogonAsService 26405
#define msierrDependencyMissingDependencies 26451
#define msierrDependencyHasDependents 26452
//--------------------------------------------------------------------------
// Managed code CustomAction Errors
// MANAGED range: 27000-27100
#define MANAGED_ERROR_BASE 27000
#define msierrDotNetRuntimeRequired 27000
//---------------------------------------------------------------------------
// Public CustomAction Errors
// PUBLIC range: 28001-28100
#define PUBLIC_ERROR_BASE 28000
#define msierrComPlusCannotConnect 28001
#define msierrComPlusPartitionReadFailed 28002
#define msierrComPlusPartitionRoleReadFailed 28003
#define msierrComPlusUserInPartitionRoleReadFailed 28004
#define msierrComPlusPartitionUserReadFailed 28005
#define msierrComPlusApplicationReadFailed 28006
#define msierrComPlusApplicationRoleReadFailed 28007
#define msierrComPlusUserInApplicationRoleReadFailed 28008
#define msierrComPlusAssembliesReadFailed 28009
#define msierrComPlusSubscriptionReadFailed 28010
#define msierrComPlusPartitionDependency 28011
#define msierrComPlusPartitionNotFound 28012
#define msierrComPlusPartitionIdConflict 28013
#define msierrComPlusPartitionNameConflict 28014
#define msierrComPlusApplicationDependency 28015
#define msierrComPlusApplicationNotFound 28016
#define msierrComPlusApplicationIdConflict 28017
#define msierrComPlusApplicationNameConflict 28018
#define msierrComPlusApplicationRoleDependency 28019
#define msierrComPlusApplicationRoleNotFound 28020
#define msierrComPlusApplicationRoleConflict 28021
#define msierrComPlusAssemblyDependency 28022
#define msierrComPlusSubscriptionIdConflict 28023
#define msierrComPlusSubscriptionNameConflict 28024
#define msierrComPlusFailedLookupNames 28025
#define msierrMsmqCannotConnect 28101

View file

@ -23,10 +23,23 @@ typedef struct _DEPENDENCY
{
LPWSTR sczKey;
LPWSTR sczName;
} DEPENDENCY;
/***************************************************************************
DepGetProviderInformation - gets the various pieces of data registered
with a dependency.
Note: Returns E_NOTFOUND if the dependency was not found.
***************************************************************************/
DAPI_(HRESULT) DepGetProviderInformation(
__in HKEY hkHive,
__in_z LPCWSTR wzProviderKey,
__deref_out_z_opt LPWSTR* psczId,
__deref_out_z_opt LPWSTR* psczName,
__out_opt DWORD64* pqwVersion
);
/***************************************************************************
DepCheckDependency - Checks that the dependency is registered and within
the proper version range.
@ -67,9 +80,22 @@ DAPI_(HRESULT) DepRegisterDependency(
__in_z LPCWSTR wzProviderKey,
__in_z LPCWSTR wzVersion,
__in_z LPCWSTR wzDisplayName,
__in_z_opt LPCWSTR wzId,
__in int iAttributes
);
/***************************************************************************
DepDependentExists - Determines if a dependent is registered.
Note: Returns S_OK if dependent is registered.
Returns E_FILENOTFOUND if dependent is not registered
***************************************************************************/
DAPI_(HRESULT) DepDependentExists(
__in HKEY hkHive,
__in_z LPCWSTR wzDependencyProviderKey,
__in_z LPCWSTR wzProviderKey
);
/***************************************************************************
DepRegisterDependent - Registers a dependent under the dependency provider.

View file

@ -42,6 +42,17 @@ HRESULT DAPI DictCreateStringList(
__in DWORD dwNumExpectedItems,
__in DICT_FLAG dfFlags
);
HRESULT DAPI DictCreateStringListFromArray(
__out_bcount(STRINGDICT_HANDLE_BYTES) STRINGDICT_HANDLE* psdHandle,
__in_ecount(cStringArray) const LPCWSTR* rgwzStringArray,
__in const DWORD cStringArray,
__in DICT_FLAG dfFlags
);
HRESULT DAPI DictCompareStringListToArray(
__in_bcount(STRINGDICT_HANDLE_BYTES) STRINGDICT_HANDLE sdStringList,
__in_ecount(cStringArray) const LPCWSTR* rgwzStringArray,
__in const DWORD cStringArray
);
HRESULT DAPI DictAddKey(
__in_bcount(STRINGDICT_HANDLE_BYTES) STRINGDICT_HANDLE sdHandle,
__in_z LPCWSTR szString

View file

@ -23,6 +23,7 @@
enum REPORT_LEVEL
{
REPORT_NONE, // turns off report (only valid for XXXSetLevel())
REPORT_WARNING, // written if want only warnings or reporting is on in general
REPORT_STANDARD, // written if reporting is on
REPORT_VERBOSE, // written only if verbose reporting is on
REPORT_DEBUG, // reporting useful when debugging code

View file

@ -0,0 +1,232 @@
#pragma once
//-------------------------------------------------------------------------------------------------
// <copyright file="iis7util.h" company="Outercurve Foundation">
// Copyright (c) 2004, Outercurve Foundation.
// This software is released under Microsoft Reciprocal License (MS-RL).
// The license and further copyright text can be found in the file
// LICENSE.TXT at the root directory of the distribution.
// </copyright>
//
// <summary>
// IIS7 helper functions.
// </summary>
//-------------------------------------------------------------------------------------------------
#ifdef __cplusplus
extern "C" {
#endif
// IIS Config schema names
#define IIS_CONFIG_ADD L"add"
#define IIS_CONFIG_ALLOWED L"allowed"
#define IIS_CONFIG_APPHOST_ROOT L"MACHINE/WEBROOT/APPHOST"
#define IIS_CONFIG_APPLICATION L"application"
#define IIS_CONFIG_APPPOOL L"applicationPool"
#define IIS_CONFIG_APPPOOL_AUTO L"autoStart"
#define IIS_CONFIG_APPPOOL_SECTION L"system.applicationHost/applicationPools"
#define IIS_CONFIG_AUTOSTART L"serverAutoStart"
#define IIS_CONFIG_BINDING L"binding"
#define IIS_CONFIG_BINDINGINFO L"bindingInformation"
#define IIS_CONFIG_BINDINGS L"bindings"
#define IIS_CONFIG_DESC L"description"
#define IIS_CONFIG_EXECUTABLE L"scriptProcessor"
#define IIS_CONFIG_ENABLED L"enabled"
#define IIS_CONFIG_ENABLE32 L"enable32BitAppOnWin64"
#define IIS_CONFIG_FILEEXT L"fileExtension"
#define IIS_CONFIG_FILTER L"filter"
#define IIS_CONFIG_GROUPID L"groupId"
#define IIS_CONFIG_HEADERS L"customHeaders"
#define IIS_CONFIG_HTTPERRORS_SECTION L"system.webServer/httpErrors"
#define IIS_CONFIG_ID L"id"
#define IIS_CONFIG_ISAPI_SECTION L"system.webServer/isapiFilters"
#define IIS_CONFIG_HTTPPROTO_SECTION L"system.webServer/httpProtocol"
#define IIS_CONFIG_LOG_SECTION L"system.applicationHost/log"
#define IIS_CONFIG_LOG_UTF8 L"logInUTF8"
#define IIS_CONFIG_LIMITS L"limits"
#define IIS_CONFIG_PIPELINEMODE L"managedPipelineMode"
#define IIS_CONFIG_MANAGEDRUNTIMEVERSION L"managedRuntimeVersion"
#define IIS_CONFIG_WEBLOG L"logFile"
#define IIS_CONFIG_LOGFORMAT L"logFormat"
#define IIS_CONFIG_MIMEMAP L"mimeMap"
#define IIS_CONFIG_MIMETYPE L"mimeType"
#define IIS_CONFIG_MODULES L"modules"
#define IIS_CONFIG_NAME L"name"
#define IIS_CONFIG_PATH L"path"
#define IIS_CONFIG_PHYSPATH L"physicalPath"
#define IIS_CONFIG_PROTOCOL L"protocol"
#define IIS_CONFIG_RESTRICTION_SECTION L"system.webServer/security/isapiCgiRestriction"
#define IIS_CONFIG_SITE L"site"
#define IIS_CONFIG_SITE_ID L"id"
#define IIS_CONFIG_SITES_SECTION L"system.applicationHost/sites"
#define IIS_CONFIG_CONNECTTIMEOUT L"connectionTimeout"
#define IIS_CONFIG_VDIR L"virtualDirectory"
#define IIS_CONFIG_VALUE L"value"
#define IIS_CONFIG_VERBS L"verb"
#define IIS_CONFIG_WEBLIMITS_SECTION L"system.applicationHost/webLimits"
#define IIS_CONFIG_WEBLIMITS_MAXBAND L"maxGlobalBandwidth"
#define IIS_CONFIG_TRUE L"true"
#define IIS_CONFIG_FALSE L"false"
#define IIS_CONFIG_ERROR L"error"
#define IIS_CONFIG_STATUSCODE L"statusCode"
#define IIS_CONFIG_SUBSTATUS L"subStatusCode"
#define IIS_CONFIG_LANGPATH L"prefixLanguageFilePath"
#define IIS_CONFIG_RESPMODE L"responseMode"
#define IIS_CONFIG_CLEAR L"clear"
#define IIS_CONFIG_RECYCLING L"recycling"
#define IIS_CONFIG_PEROIDRESTART L"periodicRestart"
#define IIS_CONFIG_TIME L"time"
#define IIS_CONFIG_REQUESTS L"requests"
#define IIS_CONFIG_SCHEDULE L"schedule"
#define IIS_CONFIG_MEMORY L"memory"
#define IIS_CONFIG_PRIVMEMORY L"privateMemory"
#define IIS_CONFIG_PROCESSMODEL L"processModel"
#define IIS_CONFIG_IDLETIMEOUT L"idleTimeout"
#define IIS_CONFIG_QUEUELENGTH L"queueLength"
#define IIS_CONFIG_IDENITITYTYPE L"identityType"
#define IIS_CONFIG_LOCALSYSTEM L"LocalSystem"
#define IIS_CONFIG_LOCALSERVICE L"LocalService"
#define IIS_CONFIG_NETWORKSERVICE L"NetworkService"
#define IIS_CONFIG_SPECIFICUSER L"SpecificUser"
#define IIS_CONFIG_USERNAME L"userName"
#define IIS_CONFIG_PASSWORD L"password"
#define IIS_CONFIG_CPU L"cpu"
#define IIS_CONFIG_LIMIT L"limit"
#define IIS_CONFIG_CPU_ACTION L"action"
#define IIS_CONFIG_KILLW3WP L"KillW3wp"
#define IIS_CONFIG_NOACTION L"NoAction"
#define IIS_CONFIG_RESETINTERVAL L"resetInterval"
#define IIS_CONFIG_MAXWRKPROCESSES L"maxProcesses"
#define IIS_CONFIG_HANDLERS_SECTION L"system.webServer/handlers"
#define IIS_CONFIG_DEFAULTDOC_SECTION L"system.webServer/defaultDocument"
#define IIS_CONFIG_ASP_SECTION L"system.webServer/asp"
#define IIS_CONFIG_SCRIPTERROR L"scriptErrorSentToBrowser"
#define IIS_CONFIG_STATICCONTENT_SECTION L"system.webServer/staticContent"
#define IIS_CONFIG_HTTPEXPIRES L"httpExpires"
#define IIS_CONFIG_MAXAGE L"cacheControlMaxAge"
#define IIS_CONFIG_CLIENTCACHE L"clientCache"
#define IIS_CONFIG_CACHECONTROLMODE L"cacheControlMode"
#define IIS_CONFIG_USEMAXAGE L"UseMaxAge"
#define IIS_CONFIG_USEEXPIRES L"UseExpires"
#define IIS_CONFIG_CACHECUST L"cacheControlCustom"
#define IIS_CONFIG_ASP_SECTION L"system.webServer/asp"
#define IIS_CONFIG_SESSION L"session"
#define IIS_CONFIG_ALLOWSTATE L"allowSessionState"
#define IIS_CONFIG_TIMEOUT L"timeout"
#define IIS_CONFIG_BUFFERING L"bufferingOn"
#define IIS_CONFIG_PARENTPATHS L"enableParentPaths"
#define IIS_CONFIG_SCRIPTLANG L"scriptLanguage"
#define IIS_CONFIG_SCRIPTTIMEOUT L"scriptTimeout"
#define IIS_CONFIG_LIMITS L"limits"
#define IIS_CONFIG_ALLOWDEBUG L"appAllowDebugging"
#define IIS_CONFIG_ALLOWCLIENTDEBUG L"appAllowClientDebug"
#define IIS_CONFIG_CERTIFICATEHASH L"certificateHash"
#define IIS_CONFIG_CERTIFICATESTORENAME L"certificateStoreName"
#define IIS_CONFIG_HTTPLOGGING_SECTION L"system.webServer/httpLogging"
#define IIS_CONFIG_DONTLOG L"dontLog"
typedef BOOL (CALLBACK* ENUMAPHOSTELEMENTPROC)(IAppHostElement*, LPVOID);
typedef BOOL (CALLBACK* VARIANTCOMPARATORPROC)(VARIANT*, VARIANT*);
HRESULT DAPI Iis7PutPropertyVariant(
__in IAppHostElement *pElement,
__in LPCWSTR wzPropName,
__in VARIANT vtPut
);
HRESULT DAPI Iis7PutPropertyInteger(
__in IAppHostElement *pElement,
__in LPCWSTR wzPropName,
__in DWORD dValue
);
HRESULT DAPI Iis7PutPropertyString(
__in IAppHostElement *pElement,
__in LPCWSTR wzPropName,
__in LPCWSTR wzString
);
HRESULT DAPI Iis7PutPropertyBool(
__in IAppHostElement *pElement,
__in LPCWSTR wzPropName,
__in BOOL fValue);
HRESULT DAPI Iis7GetPropertyVariant(
__in IAppHostElement *pElement,
__in LPCWSTR wzPropName,
__in VARIANT* vtGet
);
HRESULT DAPI Iis7GetPropertyString(
__in IAppHostElement *pElement,
__in LPCWSTR wzPropName,
__in LPWSTR* psczGet
);
struct IIS7_APPHOSTELEMENTCOMPARISON
{
LPCWSTR sczElementName;
LPCWSTR sczAttributeName;
VARIANT* pvAttributeValue;
VARIANTCOMPARATORPROC pComparator;
};
BOOL DAPI Iis7IsMatchingAppHostElement(
__in IAppHostElement *pElement,
__in IIS7_APPHOSTELEMENTCOMPARISON* pComparison
);
HRESULT DAPI Iis7FindAppHostElementString(
__in IAppHostElementCollection *pCollection,
__in LPCWSTR wzElementName,
__in LPCWSTR wzAttributeName,
__in LPCWSTR wzAttributeValue,
__out IAppHostElement** ppElement,
__out DWORD* pdwIndex
);
HRESULT DAPI Iis7FindAppHostElementPath(
__in IAppHostElementCollection *pCollection,
__in LPCWSTR wzElementName,
__in LPCWSTR wzAttributeName,
__in LPCWSTR wzAttributeValue,
__out IAppHostElement** ppElement,
__out DWORD* pdwIndex
);
HRESULT DAPI Iis7FindAppHostElementInteger(
__in IAppHostElementCollection *pCollection,
__in LPCWSTR wzElementName,
__in LPCWSTR wzAttributeName,
__in DWORD dwAttributeValue,
__out IAppHostElement** ppElement,
__out DWORD* pdwIndex
);
HRESULT DAPI Iis7FindAppHostElementVariant(
__in IAppHostElementCollection *pCollection,
__in LPCWSTR wzElementName,
__in LPCWSTR wzAttributeName,
__in VARIANT* pvAttributeValue,
__out IAppHostElement** ppElement,
__out DWORD* pdwIndex
);
HRESULT DAPI Iis7EnumAppHostElements(
__in IAppHostElementCollection *pCollection,
__in ENUMAPHOSTELEMENTPROC pCallback,
__in LPVOID pContext,
__out IAppHostElement** ppElement,
__out DWORD* pdwIndex
);
HRESULT DAPI Iis7FindAppHostMethod(
__in IAppHostMethodCollection *pCollection,
__in LPCWSTR wzMethodName,
__out IAppHostMethod** ppMethod,
__out DWORD* pdwIndex
);
#ifdef __cplusplus
}
#endif

View file

@ -0,0 +1,83 @@
#pragma once
//-------------------------------------------------------------------------------------------------
// <copyright file="iniutil.h" company="Outercurve Foundation">
// Copyright (c) 2004, Outercurve Foundation.
// This software is released under Microsoft Reciprocal License (MS-RL).
// The license and further copyright text can be found in the file
// LICENSE.TXT at the root directory of the distribution.
// </copyright>
//
// <summary>
// Ini/cfg file helper functions.
// </summary>
//-------------------------------------------------------------------------------------------------
#ifdef __cplusplus
extern "C" {
#endif
#define ReleaseIni(ih) if (ih) { IniUninitialize(ih); }
#define ReleaseNullIni(ih) if (ih) { IniUninitialize(ih); ih = NULL; }
typedef void* INI_HANDLE;
typedef const void* C_INI_HANDLE;
extern const int INI_HANDLE_BYTES;
struct INI_VALUE
{
LPCWSTR wzName;
LPCWSTR wzValue;
DWORD dwLineNumber;
};
HRESULT DAPI IniInitialize(
__out_bcount(INI_HANDLE_BYTES) INI_HANDLE* piHandle
);
void DAPI IniUninitialize(
__in_bcount(INI_HANDLE_BYTES) INI_HANDLE piHandle
);
HRESULT DAPI IniSetOpenTag(
__inout_bcount(INI_HANDLE_BYTES) INI_HANDLE piHandle,
__in_z_opt LPCWSTR wzOpenTagPrefix,
__in_z_opt LPCWSTR wzOpenTagPostfix
);
HRESULT DAPI IniSetValueStyle(
__inout_bcount(INI_HANDLE_BYTES) INI_HANDLE piHandle,
__in_z_opt LPCWSTR wzValuePrefix,
__in_z_opt LPCWSTR wzValueSeparator
);
HRESULT DAPI IniSetCommentStyle(
__inout_bcount(INI_HANDLE_BYTES) INI_HANDLE piHandle,
__in_z_opt LPCWSTR wzLinePrefix
);
HRESULT DAPI IniParse(
__inout_bcount(INI_HANDLE_BYTES) INI_HANDLE piHandle,
__in LPCWSTR wzPath,
__out_opt FILE_ENCODING *pfeEncodingFound
);
HRESULT DAPI IniGetValueList(
__in_bcount(INI_HANDLE_BYTES) INI_HANDLE piHandle,
__deref_out_ecount_opt(pcValues) INI_VALUE** prgivValues,
__out DWORD *pcValues
);
HRESULT DAPI IniGetValue(
__in_bcount(INI_HANDLE_BYTES) INI_HANDLE piHandle,
__in LPCWSTR wzValueName,
__deref_out_z LPWSTR* psczValue
);
HRESULT DAPI IniSetValue(
__in_bcount(INI_HANDLE_BYTES) INI_HANDLE piHandle,
__in LPCWSTR wzValueName,
__in_z_opt LPCWSTR wzValue
);
HRESULT DAPI IniWriteFile(
__in_bcount(INI_HANDLE_BYTES) INI_HANDLE piHandle,
__in_z_opt LPCWSTR wzPath,
__in FILE_ENCODING feOverrideEncoding
);
#ifdef __cplusplus
}
#endif

View file

@ -76,9 +76,9 @@ void DAPI LogUninitialize(
BOOL DAPI LogIsOpen();
HRESULT DAPI LogSetSpecialParams(
__in_z LPCWSTR wzSpecialBeginLine,
__in_z LPCWSTR wzSpecialAfterTimeStamp,
__in_z LPCWSTR wzSpecialEndLine
__in_z_opt LPCWSTR wzSpecialBeginLine,
__in_z_opt LPCWSTR wzSpecialAfterTimeStamp,
__in_z_opt LPCWSTR wzSpecialEndLine
);
REPORT_LEVEL DAPI LogSetLevel(

View file

@ -0,0 +1,47 @@
#pragma once
//-------------------------------------------------------------------------------------------------
// <copyright file="polcutil.h" company="Outercurve Foundation">
// Copyright (c) 2004, Outercurve Foundation.
// This software is released under Microsoft Reciprocal License (MS-RL).
// The license and further copyright text can be found in the file
// LICENSE.TXT at the root directory of the distribution.
// </copyright>
//
// <summary>
// Header for Policy utility functions.
// </summary>
//-------------------------------------------------------------------------------------------------
#ifdef __cplusplus
extern "C" {
#endif
/********************************************************************
PolcReadNumber - reads a number from policy.
NOTE: S_FALSE returned if policy not set.
NOTE: out is set to default on S_FALSE or any error.
********************************************************************/
HRESULT DAPI PolcReadNumber(
__in_z LPCWSTR wzPolicyPath,
__in_z LPCWSTR wzPolicyName,
__in DWORD dwDefault,
__out DWORD* pdw
);
/********************************************************************
PolcReadString - reads a string from policy.
NOTE: S_FALSE returned if policy not set.
NOTE: out is set to default on S_FALSE or any error.
********************************************************************/
HRESULT DAPI PolcReadString(
__in_z LPCWSTR wzPolicyPath,
__in_z LPCWSTR wzPolicyName,
__in_z_opt LPCWSTR wzDefault,
__deref_out_z LPWSTR* pscz
);
#ifdef __cplusplus
}
#endif

View file

@ -0,0 +1,56 @@
#pragma once
//-------------------------------------------------------------------------------------------------
// <copyright file="rmutil.h" company="Outercurve Foundation">
// Copyright (c) 2004, Outercurve Foundation.
// This software is released under Microsoft Reciprocal License (MS-RL).
// The license and further copyright text can be found in the file
// LICENSE.TXT at the root directory of the distribution.
// </copyright>
//
// <summary>
// Header for Restart Manager utility functions.
// </summary>
//-------------------------------------------------------------------------------------------------
#ifdef __cplusplus
extern "C" {
#endif
typedef struct _RMU_SESSION *PRMU_SESSION;
HRESULT DAPI RmuJoinSession(
__out PRMU_SESSION *ppSession,
__in_z LPCWSTR wzSessionKey
);
HRESULT DAPI RmuAddFile(
__in PRMU_SESSION pSession,
__in_z LPCWSTR wzPath
);
HRESULT DAPI RmuAddProcessById(
__in PRMU_SESSION pSession,
__in DWORD dwProcessId
);
HRESULT DAPI RmuAddProcessesByName(
__in PRMU_SESSION pSession,
__in_z LPCWSTR wzProcessName
);
HRESULT DAPI RmuAddService(
__in PRMU_SESSION pSession,
__in_z LPCWSTR wzServiceName
);
HRESULT DAPI RmuRegisterResources(
__in PRMU_SESSION pSession
);
HRESULT DAPI RmuEndSession(
__in PRMU_SESSION pSession
);
#ifdef __cplusplus
}
#endif

View file

@ -0,0 +1,57 @@
//-------------------------------------------------------------------------------------------------
// <copyright file="srputil.h" company="Outercurve Foundation">
// Copyright (c) 2004, Outercurve Foundation.
// This software is released under Microsoft Reciprocal License (MS-RL).
// The license and further copyright text can be found in the file
// LICENSE.TXT at the root directory of the distribution.
// </copyright>
//
// <summary>
// System restore point helper functions.
// </summary>
//-------------------------------------------------------------------------------------------------
#pragma once
#ifdef __cplusplus
extern "C" {
#endif
enum SRP_ACTION
{
SRP_ACTION_UNKNOWN,
SRP_ACTION_UNINSTALL,
SRP_ACTION_INSTALL,
SRP_ACTION_MODIFY,
};
/********************************************************************
SrpInitialize - initializes system restore point functionality.
*******************************************************************/
DAPI_(HRESULT) SrpInitialize(
__in BOOL fInitializeComSecurity
);
/********************************************************************
SrpUninitialize - uninitializes system restore point functionality.
*******************************************************************/
DAPI_(void) SrpUninitialize();
/********************************************************************
SrpCreateRestorePoint - creates a system restore point.
*******************************************************************/
DAPI_(HRESULT) SrpCreateRestorePoint(
__in_z LPCWSTR wzApplicationName,
__in SRP_ACTION action
);
#ifdef __cplusplus
}
#endif

View file

@ -0,0 +1,31 @@
#pragma once
//-------------------------------------------------------------------------------------------------
// <copyright file="svcutil.h" company="Outercurve Foundation">
// Copyright (c) 2004, Outercurve Foundation.
// This software is released under Microsoft Reciprocal License (MS-RL).
// The license and further copyright text can be found in the file
// LICENSE.TXT at the root directory of the distribution.
// </copyright>
//
// <summary>
// Header for Windows service helper functions.
// </summary>
//-------------------------------------------------------------------------------------------------
#ifdef __cplusplus
extern "C" {
#endif
#define ReleaseServiceHandle(h) if (h) { ::CloseServiceHandle(h); h = NULL; }
HRESULT DAPI SvcQueryConfig(
__in SC_HANDLE sch,
__out QUERY_SERVICE_CONFIGW** ppConfig
);
#ifdef __cplusplus
}
#endif

View file

@ -375,6 +375,16 @@ DAPI_(BOOL) ThemeControlEnabled(
__in DWORD dwControl
);
/********************************************************************
ThemeControlElevates - sets/removes the shield icon on a control.
*******************************************************************/
DAPI_(void) ThemeControlElevates(
__in THEME* pTheme,
__in DWORD dwControl,
__in BOOL fElevates
);
/********************************************************************
ThemeShowControl - shows/hides a control.

View file

@ -0,0 +1,24 @@
#pragma once
//-------------------------------------------------------------------------------------------------
// <copyright file="wcalog.h" company="Outercurve Foundation">
// Copyright (c) 2004, Outercurve Foundation.
// This software is released under Microsoft Reciprocal License (MS-RL).
// The license and further copyright text can be found in the file
// LICENSE.TXT at the root directory of the distribution.
// </copyright>
//
// <summary>
// Private header for internal logging functions
// </summary>
//-------------------------------------------------------------------------------------------------
#ifdef __cplusplus
extern "C" {
#endif
BOOL WIXAPI IsVerboseLogging();
HRESULT WIXAPI SetVerboseLoggingAtom(BOOL bValue);
#ifdef __cplusplus
}
#endif

View file

@ -0,0 +1,31 @@
//-------------------------------------------------------------------------------------------------
// <copyright file="wuautil.h" company="Outercurve Foundation">
// Copyright (c) 2004, Outercurve Foundation.
// This software is released under Microsoft Reciprocal License (MS-RL).
// The license and further copyright text can be found in the file
// LICENSE.TXT at the root directory of the distribution.
// </copyright>
//
// <summary>
// Header for Windows Update Agent helpers.
// </summary>
//-------------------------------------------------------------------------------------------------
#pragma once
#if defined(__cplusplus)
extern "C" {
#endif
HRESULT DAPI WuaPauseAutomaticUpdates();
HRESULT DAPI WuaResumeAutomaticUpdates();
HRESULT DAPI WuaRestartRequired(
__out BOOL* pfRestartRequired
);
#if defined(__cplusplus)
}
#endif