diff --git a/dlls/msi/install.c b/dlls/msi/install.c index 249102fd1e1..f80f68a5f08 100644 --- a/dlls/msi/install.c +++ b/dlls/msi/install.c @@ -633,6 +633,30 @@ UINT WINAPI MsiGetFeatureStateW(MSIHANDLE hInstall, LPCWSTR szFeature, return ret; } +/*********************************************************************** +* MsiGetFeatureCostA (MSI.@) +*/ +UINT WINAPI MsiGetFeatureCostA(MSIHANDLE hInstall, LPCSTR szFeature, + MSICOSTTREE iCostTree, INSTALLSTATE iState, INT *piCost) +{ + FIXME("(%ld %s %i %i %p): stub\n", hInstall, debugstr_a(szFeature), + iCostTree, iState, piCost); + if (piCost) *piCost = 0; + return ERROR_SUCCESS; +} + +/*********************************************************************** +* MsiGetFeatureCostW (MSI.@) +*/ +UINT WINAPI MsiGetFeatureCostW(MSIHANDLE hInstall, LPCWSTR szFeature, + MSICOSTTREE iCostTree, INSTALLSTATE iState, INT *piCost) +{ + FIXME("(%ld %s %i %i %p): stub\n", hInstall, debugstr_w(szFeature), + iCostTree, iState, piCost); + if (piCost) *piCost = 0; + return ERROR_SUCCESS; +} + /*********************************************************************** * MsiSetComponentStateA (MSI.@) */ diff --git a/dlls/msi/msi.spec b/dlls/msi/msi.spec index d718fd21b6e..295ba7b84e7 100644 --- a/dlls/msi/msi.spec +++ b/dlls/msi/msi.spec @@ -46,8 +46,8 @@ 50 stdcall MsiGetComponentStateA(long str ptr ptr) 51 stdcall MsiGetComponentStateW(long wstr ptr ptr) 52 stdcall MsiGetDatabaseState(long) -53 stub MsiGetFeatureCostA -54 stub MsiGetFeatureCostW +53 stdcall MsiGetFeatureCostA(long str long long ptr) +54 stdcall MsiGetFeatureCostW(long wstr long long ptr) 55 stub MsiGetFeatureInfoA 56 stub MsiGetFeatureInfoW 57 stdcall MsiGetFeatureStateA(long str ptr ptr) diff --git a/include/msiquery.h b/include/msiquery.h index ed99b855296..57f7577a317 100644 --- a/include/msiquery.h +++ b/include/msiquery.h @@ -37,6 +37,14 @@ typedef enum tagMSICOLINFO MSICOLINFO_TYPES = 1 } MSICOLINFO; +typedef enum tagMSICOSTTREE +{ + MSICOSTTREE_SELFONLY = 0, + MSICOSTTREE_CHILDREN = 1, + MSICOSTTREE_PARENTS = 2, + MSICOSTTREE_PRODUCT = 3, +} MSICOSTTREE; + typedef enum tagMSIMODIFY { MSIMODIFY_REFRESH = 0,