2013-07-08 35 views
0

所以你给我的工作很好。 现在的问题是如何设置它,使密码页面上有一条消息,要求您输入密码。这是迄今为止我所拥有的。使密码工作

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

你将不得不增加一个离开功能为nsdialogs页...

Page custom pre leave 

...有你验证密码...

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

如果您不想在该字段输入密码,只需在创建对话框时将其保留为空即可!

+0

对先生。这很好。非常感谢你 – WayzoftheKomodo

+0

@WayzoftheKomodo:如果它解决了你的问题,你应该[接受答案](http://meta.stackexchange.com/a/65088/173356) – Seki

+0

所以你给我的工作很好。现在的问题是如何设置它,以便密码页面上有一条消息要求您输入密码 – WayzoftheKomodo