WINAMP.COM | Forums > Developer Center > NSIS Discussion > Multi-Volume NSIS Installer Suite - CABSetup |
Last Thread
Next Thread
|
| Author |
|
|
Mr Inches Member
Registered: Jan 2006 |
Multi-Volume NSIS Installer Suite - CABSetup
I read a number of threads about creating NSIS Installers that supported multiple source media e.g. an installer that spans multiple floppy disks or multiple CDs/DVDs, but there didn't seem to be an bundled solution to it and I know it is on the wish list for NSIS. I felt that this is a capability that NSIS should have.
|
||
|
|
|
JasonFriday13 Senior Member
Registered: May 2005 |
I suggest putting this on the wiki so that we don't have to search the forums if we want to use it (like plugins). __________________ |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
Took me a little while to figure out how to drive the NSIS Wiki pages |
||
|
|
|
JasonFriday13 Senior Member
Registered: May 2005 |
Just a simple idea: You could use nsis to make a wrapper for the real installer, instead of Inststub. I do this all the time. code: __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
Some nice code here, but does msiexec.exe really exist on all systems (I'm pretty sure win95/98 doesnt have it if you have never used a msi installer on it) why not use a more common .exe instead, like rundll32.exe(The best choice IMHO), explorer.exe, winhlp32.exe, winver.exe or notepad.exe __________________ |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
Thanks Anders, I figured the code looked pretty cool too when I saw Arkon's example. |
||
|
|
|
JasonFriday13 Senior Member
Registered: May 2005 |
Ah yes, of course. That is why it is called CABSetup (multi volume), so that you could change install media. If I run a program off my flash disk, and try removing it, windows says it cannot be removed at this time. I forgot about that. __________________ |
||
|
|
|
Anders Major Dude
Registered: Jun 2002 |
Yeah, I guess you need to use the ToolHelp helper lib on 9x __________________ |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
I guess so. I looked at the ToolHelp stuff when I was doing the PSAPI work - it might be doable. |
||
|
|
|
JasonFriday13 Senior Member
Registered: May 2005 |
Suggestions: __________________ |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
Thanks for the suggestions. |
||
|
|
|
JasonFriday13 Senior Member
Registered: May 2005 |
Oh, right. __________________ |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
I have released a new version of CABSetup, 1.1.0.0. |
||
|
|
|
JasonFriday13 Senior Member
Registered: May 2005 |
I did a little testing, and found out that adding files with a space in the path does not work. __________________ |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
Thanks Jason - well spotted and thanks for testing! |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
I checked my code and there isn't actually a bug in the ScanDir code, but it's behaviour may not be entirely clear. |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
I have released a new version of the CABSetup plug-in, 1.2.3.0. |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
I have released a new version of the CABSetup plug-in, 1.3.0.0. |
||
|
|
|
Altair68 Junior Member
Registered: Apr 2004 |
Bitten by 32bits
I'm very glad you created this plug-in but while it helped get past the 2GB limit I've hit a snag. code: 5256994676 - 4294967296 = 962027380 which is pretty close to what it shows as the "before" size. The total size of the CAB files is about 2.5GB (2689619236 bytes). So 962036773+1606658832 = 2568695605 which is pretty close to the size of my data. So, I was wondering if you could fix GetDataSetSize so that it used the INF instead of using the RPT file. The INF has all the file sizes listed and should give the correct size. This only solves half the problem though. The GetDataSetSize function uses a DWORD. This should be changed to a ULONGLONG. Once this is done it should return the values expected. You could also do the bytes to kb conversion here so that it returns kb. Then the code in the installer script wouldn't have to handle it. There are aspects of the progress bar etc. that need to be 64bit aware as well. I was going to make the changes myself, but I don't know how to rebuild the DLL. Thanks |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
I thought the 32-bit limit on the dataset size was imposed by MAKECAB and the cabinet format itself. |
||
|
|
|
Altair68 Junior Member
Registered: Apr 2004 |
MAKECAB did crash the first time I tried it. But I reduced the media size to 512MB and it worked fine after that. I verified that it worked properly by doing a file/folder comparison with Araxis. |
||
|
|
|
jozechu Junior Member
Registered: Apr 2008 |
Hi All, |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
Hi Joze |
||
|
|
|
jozechu Junior Member
Registered: Apr 2008 |
Hi Duncan, |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
Hi Joze |
||
|
|
|
Mr Inches Member
Registered: Jan 2006 |
I have released a new version of the CABSetup plug-in, 1.3.1.0. |
||
|
|
|
jozechu Junior Member
Registered: Apr 2008 |
Hi Duncan, |
||
|
|
|
Last Thread Next Thread
|
WINAMP.COM | Forums > Developer Center > NSIS Discussion > Multi-Volume NSIS Installer Suite - CABSetup |
Forum Rules:
|