aboutsummaryrefslogtreecommitdiff
path: root/src/api
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2022-07-07 17:52:15 -0700
committerRob Mensching <rob@firegiant.com>2022-07-10 21:42:26 -0700
commit36a8f464f6c9b7e553c94b29ee3ca836638eef4d (patch)
tree701d5c00b29e566da0fe434c695e7cc9efde62f3 /src/api
parent69b10dec18ed9c3ac115db5a207b506807862e2b (diff)
downloadwix-36a8f464f6c9b7e553c94b29ee3ca836638eef4d.tar.gz
wix-36a8f464f6c9b7e553c94b29ee3ca836638eef4d.tar.bz2
wix-36a8f464f6c9b7e553c94b29ee3ca836638eef4d.zip
Support bind variables in Package and Bundle versions
Closes 6779
Diffstat (limited to 'src/api')
-rw-r--r--src/api/wix/WixToolset.Data/ErrorMessages.cs7
-rw-r--r--src/api/wix/WixToolset.Extensibility/Services/IBackendHelper.cs19
2 files changed, 19 insertions, 7 deletions
diff --git a/src/api/wix/WixToolset.Data/ErrorMessages.cs b/src/api/wix/WixToolset.Data/ErrorMessages.cs
index be222e6d..c28812f7 100644
--- a/src/api/wix/WixToolset.Data/ErrorMessages.cs
+++ b/src/api/wix/WixToolset.Data/ErrorMessages.cs
@@ -1326,12 +1326,7 @@ namespace WixToolset.Data
1326 1326
1327 public static Message InvalidProductVersion(SourceLineNumber sourceLineNumbers, string version) 1327 public static Message InvalidProductVersion(SourceLineNumber sourceLineNumbers, string version)
1328 { 1328 {
1329 return Message(sourceLineNumbers, Ids.InvalidProductVersion, "Invalid product version '{0}'. Product version must have a major version less than 256, a minor version less than 256, and a build version less than 65536.", version); 1329 return Message(sourceLineNumbers, Ids.InvalidProductVersion, "Invalid product version '{0}'. MSI product versions must have a major version less than 256, a minor version less than 256, and a build version less than 65536. The revision value is ignored but version labels and metadata are not allowed.", version);
1330 }
1331
1332 public static Message InvalidProductVersion(SourceLineNumber sourceLineNumbers, string version, string packagePath)
1333 {
1334 return Message(sourceLineNumbers, Ids.InvalidProductVersion, "Invalid product version '{0}' in package '{1}'. When included in a bundle, all product version fields in an MSI package must be less than 65536.", version, packagePath);
1335 } 1330 }
1336 1331
1337 public static Message InvalidRemoveComponent(SourceLineNumber sourceLineNumbers, string component, string feature, string transformPath) 1332 public static Message InvalidRemoveComponent(SourceLineNumber sourceLineNumbers, string component, string feature, string transformPath)
diff --git a/src/api/wix/WixToolset.Extensibility/Services/IBackendHelper.cs b/src/api/wix/WixToolset.Extensibility/Services/IBackendHelper.cs
index 1c92303e..eff42b99 100644
--- a/src/api/wix/WixToolset.Extensibility/Services/IBackendHelper.cs
+++ b/src/api/wix/WixToolset.Extensibility/Services/IBackendHelper.cs
@@ -93,7 +93,7 @@ namespace WixToolset.Extensibility.Services
93 /// <param name="value">The Filename value.</param> 93 /// <param name="value">The Filename value.</param>
94 /// <param name="source">true to get a source name; false to get a target name</param> 94 /// <param name="source">true to get a source name; false to get a target name</param>
95 /// <param name="longName">true to get a long name; false to get a short name</param> 95 /// <param name="longName">true to get a long name; false to get a short name</param>
96 /// <returns>The name.</returns> 96 /// <returns>The requesed file name.</returns>
97 string GetMsiFileName(string value, bool source, bool longName); 97 string GetMsiFileName(string value, bool source, bool longName);
98 98
99 /// <summary> 99 /// <summary>
@@ -165,5 +165,22 @@ namespace WixToolset.Extensibility.Services
165 /// Thus the returned array will always be of length 4. 165 /// Thus the returned array will always be of length 4.
166 /// </remarks> 166 /// </remarks>
167 string[] SplitMsiFileName(string value); 167 string[] SplitMsiFileName(string value);
168
169 /// <summary>
170 /// Tries to parse a version from the provided version string.
171 /// </summary>
172 /// <param name="version">The version to verify and parse.</param>
173 /// <param name="parsedVersion">The parsed result if possible, otherwise null.</param>
174 /// <returns>True if the version was able to parsed, otherwise false.</returns>
175 bool TryParseFourPartVersion(string version, out string parsedVersion);
176
177 /// <summary>
178 /// Tries to parse an MSI product version from the provided version string.
179 /// </summary>
180 /// <param name="version">The version to verify and parse.</param>
181 /// <param name="strict">Indicates whether to return a strict (255.255.65535) product version or any valid product version (255.255.65535.*).</param>
182 /// <param name="parsedVersion">The parsed result if possible, otherwise null.</param>
183 /// <returns>True if the version was able to parsed as an product version, otherwise false.</returns>
184 bool TryParseMsiProductVersion(string version, bool strict, out string parsedVersion);
168 } 185 }
169} 186}