Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/installation/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Installation 使用“文件浏览”对话框设置的属性更新编辑字段_Installation_Windows Installer_Installshield_Custom Action - Fatal编程技术网

Installation 使用“文件浏览”对话框设置的属性更新编辑字段

Installation 使用“文件浏览”对话框设置的属性更新编辑字段,installation,windows-installer,installshield,custom-action,Installation,Windows Installer,Installshield,Custom Action,我有一个开始为空的编辑字段。用户使用一个按钮启动文件浏览对话框并允许他们选择文件。这一切都正常工作,文件存储到属性中,功能符合预期 但是,一旦用户选择文件,编辑字段将不会更新。向前,然后向后,一个对话框在字段中显示属性,但我不能要求用户这样做。我已经读到,这是一个微星的限制,并想知道是否有任何办法绕过它 本质上,我需要“刷新”对话框,或者至少在用户选择他们的文件后刷新编辑字段控件 谢谢这确实是Windows Installer的一个限制。从MSI软件包中克服此问题的唯一解决方案是使用谢谢,看起来

我有一个开始为空的编辑字段。用户使用一个按钮启动文件浏览对话框并允许他们选择文件。这一切都正常工作,文件存储到属性中,功能符合预期

但是,一旦用户选择文件,编辑字段将不会更新。向前,然后向后,一个对话框在字段中显示属性,但我不能要求用户这样做。我已经读到,这是一个微星的限制,并想知道是否有任何办法绕过它

本质上,我需要“刷新”对话框,或者至少在用户选择他们的文件后刷新编辑字段控件


谢谢

这确实是Windows Installer的一个限制。从MSI软件包中克服此问题的唯一解决方案是使用

谢谢,看起来不错,但是我如何在InstallShield中打开twin对话框?.dll正在处理文件浏览,因此它不是一个对话框,我可以更改“下一步”按钮的功能。您需要访问其对话框编辑器,否则无法实现此方法。此外,InstallShield应该在预定义对话框列表中提供一个标准的BrowseDlg,您可以对其进行编辑。它确实提供了一个“InstallChangeFolder”,但FileBrowse.dll不使用它,它会打开一个普通的windows文件浏览对话框,而不是包装在InstallShield对话框中的对话框。有什么办法吗?只要在启动FileBrowse对话框的控件事件之后添加一个额外的NewDialog(对于twin对话框)控件事件。@MichaelUrman我不知道为什么我没有想到这个。。。不管怎样,如果实现了,并且工作得很好,您甚至不知道对话框的变化。谢谢:)