我想知道是否有办法如何使用Windows choose folder dialog而不是真正的bad looking one作为默认值。
答案 0 :(得分:1)
除此之外,您可以更改默认WiX选择文件夹对话框(属性WixUINewIco
和WixUIUpIco
)中使用的图标,您可以:
或者,如果您想要链接中显示的Windows对话框,则必须创建一个自定义操作,在单击“浏览”按钮时,将打开该对话框。你可以用例如以下VBScript函数:
' Function taken from: http://cwashington.netreach.net (that sadly closed)
' Author: Jan Herman Scheffer
Function BrowseForFolder()
On Error Resume Next
Dim objShell, objFolder, intColonPos, objWshShell, returnerror
Set objShell = CreateObject("Shell.Application")
Set objWshShell = CreateObject("WScript.Shell")
Set objFolder = objShell.BrowseForFolder(&H0, "Select your folder", 514, 17)
BrowseForFolder = objFolder.ParentFolder.ParseName(objFolder.Title).Path
returnerror = err.number
If returnerror <> 0 Then
If returnerror = 424 then
BrowseForFolder = Null
else
intColonPos = InStr(objFolder.Title, ":")
If intColonPos > 0 Then
BrowseForFolder = Mid(objFolder.Title, intColonPos - 1, 2) & "\"
Session.Property("mySelectedFolder") = BrowseForFolder
End If
End If
End If
End Function
使用此功能,您可以将所选文件夹分配给属性,但是您需要另一个自定义操作将目录设置为所选文件夹:
<CustomAction Id="setFolder" Directory="myFolder" Value="[mySelectedFolder]" />
确保在 CostFinalize
- 操作后,在设置完所有目录后安排此操作,否则它将不会设置为您的值。