Home arrow C# arrow Page 12 - Creating a .NET Windows Installer – Part 1
SEARCH DEVARTICLES

TOOLS YOU CAN USE

advertisement
Creating a .NET Windows Installer – Part 1 - Article
(Page 12 of 14 )

You can use the serial number template (the SerialNumberTemplate property in the Customer Information window) to prevent a user from installing your application without a valid serial number. The template also determines how the serial number is formatted. However, you cannot directly validate serial numbers. Instead, you must use the template-based validation routines built into the Windows Installer product, which may not be adequate for all applications.

To start, the SerialNumberTemplate is bracketed by "greater than" and "less than" signs (< and >) so the characters do not appear directly in the text box. You can also use the dash character to separate the serial number into more than one text box.

In the template itself, you can use the following characters:

  • # requires a digit, but does not perform additional validation.
  • ? requires an alphanumeric character, but does not perform additional validation.
  • ^ requires an uppercase character or a digit, but does not perform additional validation.
  • % requires a digit that will be used by the built-in validation algorithm.
  • ? requires an alphanumeric character that will be used by the built-in validation algorithm.

Any other character is treated as a literal (required) constant. The validation algorithm (for % and ?) is built into the Windows Installer service. It adds up all the digits, and divides them by 7. If the remainder is 0 validation succeeds, otherwise it fails.

The FontViewer setup uses the template <%%D-##-##>, which uses three textboxes. The last four characters must be digits, the third character must be D, and the sum of the first two digits must be divisible by 7. (A valid code is 77D-00-00).


blog comments powered by Disqus
C# ARTICLES

- Introduction to Objects and Classes in C#, P...
- Visual C#.NET, Part 1: Introduction to Progr...
- C# - An Introduction
- Hotmail Exposed: Access Hotmail using C#
- Razor Sharp C#
- Introduction to Objects and Classes in C#
- Making Your Code CLS Compliant
- Programming with MySQL and .NET Technologies
- Socket Programming in C# - Part II
- Socket Programming in C# - Part I
- Creational Patterns in C#
- Type Conversions
- Creating Custom Delegates and Events in C#
- Inheritance and Polymorphism
- Understanding Properties in C#

Dev Articles Forums 
 RSS  Articles
 RSS  Forums
 RSS  All Feeds
Weekly Newsletter
 
Developer Updates  
Free Website Content 
Contact Us 
Site Map 
Privacy Policy 
Support 



© 2003-2012 by Developer Shed. All rights reserved. DS Cluster 6 - Follow our Sitemap
Popular Web Development Topics
All Web Development Tutorials