Archive: Edit the "Abort Retry Ignore" error box ?


Edit the "Abort Retry Ignore" error box ?
Hello all.

When NSIS encounters a file that is locked, and it can't overwrite, it produces the following message box, which is good.

http://webpages.charter.net/orum/1.jpg

However, I’m finding that some of my customers think this does not mean anything, and they hit ignore, and continue with the install. Afterwards when the software does not work right, they wonder why...

Well I’m wondering if I can hide or disable the ignore button, and only allow them to Abort or Retry? Thanks all.


You can try the one from dor's MessageBoxEx

PD: oops! I ment DrO :)


And here's another option based on info in the help files regarding the FILE command:

The File command sets the error flag if overwrite mode is set to 'try' and the file could not be overwritten, or if the overwrite mode is set to 'on' and the file could not be overwritten and the user selects ignore.
Therefore, all you'd have to do is check the error flag during the install. If present, you could present the user with nasty error that makes it clear that something went wrong.

Or simply use FileErrorText.


Yeah, good point Comperio, I could do that. I guess I like the current error box though, but I just want to disable the ignore button, is that possible? Thanks.

Edit: Sorry, I went to lunch, I will check out FileErrorText, thanks Kichik!


Kichik, thanks FileErrorText should do the trick. I can at least tell them not to click Ignore. I'm a little confused to the usage of FileErrorText though.

NSIS Manual says: FileErrorText file error text
&
HM NIS Edit says: FileErrorText [text (can contain $0)][text without ignore (can contain $0)]

What is it really? Thanks.


The parameter where you specify "text without ignore" is used when AllowSkipFiles is used with off. Use it if you want to disallow the user to skip at all.


Originally posted by kichik
The parameter where you specify "text without ignore" is used when AllowSkipFiles is used with off. Use it if you want to disallow the user to skip at all.
That did the trick, perfect, thanks!