aboutsummaryrefslogtreecommitdiff
path: root/src/burn/engine/condition.h
blob: 91627f3c29611771d6026051f38051c124bd83bb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#pragma once
// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.


#if defined(__cplusplus)
extern "C" {
#endif


typedef struct _BURN_CONDITION
{
    // The is an expression a condition string to fire the built-in "need newer OS" message
    LPWSTR sczConditionString;
} BURN_CONDITION;


// function declarations

HRESULT ConditionEvaluate(
    __in BURN_VARIABLES* pVariables,
    __in_z LPCWSTR wzCondition,
    __out BOOL* pf
    );
HRESULT ConditionGlobalCheck(
    __in BURN_VARIABLES* pVariables,
    __in BURN_CONDITION* pBlock,
    __in BOOTSTRAPPER_DISPLAY display,
    __in_z LPCWSTR wzBundleName,
    __out DWORD *pdwExitCode,
    __out BOOL *pfContinueExecution
    );
HRESULT ConditionGlobalParseFromXml(
    __in BURN_CONDITION* pBlock,
    __in IXMLDOMNode* pixnBundle
    );

#if defined(__cplusplus)
}
#endif