3
votes

I have a wix 3.8 msi installer. How can I get rid of this warning?

<Property Id="DB_USER" />
...
<Control Id="UserEdit" Type="Edit" X="45" Y="45" Width="200" Height="20" Property="DB_USER" Text="{80}" />

"UserEdit" control is initialized as empty, but i get the following build warning:

Property 'DB_USER' does not contain a Value attribute and is not marked as Admin, Secure, or Hidden. The Property element is being ignored.

Attempt 1:

<Property Id="DB_USER" Value=""/>

gives the following error:

The Property/@Value attribute's value cannot be an empty string. If a value is not required, simply remove the entire attribute.

Attempt 2:

<Property Id="DB_USER" Value="[THIS_PROPERTY_DOES_NOT_EXIST]"/>

the control is initialized with string "[THIS_PROPERTY_DOES_NOT_EXIST]" instead of getting the value of a property that does not exist.

Attempt 3: with CustomAction that clears content of DB_USER property, having initial value as "-". CustomAction is described within InstallExecuteSequence being After="CostFinalize". Property remains as "-"

1
by adding Secure="yes", the warning is solved. However, I don't need SecureCustomProperties ( msdn.microsoft.com/library/aa371571.aspx ). Should I leave the property as Secure just to get rid of the warning, or is there any better way?Arnold Waldraf
Why do you think you don't need it?Christopher Painter

1 Answers

5
votes

You need to mark the property as Secure. Otherwise you can get into situations where the property won't be passed to the server side. (Managed / UAC installations).