wix使用自定义操作来验证文本输入

时间:2013-11-15 04:23:48

标签: validation wix

我正在制作安装程序,现在,我想在安装对话框中检查用户输入。

有人说应该使用自定义操作,现在我可以在C#中编写自定义操作并将其嵌入到安装程序中,那么我该如何进行输入验证?

谢谢!

1 个答案:

答案 0 :(得分:2)

如果您要使用VBScript编写自定义操作,则需要先在Product.wxs中定义它,类似于:

<Binary Id="testDatabaseConnection" SourceFile="Scripts\testDatabaseConnection.vbs" />
<CustomAction Id="CA.TestDatabaseConnection" BinaryKey="testDatabaseConnection" VBScriptCall="testDatabaseConnection">1</CustomAction>

然后,您需要使用类似于

的按钮在其中一个UI文件中触发它
<Control Type="PushButton" Id="TestConnection" Width="93" Height="17" X="80" Y="243" Text="Test Connection">
  <!-- Validate the database connection -->
  <Publish Event="DoAction" Value="CA.TestDatabaseConnection" Order="1">1</Publish>
  <Publish Property="P.DATABASE_CONNECTION_VALID" Value="[P.DATABASE_CONNECTION_VALID]" Order="2">1</Publish>
</Control>

在脚本中,您可以设置属性值,如下所示:

Session.Property("P.DATABASE_CONNECTION_VALID") = "1"