CreateDirRequest - 手动更改路径

时间:2013-05-20 11:08:24

标签: nsis

在我的代码中,我使用NSD_CreateDirRequest来设置文件夹的路径。当我使用浏览按钮时,它工作得很好。但是当我手动更改目录时,它不起作用。

实施例。 我使用“浏览”按钮选择此目录:

C:\Users\User\Desktop\Folder

当我手动将目录更改为:

C:\Users\User\Desktop\Folder2

然后按下,它仍然是旧目录:C:\Users\User\Desktop\Folder 如何解决?

我的代码:

    ${NSD_CreateDirRequest} 0 22u 84% 12u "Choose directory"
    Pop $Dir
    ${NSD_SetText} $Dir $DirApp
    ${NSD_CreateBrowseButton} 85% 22u 15% 12u "Choose"
    Pop $BrowseButton
    ${NSD_OnClick} $BrowseButton OnBrowseForDir

Function OnBrowseForDir

    nsDialogs::SelectFolderDialog /NOUNLOAD "Directory" 
    Pop $0
    ${If} $0 == error
    ${Else}
        StrCpy $DirApp $0
        ${NSD_SetText} $Dir $DirApp
    ${EndIf}

FunctionEnd

1 个答案:

答案 0 :(得分:0)

您需要明确读取目录的值,例如在留下回调的页面中:

Page custom CustomPageName LeaveCallback

# ...

Function LeaveCallback
    ${NSD_GetText} $Dir $DirApp
FunctionEnd