@deguix
thx for help - i did it another way now, not less comfortable
wish you happy holidays 🙂
InstallOptionsEx
368 posts
Hi deguix
I tried out the transparent flags for BMP and it works! Thanks a lot!
However, the custom page re-draw itself slowly (really slow). I am pretty sure that the flag slowing it down because once the flag removed, the custom page loaded just fine. Is there any work around that I could avoild this problem until next release? FYI, I have 4 BMP on custom page: a background image and 3 images with transpanent flag. Thanks in advance!!
I tried out the transparent flags for BMP and it works! Thanks a lot!
However, the custom page re-draw itself slowly (really slow). I am pretty sure that the flag slowing it down because once the flag removed, the custom page loaded just fine. Is there any work around that I could avoild this problem until next release? FYI, I have 4 BMP on custom page: a background image and 3 images with transpanent flag. Thanks in advance!!
@robber98: I implemented exactly as on original InstallOptions. Try your INI file on it and see if it continues to slow down.
I'm now accepting help including new features to the plugin. If anyone wants to make or made patches for this plugin, think they're useful, and want them to be implemented on IOEx, you're welcome. TreeView is not an easy control to implement (a month passed and still less than 50% of the TreeView is done) and about no features were added besides the control.
I lately added a screenshot of the TreeView control to the IOEx Archive page. It's simple looking now, but I'll try to improve it more in the next days.
I'm now accepting help including new features to the plugin. If anyone wants to make or made patches for this plugin, think they're useful, and want them to be implemented on IOEx, you're welcome. TreeView is not an easy control to implement (a month passed and still less than 50% of the TreeView is done) and about no features were added besides the control.
I lately added a screenshot of the TreeView control to the IOEx Archive page. It's simple looking now, but I'll try to improve it more in the next days.
Hi,
I'm working on scripts that used installoptions.dll (not installoptionsex) and i've just downloaded and installed InstallOptionsEx and my question is : how to replace the use of installoptions by installoptionsex ?
(I'm using W2000 SPa and NSIS 2.05)
Geo
I'm working on scripts that used installoptions.dll (not installoptionsex) and i've just downloaded and installed InstallOptionsEx and my question is : how to replace the use of installoptions by installoptionsex ?
(I'm using W2000 SPa and NSIS 2.05)
Geo
Have you read the InstallOptionsEx readme?
Place InstallOptionsEx.dll in yor Plugins folder and use InstallOptionsEx:: call.
-Stu
Place InstallOptionsEx.dll in yor Plugins folder and use InstallOptionsEx:: call.
-Stu
I've read that (sorry but as I'm working on a code I've not done, and the guy has quit the company so many things are confusing for me), I will try futhermore (there're no InstallOptions:: call used in the code).
EDIT : I've changed all InstallOptions:: call by InstallOptionsEx:: call in system.nsh. It compiles, it make InstallOptionsEx properties working (I've tried with NextEnabled=0) but MUI_PAGE_WELCOME doesn't displayed rightly.
EDIT 2 : as written in the doc, I've also try to rename InstallOptionsEx.dll in InstallOptions.dll but the MUI_PAGE_WELCOME doesn't displayed rightly anymore.
To be sure I've understant a main point : InstallOptionsEx is InstallOptions, but developped more deeply ?
EDIT : I've changed all InstallOptions:: call by InstallOptionsEx:: call in system.nsh. It compiles, it make InstallOptionsEx properties working (I've tried with NextEnabled=0) but MUI_PAGE_WELCOME doesn't displayed rightly.
EDIT 2 : as written in the doc, I've also try to rename InstallOptionsEx.dll in InstallOptions.dll but the MUI_PAGE_WELCOME doesn't displayed rightly anymore.
To be sure I've understant a main point : InstallOptionsEx is InstallOptions, but developped more deeply ?
Yes.
If you need to use InstallOptionsEx's features, then use it instead of just InstallOptions, else stick with default InstallOptions.
-Stu
If you need to use InstallOptionsEx's features, then use it instead of just InstallOptions, else stick with default InstallOptions.
-Stu
EDIT 2 : as written in the doc, I've also try to rename InstallOptionsEx.dll in InstallOptions.dll but the MUI_PAGE_WELCOME doesn't displayed rightly anymore.That's what I'm planning to next version, try to make support again to the "SendMessage" command on some controls that have been using the "custom draw".
To be sure I've understant a main point : InstallOptionsEx is InstallOptions, but developped more deeply ?Yes, except for the docs which is not looking that "helpful" right now.
So is it a way to use InstallOptionsEx instead of InstallOptions and having the pages displayed correctly ?
Or should I use InstallOptions and use InstallOptionsEx with some dll call when I need it ? (I can't really figure out how both can works together... :-\ )
Or should I use InstallOptions and use InstallOptionsEx with some dll call when I need it ? (I can't really figure out how both can works together... :-\ )
In MUI's System.nsh, just use InstallOptionsand in your installer script use InstallOptionsEx. As simple as that.
That means you get two InstallOptions dll's in your installer though.
-Stu
That means you get two InstallOptions dll's in your installer though.
-Stu
It's me again 🙂
In my custom dialog, I've tried to use InstallOptionsEx but I can't extract the INI file.
With InstallOptions.dll, I was doing that in tne .init function :
EDIT : Ok, I've look inside system.nsh and solve my problem :
EDIT 2 : I achieve to made all work together 😁, thx for your help.
All I had to do is to add two macros (the two I was using with InstallOptions) :
I will probably have to use InstallOptionEx in other custom pages so what is better :
- to put those macros in system.nsh
- to create a system_ex.nsh containing the macro specific to InstallOptionEx ??
In my custom dialog, I've tried to use InstallOptionsEx but I can't extract the INI file.
With InstallOptions.dll, I was doing that in tne .init function :
And I've tried :
Function DlgJvmDetection.onInit
!insertmacro MUI_INSTALLOPTIONS_EXTRACT_AS "${INCLUDES_DLGS_DIR}\DlgJvmDetection.ini" "DlgJvmDetection.ini"
FunctionEnd
Function DlgJvmDetection.onInit
InitPluginsDir
File /oname=$PLUGINSDIR\DlgJvmDetection.ini DlgJvmDetection.ini
FunctionEnd
But I get a "File: "DlgJvmDetection.ini" -> no files found." error in both of the case.
Function DlgJvmDetection.onInit
File /oname=${INCLUDES_DLGS_DIR}\DlgJvmDetection.ini DlgJvmDetection.ini
FunctionEnd
EDIT : Ok, I've look inside system.nsh and solve my problem :
Function DlgJvmDetection.onInit
InitPluginsDir
File "/oname=$PLUGINSDIR\DlgJvmDetection.ini" "${INCLUDES_DLGS_DIR}\DlgJvmDetection.ini"
FunctionEnd
EDIT 2 : I achieve to made all work together 😁, thx for your help.
All I had to do is to add two macros (the two I was using with InstallOptions) :
!macro MUI_INSTALLOPTION****INITDIALOG FILE
!verbose push
!verbose ${MUI_VERBOSE}
InstallOptionsEx::initDialog /NOUNLOAD "$PLUGINSDIR\${FILE}"
!verbose pop
!macroend
I've got (a last ?) question : for the moment, I put those macro in DlgJvmDetection.nsi containing the callbacks functions and some functions to go with my custom page INI (DlgJvmDetection.ini).!macro MUI_INSTALLOPTION****SHOW
!verbose push
!verbose ${MUI_VERBOSE}
InstallOptionsEx::show
Pop $MUI_TEMP1
!verbose pop
!macroend
I will probably have to use InstallOptionEx in other custom pages so what is better :
- to put those macros in system.nsh
- to create a system_ex.nsh containing the macro specific to InstallOptionEx ??
2. Answer:
to create a system_ex.nsh containing the macro specific to InstallOptionEx
Thx for your quick help and advices. The library is done and used.
I've got a new problem. I've got a LINK control, and would like that when clicked, it open an URL with Internet Explorer (to install a program,it needs IE :-\). My main webbrowser is Firefox, and if I just put an URL as STATE value for the LINK control, with notify=ONCLICK , it correctly open the link in Firefox.
In the doc, there is written, for the STATE field option used with a LINK control : "Specifies something to be executed or opened (like "Exec" command from NSIS)."
But I've tried many different syntax but it doesn't work (nothing happens when I click)
(I'm using WriteIniStr in the .pre callback on my custom dialog)
WriteIniStr "$PLUGINSDIR\DlgJvmDetection.ini" "Field 10" "State" "Exec '$WINDIR\explorer.exe ${JVM_DOWNLOAD_URL}'"
WriteIniStr "$PLUGINSDIR\DlgJvmDetection.ini" "Field 10" "State" '"$WINDIR\explorer.exe" "${JVM_DOWNLOAD_URL}"'
WriteIniStr "$PLUGINSDIR\DlgJvmDetection.ini" "Field 10" "State" 'Exec '"$WINDIR\explorer.exe ${JVM_DOWNLOAD_URL}"'
WriteIniStr "$PLUGINSDIR\DlgJvmDetection.ini" "Field 10" "State" "$WINDIR\explorer.exe ${JVM_DOWNLOAD_URL}"
Is it a syntax problem (with the " and '), or something else ?
And secondly, does a way to center text in a LABEL control exist ?
I've got a new problem. I've got a LINK control, and would like that when clicked, it open an URL with Internet Explorer (to install a program,it needs IE :-\). My main webbrowser is Firefox, and if I just put an URL as STATE value for the LINK control, with notify=ONCLICK , it correctly open the link in Firefox.
In the doc, there is written, for the STATE field option used with a LINK control : "Specifies something to be executed or opened (like "Exec" command from NSIS)."
But I've tried many different syntax but it doesn't work (nothing happens when I click)
(I'm using WriteIniStr in the .pre callback on my custom dialog)
WriteIniStr "$PLUGINSDIR\DlgJvmDetection.ini" "Field 10" "State" "Exec '$WINDIR\explorer.exe ${JVM_DOWNLOAD_URL}'"
WriteIniStr "$PLUGINSDIR\DlgJvmDetection.ini" "Field 10" "State" '"$WINDIR\explorer.exe" "${JVM_DOWNLOAD_URL}"'
WriteIniStr "$PLUGINSDIR\DlgJvmDetection.ini" "Field 10" "State" 'Exec '"$WINDIR\explorer.exe ${JVM_DOWNLOAD_URL}"'
WriteIniStr "$PLUGINSDIR\DlgJvmDetection.ini" "Field 10" "State" "$WINDIR\explorer.exe ${JVM_DOWNLOAD_URL}"
Is it a syntax problem (with the " and '), or something else ?
And secondly, does a way to center text in a LABEL control exist ?
Just pass it ${JVM_DOWNLOAD_URL}. You don't need to pass it the path to Windows explorer.
-Stu
-Stu
The problem is that if I do that, it will open the URL with the default web browser, but I want to force the use of IE.
I've got that in my .ini at execution :
I've got that in my .ini at execution :
And if I paste "C:\WINNT\explorer.exe" "http://www.java.com/en/download/windows_automatic.jsp" in my windows workplace, it launch IE and open the right page.
[Field 10]
Type=Link
Text=Windows Automated Downloads
Left=95
Right=292
Top=79
Bottom=87
Notify=ONCLICK
State="C:\WINNT\explorer.exe" "http://www.java.com/en/download/windows_automatic.jsp"
Try WriteIniStr "$PLUGINSDIR\DlgJvmDetection.ini" "Field 10" "State" '"$WINDIR\explorer.exe" ${JVM_DOWNLOAD_URL}'
or
WriteIniStr "$PLUGINSDIR\DlgJvmDetection.ini" "Field 10" "State" '"$PROGRAMFILES\Internet Explorer\iexplore.exe" ${JVM_DOWNLOAD_URL}'.
or
WriteIniStr "$PLUGINSDIR\DlgJvmDetection.ini" "Field 10" "State" '"$PROGRAMFILES\Internet Explorer\iexplore.exe" ${JVM_DOWNLOAD_URL}'.
It stil doesn't work. What strange is, is that if I take the string in the State field and copy it in the command prompt, the page open in a IE window...
If you set up FireFox as your default web browser (go to Options > General) then it will open URL's in Firefox not IE.
-Stu
-Stu
That would be the exact problem - the automatic Java installer only works for IE.
You could try to detect whether or not IE is the default browser. If it isn't, change the link to go to the manual install page, http://www.java.com/en/download/manual.jsp.
If your app requires Java to run, you could also detect whether it is already installed (there's a function in the archive), and then use MUI_FINISHPAGE_RUN, although it's probably not the most elegant solution.
You could try to detect whether or not IE is the default browser. If it isn't, change the link to go to the manual install page, http://www.java.com/en/download/manual.jsp.
If your app requires Java to run, you could also detect whether it is already installed (there's a function in the archive), and then use MUI_FINISHPAGE_RUN, although it's probably not the most elegant solution.
And secondly, does a way to center text in a LABEL control exist ?This is also planned on next versions. EDIT: I'll create 4 more value names called Align, VAlign (for control positionment), TxtAlign, TxtVAlign (for text).
It stil doesn't work. What strange is, is that if I take the string in the State field and copy it in the command prompt, the page open in a IE window...IOEx uses the ShellExecute function from Win API. It requires the file location to be separated from the parameters on separate function parameters (meaning, separated into "lpFile" and "lpParameters"). So what you're trying to do is not possible right now. InstallOptions also has this problem.
@Pidgeot : I didn't find the function in the archive but developpe my own. It's a good idea to test if IE is the default browser or not, and then choose the url. I will apply this solution.
@deguix : the manuel is a bit confusing cause according to it, what I would like to do seems possible. Do you plan to add this functionnality to InstallOptionsEx ? (for exemple by addind a field in the ini (one for the app to launch and one for the parameters for exemple ??). So it's only possible to put :
- an url
- an exec without parameters
in the State field of a Link control ?
@deguix : the manuel is a bit confusing cause according to it, what I would like to do seems possible. Do you plan to add this functionnality to InstallOptionsEx ? (for exemple by addind a field in the ini (one for the app to launch and one for the parameters for exemple ??). So it's only possible to put :
- an url
- an exec without parameters
in the State field of a Link control ?
Do you plan to add this functionnality to InstallOptionsEx ? (for exemple by addind a field in the ini (one for the app to launch and one for the parameters for exemple ??).Yes, but how I still don't know at this point. I gonna figure this out later.
So it's only possible to put :Yeah.
- an url
- an exec without parameters
in the State field of a Link control ?
OK, i'll keep watching out this topic. Great great job indeed 👍, the whole NSIS stuff.
TreeView control is complete for this version (I'll leave "ownerdraw" style for the next version). IOEx planned release date is probably sometime next week or a week after.
To fix your problem, geoffrey_4js, I'm thinking on spliting the string by an "|". My objective is to make the syntax compact (not so many INI value names).
To fix your problem, geoffrey_4js, I'm thinking on spliting the string by an "|". My objective is to make the syntax compact (not so many INI value names).
Your idea sounds good,so we could do something like that :
State="$WINDIR/explorer.exe"|"$URL"
State="$WINDIR/explorer.exe"|"$URL"
Either i didn't found it in the docs or it's not yet supported:
I have a DropList with a lot of values. Is there a way to make this control editable? My list will never contain all possible values so i want to give the user the chance to enter a new value or chance an list entry.
Any idea?
(Using latest Version dated Jan 22 2005)
regards
flizebogen
I have a DropList with a lot of values. Is there a way to make this control editable? My list will never contain all possible values so i want to give the user the chance to enter a new value or chance an list entry.
Any idea?
(Using latest Version dated Jan 22 2005)
regards
flizebogen
You'd need a combo box for editing. I don't know if it's in IOEx (can't check here at college).
-Stu
-Stu
Thanks, combobox is exactly what i'm looking for and works very well
Your idea sounds good,so we could do something like that :I changed my idea over it. Maybe this new idea will go against the direction which this feature was going, but I now think that it should be removed from IOEx, because there is already a better way to doing that with NSIS (using "LeaveFunction" and Exec command). The same applies for "ValidateText" (using "LeaveFunction" and MessageBox command).
State="$WINDIR/explorer.exe"|"$URL"
What do you think about it, should I keep those two, or should I remove them from IOEx?
Hello
Is posible works with InstallOptionEx in an IDE like HM Nis Edit?
Thanks in advance
Is posible works with InstallOptionEx in an IDE like HM Nis Edit?
Thanks in advance