在Installshield的自定义对话框中添加编辑字段

时间:2021-03-05 22:40:12

I have a setup project with Installshield Premium 2016.

我有一个Installshield Premium 2016的安装项目。

I created a custom dialog that has a edit field. I created a property name which was named "CustomFields" and In my appconfig there is a key

我创建了一个具有编辑字段的自定义对话框。我创建了一个名为“CustomFields”的属性名称,在我的appconfig中有一个键

    <add key="customFields" value="Test"></add>

So while installing the app, I want to it to change the value of customFields by user. My property value has a default name that is Test and in the installation dialog I can see this name

因此,在安装应用程序时,我希望它能够按用户更改customFields的值。我的属性值有一个默认名称Test,在安装对话框中我可以看到这个名字

在Installshield的自定义对话框中添加编辑字段

When I change this text by manually for example "Hello", after installation completed, in my appconfig i see "Test" value. It seems that it saves the default value. But as can be seen, the text field has referenced by this property thats why I can see the default value in my text field in the dialog.

当我手动更改此文本时,例如“Hello”,安装完成后,在我的appconfig中,我看到“Test”值。它似乎保存了默认值。但是可以看出,文本字段已被此属性引用,这就是为什么我可以在对话框的文本字段中看到默认值。

I do not know where is the problem? I could not find also any documentation about custom edit fields.

我不知道问题出在哪里?我也找不到任何有关自定义编辑字段的文档。

I followed here a bit https://www.iwasdot.com/adding-a-custom-dialog-to-and-installshield-basic-msi-project/

我跟着这里了一下https://www.iwasdot.com/adding-a-custom-dialog-to-and-installshield-basic-msi-project/

but its a bit different and it did not work to me

但它有点不同,它对我不起作用

2 个解决方案

#1


2  

Private properties are not passed from the UI sequence to the execute sequence. If you want this to work, at a minumum you will have to rename your property to use only upper-case letters and underscores. (For example, change CustomFields to CUSTOM_FIELDS.) You may also have to include its name in the SecureCustomProperties property.

私有属性不会从UI序列传递到执行序列。如果您希望这一点工作,那么您必须将您的属性重命名为仅使用大写字母和下划线。 (例如,将CustomFields更改为CUSTOM_FIELDS。)您可能还必须在SecureCustomProperties属性中包含其名称。

#2


0  

I followed @Michae's answer but still not worked. So I changed next pushbutton property and it worked finally..

我跟着@Michae的回答,但仍然没有奏效。所以我改变了下一个按钮属性,它终于工作了..

在Installshield的自定义对话框中添加编辑字段

#1


2  

Private properties are not passed from the UI sequence to the execute sequence. If you want this to work, at a minumum you will have to rename your property to use only upper-case letters and underscores. (For example, change CustomFields to CUSTOM_FIELDS.) You may also have to include its name in the SecureCustomProperties property.

私有属性不会从UI序列传递到执行序列。如果您希望这一点工作,那么您必须将您的属性重命名为仅使用大写字母和下划线。 (例如,将CustomFields更改为CUSTOM_FIELDS。)您可能还必须在SecureCustomProperties属性中包含其名称。

#2


0  

I followed @Michae's answer but still not worked. So I changed next pushbutton property and it worked finally..

我跟着@Michae的回答,但仍然没有奏效。所以我改变了下一个按钮属性,它终于工作了..

在Installshield的自定义对话框中添加编辑字段