使密码工作

时间:2013-07-08 20:11:01

标签: nsis

所以你给我的作品很棒。 现在的问题是如何设置它,以便密码页面上有一条消息,要求您输入密码这是我到目前为止所拥有的。

Function leave 


    ${NSD_GetText} $hwnd $0
    ${If} $0 != "web9^root"
        MessageBox MB_OK "Please enter a valid security code"
        Abort
    ${EndIf}
FunctionEnd
Function pre
nsDialogs::Create 1018
    Pop $dialog

${NSD_CreatePassword} 0 0 50% 8% ""
    Pop $hwnd


nsDialogs::show

FunctionEnd

======================

所以我设置了以下脚本来运行,

!include "nsDialogs.nsh" 
!include "winmessages.nsh"
!include "logiclib.nsh"
OutFile "test.exe"



Page Custom pre

var dialog
var hwnd

Function pre
nsDialogs::Create 1018
    Pop $dialog
${NSD_CreatePassword} 0 0 50% 8% "web9^root"
    Pop $hwnd
    SendMessage $hwnd ${EM_SETPASSWORDCHAR} 149 0 # 149 = medium dot

nsDialogs::Show
FunctionEnd

Section ""
SectionEnd

如何制作,如果您不知道密码,它将不允许您通过。我还需要知道谁设置它,以便密码不在文本字段中。你能帮助我吗

1 个答案:

答案 0 :(得分:1)

您必须为该nsdialogs页面添加一个leave函数...

Page custom pre leave

...然后验证密码......

Function leave
    ${NSD_GetText} $hwnd $0
    ${If} $0 != "yourPassword"
        MessageBox MB_OK "Wrong password"
        Abort
    ${EndIf}
FunctionEnd

如果您不想在该字段中输入密码,请在创建对话框时将其留空!