diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2021-07-19 18:50:27 -0500 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2021-07-19 19:20:56 -0500 |
| commit | ab47449ca6ccd2ae2b6f0bf477bcea7e49aa8f6b (patch) | |
| tree | 4a782518ae501e645aa635403bfd535576c3917e /src/libs/dutil/WixToolset.DUtil/inc | |
| parent | 041cbc2ab9ca6b29841f19792c5b66fd1233dd37 (diff) | |
| download | wix-ab47449ca6ccd2ae2b6f0bf477bcea7e49aa8f6b.tar.gz wix-ab47449ca6ccd2ae2b6f0bf477bcea7e49aa8f6b.tar.bz2 wix-ab47449ca6ccd2ae2b6f0bf477bcea7e49aa8f6b.zip | |
Add fixed buffer butil APIs.
Diffstat (limited to 'src/libs/dutil/WixToolset.DUtil/inc')
| -rw-r--r-- | src/libs/dutil/WixToolset.DUtil/inc/butil.h | 81 |
1 files changed, 73 insertions, 8 deletions
diff --git a/src/libs/dutil/WixToolset.DUtil/inc/butil.h b/src/libs/dutil/WixToolset.DUtil/inc/butil.h index 989d4237..0405be8b 100644 --- a/src/libs/dutil/WixToolset.DUtil/inc/butil.h +++ b/src/libs/dutil/WixToolset.DUtil/inc/butil.h | |||
| @@ -30,15 +30,54 @@ RETURNS: | |||
| 30 | All other returns are unexpected returns from other dutil methods. | 30 | All other returns are unexpected returns from other dutil methods. |
| 31 | ********************************************************************/ | 31 | ********************************************************************/ |
| 32 | HRESULT DAPI BundleGetBundleInfo( | 32 | HRESULT DAPI BundleGetBundleInfo( |
| 33 | __in_z LPCWSTR szBundleId, | 33 | __in_z LPCWSTR wzBundleId, |
| 34 | __in_z LPCWSTR szAttribute, | 34 | __in_z LPCWSTR wzAttribute, |
| 35 | __deref_out_z LPWSTR* psczValue | 35 | __deref_out_z LPWSTR* psczValue |
| 36 | ); | 36 | ); |
| 37 | 37 | ||
| 38 | /******************************************************************** | 38 | /******************************************************************** |
| 39 | BundleGetBundleInfoFixed - Queries the bundle installation metadata for a given property | ||
| 40 | |||
| 41 | RETURNS: | ||
| 42 | E_INVALIDARG | ||
| 43 | An invalid parameter was passed to the function. | ||
| 44 | HRESULT_FROM_WIN32(ERROR_UNKNOWN_PRODUCT) | ||
| 45 | The bundle is not installed | ||
| 46 | HRESULT_FROM_WIN32(ERROR_UNKNOWN_PROPERTY) | ||
| 47 | The property is unrecognized | ||
| 48 | HRESULT_FROM_WIN32(ERROR_MORE_DATA) | ||
| 49 | A buffer is too small to hold the requested data. | ||
| 50 | E_NOTIMPL: | ||
| 51 | Tried to read a bundle attribute for a type which has not been implemented | ||
| 52 | |||
| 53 | All other returns are unexpected returns from other dutil methods. | ||
| 54 | ********************************************************************/ | ||
| 55 | HRESULT DAPI BundleGetBundleInfoFixed( | ||
| 56 | __in_z LPCWSTR wzBundleId, | ||
| 57 | __in_z LPCWSTR wzAttribute, | ||
| 58 | __out_ecount_opt(*pcchValue) LPWSTR wzValue, | ||
| 59 | __inout SIZE_T* pcchValue | ||
| 60 | ); | ||
| 61 | |||
| 62 | /******************************************************************** | ||
| 39 | BundleEnumRelatedBundle - Queries the bundle installation metadata for installs with the given upgrade code | 63 | BundleEnumRelatedBundle - Queries the bundle installation metadata for installs with the given upgrade code |
| 64 | RETURNS: | ||
| 65 | E_INVALIDARG | ||
| 66 | An invalid parameter was passed to the function. | ||
| 40 | 67 | ||
| 41 | NOTE: lpBundleIdBuff is a buffer to receive the bundle GUID. This buffer must be 39 characters long. | 68 | All other returns are unexpected returns from other dutil methods. |
| 69 | ********************************************************************/ | ||
| 70 | HRESULT DAPI BundleEnumRelatedBundle( | ||
| 71 | __in_z LPCWSTR wzUpgradeCode, | ||
| 72 | __in BUNDLE_INSTALL_CONTEXT context, | ||
| 73 | __inout PDWORD pdwStartIndex, | ||
| 74 | __deref_out_z LPWSTR* psczBundleId | ||
| 75 | ); | ||
| 76 | |||
| 77 | /******************************************************************** | ||
| 78 | BundleEnumRelatedBundleFixed - Queries the bundle installation metadata for installs with the given upgrade code | ||
| 79 | |||
| 80 | NOTE: lpBundleIdBuff is a buffer to receive the bundle GUID. This buffer must be 39 characters long. | ||
| 42 | The first 38 characters are for the GUID, and the last character is for the terminating null character. | 81 | The first 38 characters are for the GUID, and the last character is for the terminating null character. |
| 43 | RETURNS: | 82 | RETURNS: |
| 44 | E_INVALIDARG | 83 | E_INVALIDARG |
| @@ -46,11 +85,11 @@ RETURNS: | |||
| 46 | 85 | ||
| 47 | All other returns are unexpected returns from other dutil methods. | 86 | All other returns are unexpected returns from other dutil methods. |
| 48 | ********************************************************************/ | 87 | ********************************************************************/ |
| 49 | HRESULT DAPI BundleEnumRelatedBundle( | 88 | HRESULT DAPI BundleEnumRelatedBundleFixed( |
| 50 | __in_z LPCWSTR lpUpgradeCode, | 89 | __in_z LPCWSTR wzUpgradeCode, |
| 51 | __in BUNDLE_INSTALL_CONTEXT context, | 90 | __in BUNDLE_INSTALL_CONTEXT context, |
| 52 | __inout PDWORD pdwStartIndex, | 91 | __inout PDWORD pdwStartIndex, |
| 53 | __out_ecount(MAX_GUID_CHARS+1) LPWSTR lpBundleIdBuf | 92 | __out_ecount(MAX_GUID_CHARS+1) LPWSTR wzBundleId |
| 54 | ); | 93 | ); |
| 55 | 94 | ||
| 56 | /******************************************************************** | 95 | /******************************************************************** |
| @@ -77,6 +116,32 @@ HRESULT DAPI BundleGetBundleVariable( | |||
| 77 | __deref_out_z LPWSTR* psczValue | 116 | __deref_out_z LPWSTR* psczValue |
| 78 | ); | 117 | ); |
| 79 | 118 | ||
| 119 | /******************************************************************** | ||
| 120 | BundleGetBundleVariableFixed - Queries the bundle installation metadata for a given variable | ||
| 121 | |||
| 122 | RETURNS: | ||
| 123 | S_OK | ||
| 124 | Success, if the variable had a value, it's returned in psczValue | ||
| 125 | E_INVALIDARG | ||
| 126 | An invalid parameter was passed to the function. | ||
| 127 | HRESULT_FROM_WIN32(ERROR_UNKNOWN_PRODUCT) | ||
| 128 | The bundle is not installed | ||
| 129 | HRESULT_FROM_WIN32(ERROR_UNKNOWN_PROPERTY) | ||
| 130 | The variable is unrecognized | ||
| 131 | HRESULT_FROM_WIN32(ERROR_MORE_DATA) | ||
| 132 | A buffer is too small to hold the requested data. | ||
| 133 | E_NOTIMPL: | ||
| 134 | Tried to read a bundle variable for a type which has not been implemented | ||
| 135 | |||
| 136 | All other returns are unexpected returns from other dutil methods. | ||
| 137 | ********************************************************************/ | ||
| 138 | HRESULT DAPI BundleGetBundleVariableFixed( | ||
| 139 | __in_z LPCWSTR wzBundleId, | ||
| 140 | __in_z LPCWSTR wzVariable, | ||
| 141 | __out_ecount_opt(*pcchValue) LPWSTR wzValue, | ||
| 142 | __inout SIZE_T* pcchValue | ||
| 143 | ); | ||
| 144 | |||
| 80 | 145 | ||
| 81 | #ifdef __cplusplus | 146 | #ifdef __cplusplus |
| 82 | } | 147 | } |
