Updated to version 2.3
New:
New algorithm in the InputRegCode.
Web archive
Dialogs.dll: My new plugin.
62 posts
I had finally come across a situation where I needed an InputBox and found your plugin. EVERYTHING WORKS GREAT!
But just in case you get "bored", I though I'd throw a few suggestions your way. 😉
1. It would be nice to be able to specify a default button on the InputBox to allow the user to simply press "ENTER" and have it accept the answers.
2. Another nice option would be limit to the number of characters the user would be allowed to type.
I know that I could use a StrLen operation AFTER the InputBox is closed, but I was thinking perhaps the InputBox could me made to just not accept any more characters after x number that you specified. This would then eliminate the need for the extra error checks in the NSIS code. (Of course, it would then be up to the NSIS developer to explain this to the user in the InputBox text promt.)
3. (perhaps more of a challenge) the open/save dialogs have the standard shortcuts for "history" "my Documents", etc. Is there any way to change this and allow a user to specify his/her own icon and folder? I know you're probalby using a standard Windows control which may not have this ability, but I'd thought I'd throw it out there anyway for you to ponder. (I've always thought this might be a useful feature in other applications as well...)
Keep up the great work!
👍
But just in case you get "bored", I though I'd throw a few suggestions your way. 😉
1. It would be nice to be able to specify a default button on the InputBox to allow the user to simply press "ENTER" and have it accept the answers.
2. Another nice option would be limit to the number of characters the user would be allowed to type.
I know that I could use a StrLen operation AFTER the InputBox is closed, but I was thinking perhaps the InputBox could me made to just not accept any more characters after x number that you specified. This would then eliminate the need for the extra error checks in the NSIS code. (Of course, it would then be up to the NSIS developer to explain this to the user in the InputBox text promt.)
3. (perhaps more of a challenge) the open/save dialogs have the standard shortcuts for "history" "my Documents", etc. Is there any way to change this and allow a user to specify his/her own icon and folder? I know you're probalby using a standard Windows control which may not have this ability, but I'd thought I'd throw it out there anyway for you to ponder. (I've always thought this might be a useful feature in other applications as well...)
Keep up the great work!
👍
Hi Comperio 🙂
Thanks for your post...
1. In my TODO list will be an option to press enter and continue the installation 👍
2. Yes, I can... but than again... will be increasing the parameters procedure....but ok, added in my TODO list 😁
3. I don't know... I'll have to check that...
Thanks for your post...
1. In my TODO list will be an option to press enter and continue the installation 👍
2. Yes, I can... but than again... will be increasing the parameters procedure....but ok, added in my TODO list 😁
3. I don't know... I'll have to check that...
Heya, just come across this excellent plugin.
I am trying to recreate the behaviour of the built-in file select control (a text box and a browse button) with this plugin, so I can have a custom dialog, and thought I could use this.
2 questions:
1) The save dialog takes a variable (e.g. ${VAR_5}) to be used as an output. Do I need to push this before I call and pop it twice (once to get the data, the other to restore the stack) to make my function "clean" in terms of stack management?
2) Can I suppress the automatic messagebox which asks if I want to replace the file? I check this later, on page exit, as this catches filename clashes if the user enters the file in the textbox themselves, as well.
I am trying to recreate the behaviour of the built-in file select control (a text box and a browse button) with this plugin, so I can have a custom dialog, and thought I could use this.
2 questions:
1) The save dialog takes a variable (e.g. ${VAR_5}) to be used as an output. Do I need to push this before I call and pop it twice (once to get the data, the other to restore the stack) to make my function "clean" in terms of stack management?
2) Can I suppress the automatic messagebox which asks if I want to replace the file? I check this later, on page exit, as this catches filename clashes if the user enters the file in the textbox themselves, as well.
Hi there:
1) No, you don't.
2) No, is a flag that it might come handy if the file is already there. But If you want to overwrite w/o warnings try FileOpen from nsis.
1) No, you don't.
2) No, is a flag that it might come handy if the file is already there. But If you want to overwrite w/o warnings try FileOpen from nsis.
Hi Joel,
I test some examples especially the inputregcode.nsi
Could u increase the examples details on how to add multiple ones and where does the username and key and serial be placed to allow a successful entry
I test some examples especially the inputregcode.nsi
Could u increase the examples details on how to add multiple ones and where does the username and key and serial be placed to allow a successful entry
I could...I'll try to work it on this weekend, but those features will be enabled on dialogsEx
Your plugins are interesting especially the nsweb so does this but more details on each example to how can one add more users into it.
Thanks for trying your best
Thanks for trying your best
Hm ok thanks, I literally didn't want the word "Open" - I wanted "save". Oh well, I found a (memory-sucking) way of doing it involving an extra global variable.
Thanks for the reply and the plugin!
Thanks for the reply and the plugin!
dialogsEx can customize that Open file dialog
Update this plugin:
-Changes:
Just bug fix on keygen.
-Changes:
Just bug fix on keygen.
Proposed file name in Save Dialog
Hi Joel,
I just want to ask you about the adding the possibility of the Dialogs::save control, to be able to give a proposed file name in the File Name textbox? This is very good, because the users sometimes do not know which file name to use for the program, and they can mix the things up.
Or you can post your source code of the control here, so we can try to enhcance it ?
Thanks,
Robert
Hi Joel,
I just want to ask you about the adding the possibility of the Dialogs::save control, to be able to give a proposed file name in the File Name textbox? This is very good, because the users sometimes do not know which file name to use for the program, and they can mix the things up.
Or you can post your source code of the control here, so we can try to enhcance it ?
Thanks,
Robert
Hi lobo lunar
Does your plugins inputpass.nsi allow the follow
1. it will check StrCmp $5 for to see if user type password correctly.
2. if password wrong it will loop back to Loop:
3. if password exist in the list it will carry on the next thing.
Does your plugins inputpass.nsi allow the follow
Loop:I am trying to use ur plugin to make a multiple password...
Dialogs::InputBox "Application Protecter" "Application Password Required.$\r$\nPlease enter the correct password:" "OK" "Cancel" "2" ${VAR_5}
## Get MD5 string for password
MD5DLL::GetMD5String $5
Pop $5
;nsis is the password:
StrCmp $5 '${Password1MD5}' OK WRONG
StrCmp $5 '${Password2MD5}' OK WRONG
;Is wrong!
WRONG:
Messagebox MB_YESNO|MB_ICONSTOP "Bad password. $\r$\nDo you want to try it again?" IDYES Loop
goto Exit
;Is correct!
OK:
Exit:
Quit
1. it will check StrCmp $5 for to see if user type password correctly.
2. if password wrong it will loop back to Loop:
3. if password exist in the list it will carry on the next thing.
Yes! Right now I don't have the time I want to make more examples, but try a Loop and use the array plugin if you want more than one serials or passwords.
I see, well I not familiar with the arraysplugin though I had gone throught most of the examples. I do not know how to implement it to merge with ur plugin.
but thanks for taking time to reply
but thanks for taking time to reply
Joel,
Forgive me is this is answered elsewhere in the forum. I have been using NSIS for a few years now and have a regularly used installer that implements your Dialogs.dll. It has had over 4k installs without an NSIS related problem until yesterday. A user tried to install on a WinXP box with admin privileges and got the message:
Could not load: C:\DOKUME~1\<...snip...>\Dialogs.dll
No folder was selected by the user.
Do you have any suggestions?
Thanks,
Jeff
Forgive me is this is answered elsewhere in the forum. I have been using NSIS for a few years now and have a regularly used installer that implements your Dialogs.dll. It has had over 4k installs without an NSIS related problem until yesterday. A user tried to install on a WinXP box with admin privileges and got the message:
Could not load: C:\DOKUME~1\<...snip...>\Dialogs.dll
No folder was selected by the user.
Do you have any suggestions?
Thanks,
Jeff
Any chances to post the code used?
Here is the snippet that pertains to the Dialogs:
===================================================
Start:
Dialogs::Folder "Working directory" "Choose a working directory:" $EXEDIR ${VAR_1}
StrCmp $1 "" Cancel Ok
Cancel:
DetailPrint "No folder was selected by the user"
MessageBox MB_YESNO|MB_ICONEXCLAMATION \
" No folder was selected by the user. $\n$\n \
Are you sure you want to quit the installation?" \
IDNO Start
quit
Ok:
DetailPrint "User selected working folder: $1"
goto Exit
Exit:
===================================================
The user is using WinXP Pro SP2. Also, the same installer worked on one of his machines (personal) but not the other (work). He says he has the same permissions on both.
The installer was build with NSIS version 2.21
The Dialogs.dll is dated 7/13/06
Thanks,
Jeff
===================================================
Start:
Dialogs::Folder "Working directory" "Choose a working directory:" $EXEDIR ${VAR_1}
StrCmp $1 "" Cancel Ok
Cancel:
DetailPrint "No folder was selected by the user"
MessageBox MB_YESNO|MB_ICONEXCLAMATION \
" No folder was selected by the user. $\n$\n \
Are you sure you want to quit the installation?" \
IDNO Start
quit
Ok:
DetailPrint "User selected working folder: $1"
goto Exit
Exit:
===================================================
The user is using WinXP Pro SP2. Also, the same installer worked on one of his machines (personal) but not the other (work). He says he has the same permissions on both.
The installer was build with NSIS version 2.21
The Dialogs.dll is dated 7/13/06
Thanks,
Jeff
Does his work computer have a %TEMP% folder?
Ask him to open Windows Explorer and put %TEMP% in the path and hit enter (or enter "explorer %TEMP%" in start>run. If he does this while the installer is running, he should find a nsXXX.tmp folder in there. If it's not there, then I'd assume his temp folder is missing some permissions.
-Stu
Ask him to open Windows Explorer and put %TEMP% in the path and hit enter (or enter "explorer %TEMP%" in start>run. If he does this while the installer is running, he should find a nsXXX.tmp folder in there. If it's not there, then I'd assume his temp folder is missing some permissions.
-Stu
Stu,
Thank you for your suggestion. I asked the user to monitor %TEMP% while the installer was running. He reported seeing a nsXXX.tmp folder as well as a file. I also asked him to check the space available and there were 50 GB free.
Thanks,
Jeff
Thank you for your suggestion. I asked the user to monitor %TEMP% while the installer was running. He reported seeing a nsXXX.tmp folder as well as a file. I also asked him to check the space available and there were 50 GB free.
Thanks,
Jeff
I re-test in few xp machines and everything works as should be. I don't understand why in that machine doesn't.
Did you use InitPluginsDir on you ".onInit" function? The error "couldn't load" is because nsis wasn't enable to load the plugin. Something is wrong there.
Did you use InitPluginsDir on you ".onInit" function? The error "couldn't load" is because nsis wasn't enable to load the plugin. Something is wrong there.
The next step would be for him to open the nsXXX.tmp folder after the dialogs.dll plugin should have been executed (i.e. when the error is displayed) to see if the plugin is in there.
-Stu
-Stu
I am not calling InitPluginsDir in the ".oninit". Does it need to be called if I am not accessing the $PLUGINSDIR directly?
I have tested on multiple WinXP Pro SP2 systems like the user’s. Of the many installs to date, probably the majority of them have been on WinXP. The user tested the installer successfully on his home machine with the same OS, so I do not think it an OS specific problem.
I just emailed the user to check for the dialogs.dll in the %TEMP% folder.
Thanks,
Jeff
I have tested on multiple WinXP Pro SP2 systems like the user’s. Of the many installs to date, probably the majority of them have been on WinXP. The user tested the installer successfully on his home machine with the same OS, so I do not think it an OS specific problem.
I just emailed the user to check for the dialogs.dll in the %TEMP% folder.
Thanks,
Jeff
The user sent me the following information regarding the state of %TEMP% during the installation:
the folder nsXXX.tmp contains follows files:
- Dialogs.dll (12kb)
- ioSpecial.ini (1kb)
- modern-header.bmp (30kb)
- modern-wizard.bmp (155kb)
- Splash.dll (4kb)
The file nsXXX.tmp in the temp-folder has 0 kb
This temp-folder is on the local drive c:\
the folder nsXXX.tmp contains follows files:
- Dialogs.dll (12kb)
- ioSpecial.ini (1kb)
- modern-header.bmp (30kb)
- modern-wizard.bmp (155kb)
- Splash.dll (4kb)
The file nsXXX.tmp in the temp-folder has 0 kb
This temp-folder is on the local drive c:\
Well...I'm sure in not the plugin.
As I said, something is wrong there.
🙁
As I said, something is wrong there.
🙁
I updated to the latest release of NSIS and added exception handling around the call to Dialogs.dll. If there is an error I default the directory value to $DOCUMENTS (I am looking for a working directory for the application). This enabled the user to install.
I apologize for adding the exception handling and not testing the latest release for the error by itself. I did not want the user to loose patience.
Thank you for all of your suggestions and help.
Best regards,
Jeff
I apologize for adding the exception handling and not testing the latest release for the error by itself. I did not want the user to loose patience.
Thank you for all of your suggestions and help.
Best regards,
Jeff
i cant get dialogsex working - only dialog...
dialogsex always returns an empty string (samples SAVE/OPEN dont work)
any hints?
XP SP2, NSIS 2.21
dialogsex always returns an empty string (samples SAVE/OPEN dont work)
any hints?
XP SP2, NSIS 2.21
It's probably the same as my last post on the DialogsEX thread... 🙁
Maybe Joel can give us some feedback.
Maybe Joel can give us some feedback.
Is I said, is strange...all my examples were tested in Win2k, WinXP and Win2003.