Old 31st January 2007, 16:42   #1
Bertrand_M23
Junior Member
 
Join Date: Sep 2006
Posts: 12
MUI_PAGE_DIRECTORY : customize "Destination folder"

Hello,

i would like to customize the destination folder of the "MUI_PAGE_DIRECTORY".

Here is my code :

Section
IfFileExists D:\*.* +1 nodiskD
CreateDirectory "D:\abracadabra"
iferrors nodiskD
RMDir /r "D:\abracadabra"
StrCpy $0 "D:\DKS"
;MessageBox MB_OK "$0"
goto +3
nodiskD:
;Default installation folder is windows' one
StrCpy $0 "%SYSTEMDRIVE%\DKS"
SectionEnd

InstallDir $0

But "InstallDir" doesn't work even with "$0" instead of $0

So here is my first questions :

Does anybody could tell my how to make my code works fine ???

I've found in that forum a way to customize the "MUI_PAGE_DIRECTORY" using "!define MUI_PAGE_CUSTOMFUNCTION_SHOW ShowDirectoryPage" as shown here :
http://forums.winamp.com/showthread.php?threadid=214898

But i didn't found any way to customize the "Destination folder".

So here ic mu second question :
How to customize the "Destination Folder" ?

Thanks for reading that topic ...

Bert
Bertrand_M23 is offline   Reply With Quote
Old 31st January 2007, 16:44   #2
Bertrand_M23
Junior Member
 
Join Date: Sep 2006
Posts: 12
here the URL : "http://forums.winamp.com/showthread.php?threadid=214898"
Bertrand_M23 is offline   Reply With Quote
Old 31st January 2007, 17:44   #3
Red Wine
Forum King
 
Red Wine's Avatar
 
Join Date: Mar 2006
Location: Ath. GR
Posts: 2,078
InstallDir is compile time instruction you can't set it at run time.

Yet, I can't understand exactly what you're doing in the section.
I you want to perform some action and set the $INSTDIR regarding to IfFileExists you need to do it in function .onInit.

What does mean customize destination folder?

Quick AVI Creator - Quick and easy convert from DVD/MPEG/AVI/MKV to AVI/MP4/MKV
Quick AVI Creator entirely edited with NSIS and entirely upgraded to Unicode NSIS
Red Wine is offline   Reply With Quote
Old 31st January 2007, 18:12   #4
Bertrand_M23
Junior Member
 
Join Date: Sep 2006
Posts: 12
In fact i had the destination folder shown in the specific page, if i write :
InstallDir "D:\Sample" : it works, but it's not so easy due to my check explained in my first topic.

If i do :
StrCmp $0 "D:\Sample"
InstallDir $0 : it doesn't work ... ;-(

And to respond to you : "Remark"
What i mean ... well ... from what i've found, it's possible to change text of that page so i thougth i could do the same with that section ... for example :
"GetDlgItem $1 $0 1023 ; IDC_SPACEREQUIRED
System::Call 'user32.dll::ShowWindow(i, i) v($1, 0)' :
this code allows to mask the space required information.

But if someone found the solution, my remark above is obsolete

Thanks to take time to read me ...

Bert
Bertrand_M23 is offline   Reply With Quote
Old 31st January 2007, 18:49   #5
Red Wine
Forum King
 
Red Wine's Avatar
 
Join Date: Mar 2006
Location: Ath. GR
Posts: 2,078
You may want to read the manual 4.8.1.21 InstallDir
You can set the InstallDir at compile time and change it at run time within .onInit function e.g. StrCpy "$INSTDIR" "$0".

This wiki page might help you start dealing with ui controls and how you could change them at run time,

http://nsis.sourceforge.net/Demonstr...Pre_Show_Leave

Quick AVI Creator - Quick and easy convert from DVD/MPEG/AVI/MKV to AVI/MP4/MKV
Quick AVI Creator entirely edited with NSIS and entirely upgraded to Unicode NSIS
Red Wine is offline   Reply With Quote
Reply
Go Back   Winamp & Shoutcast Forums > Developer Center > NSIS Discussion

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump