WIX 属性为整数



我正在尝试设置一个属性来配置在安装过程中创建的新网站上配置 IIS:网站连接超时值。

但是我不能,因为连接超时的值必须是整数,而不是字符串。

在我的产品.wxs中,我有以下内容:

<Control Id="IisConnectionTimeoutLabel" Type="Text" X="45" Y="164" Width="100" Height="15" TabSkip="no" Text="Connection Timeout (sec):" />
<Control Id="IisConnectionTimeoutEdit" Type="Edit" X="45" Y="176" Width="220" Height="18" Property="IIS_CONNECTIONTIMEOUT" Text="{80}" Integer="yes"  />

在我的IisConfiguration.wxs中,我有以下内容:

<Property Id="IIS_CONNECTIONTIMEOUT" Value="300" />
<iis:WebSite Id="EersWebsite" Description="[IIS_WEBSITENAME]" ConfigureIfExists="yes" Directory="WEBINSTALLDIR" DirProperties="EersWebsiteDirProperties" ConnectionTimeout="[IIS_CONNECTIONTIMEOUT]">

当我构建项目时,我得到以下内容:

"连接超时"属性无效 - 值 "[IIS_CONNECTIONTIMEOUT]"根据其数据类型无效 "http://www.w3.org/2001/XMLSchema:nonNegativeInteger" - 字符串 "[IIS_CONNECTIONTIMEOUT]"不是有效的整数值。

iis:WebSite/@ConnectionTimeout 属性的值, "[IIS_CONNECTIONTIMEOUT]"不是合法的整数值。 法律 整数值介于 -2,147,483,648 到 2,147,483,647 之间。

提前致谢

正如错误消息所述,<iis:WebSite>ConnectionTimeout 属性的值需要整数值。nonNegativeInteger不是Formatted类型,它知道如何从方括号中提供的属性中提取值。

因此,我认为除了提供硬编码值之外,您在这里没有办法......

或者,您可以创建一个自定义操作,该操作调用 appcmd.exe ,并在命令行中提供所需的超时值,并将此操作安排在 ConfitureIIs ...但努力似乎比收益大得多......

相关内容

  • 没有找到相关文章

最新更新