views:

289

answers:

4

I have googled quite a bit and I cannot find the answer. So how many characters can be stored in a Windows Installer property value. If you give an answer can you provide the source of the answer?

+1  A: 

The MSDN documentation isn't very clear on this, but it does provide some hints. For example, this article mentions that property values may be written to the registry, which means that registry value limitations apply: http://msdn.microsoft.com/en-us/library/aa372432%28VS.85%29.aspx

Here is an article detailing registry value limitations: http://support.microsoft.com/kb/256986

So at a maximum, I'd use the registry value limitations as a guide (and still try to stay well below that).

Brian
+1  A: 

MSI is just a database, Properties are stored in the Property table which consists of two columns; Property and Value

The Value column is of the Text type, which according to MSI.CHM is not validated. By that logic, there is no restriction on the number of characters in a property. I would expect that you can think of it in terms of bytes, or kilobytes (or greater) rather than in terms of characters.

sascha
+2  A: 

A property name can be 72 characters long and there is no limit to the size of a property value.

I got this by editing my MSI using InstallShield and checking the field size of the Property table. (Exporting the table give the following header>

Property    Value ISComments
s72      L0          S255
Brody
+2  A: 

I asked the Windows Installer team how large a Property could be when marshalling data from an immediate CustomAction to a deferred CustomAction and I was told that I was only really limited by the amount of memory on the machine.

Rob Mensching

related questions