NSIS unpacker?

Discuss and announce Total Commander plugins, addons and other useful tools here, both their usage and their development.

Moderators: Hacker, petermad, Stefan2, white

Post Reply
TychoBarfy
Senior Member
Senior Member
Posts: 350
Joined: 2005-08-13, 15:13 UTC
Location: Berlin, Germany
Contact:

Post by *TychoBarfy »

Hmm :roll:

EDIT: Now I got it. My String vor the NSIS executables in the [PackerPlugins] section of wincmd.ini had to be placed above the one for 7z with 7zip.wcx.
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

I have checked again and can now confirm your findings! Well, Install Explorer was listed BEFORE MultiArc here, that's why I couldn't reproduce it first. Sorry... ;)

The problem is the listfile of SuperCopier2, it contains non-DOS chars:
Languages\Fran‡ais.lng
Languages\Espa¤ol.lng
Languages\Portuguˆs.lng

7z.exe has a switch that is the solution to the problem:
ExtractWithPath=%P -scsWIN x -y %AAQ @%LQ

By the way:
Universal Extractor ONLY works because it doesn't pass a listfile but always extracts thw complete archive!

I will update the NSIS addon soon, thanks for your notice! :)

Icfu
This account is for sale
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

Update:
Well, it's not a complete solution unfortunately. The extraction works, but the files in the Languages dir are not unpacked!

This one works – the same command line as Universal Extractor uses:
ExtractWithPath=%P -scsWIN x -y %AAQ

But, of course it would no longer be possible to extract only selected files out of an NSIS archive then...

Any ideas?

Icfu
This account is for sale
TychoBarfy
Senior Member
Senior Member
Posts: 350
Joined: 2005-08-13, 15:13 UTC
Location: Berlin, Germany
Contact:

Post by *TychoBarfy »

2icfu, after moving the NSIS entry in vincmd.ini up I could extract every single file in the said files without an error.
So why should we add the -scsWIN option to the extract string?
I think we shouldn't add it until there is no serious error with another file.
Any ideas?

Code: Select all

BatchUnpack=0
...
Extract=%P e -y %AQA
ExtractWithPath=%P x -y %AQA
Works too...
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

2icfu, after moving the NSIS entry in vincmd.ini up I could extract every single file in the said files without an error.
When you don't have any conflicting plugins, you can place the entry whereever you like. Moving without any conflict makes no sense.
BatchUnpack=0
...
Extract=%P e -y %AQA
ExtractWithPath=%P x -y %AQA
This works only if you unpack the COMPLETE archive! I had already mentioned that above...
If you enter the archive and only want to extract SOME selected files, the complete archive will be unpacked!

Icfu
This account is for sale
TychoBarfy
Senior Member
Senior Member
Posts: 350
Joined: 2005-08-13, 15:13 UTC
Location: Berlin, Germany
Contact:

Post by *TychoBarfy »

icfu wrote:
...
BatchUnpack=0
...
Extract=%P e -y %AQA
ExtractWithPath=%P x -y %AQA
This works only if you unpack the COMPLETE archive! I had already mentioned that above...
If you enter the archive and only want to extract SOME selected files, the complete archive will be unpacked!

Icfu
I can extract single files...
I went into said NSIS file, marked i.e. Français.lng started the copy dialog but didn't confirm, opened process explorer and the only active packer plugin is multiarc.wcx.
After that I applied the copy dialog and this single file was extracted.
I also can extract a single directory in the archive inclusive its containing files.
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

Cool, I had tested and unpacked in my %TEMP% directory. Not my day today... ;)

Edited:
Ah crap, I cannot concentrate anymore as it seems. I will try again to reproduce when I have cured my cold.

Icfu
Last edited by icfu on 2006-09-15, 15:21 UTC, edited 1 time in total.
This account is for sale
TychoBarfy
Senior Member
Senior Member
Posts: 350
Joined: 2005-08-13, 15:13 UTC
Location: Berlin, Germany
Contact:

Post by *TychoBarfy »

icfu wrote:Cool, I had tested and unpacked in my %TEMP% directory. Not my day today... ;)

Anyway, BatchUnpack=0 leads to severe problems, please remove switch -y in your command line, so you could expect an overwrite warning:
1. Download xplorer2-setup file:
http://zabkat.com/x2down.htm
2. Enter the archive.
3. Extract the directories $PLUGINSDIR + snap.

TC hangs up at startMenu.dll...

Icfu
OK, thats an argument :) Added @%LQ again and made BatchUnpack=1 again.

As a byproduct I now moved my UPX section to the bottom of my multiarc.ini.
User avatar
deus-ex
Power Member
Power Member
Posts: 979
Joined: 2003-02-10, 17:45 UTC

Post by *deus-ex »

icfu wrote:This one works – the same command line as Universal Extractor uses:
ExtractWithPath=%P -scsWIN x -y %AAQ

But, of course it would no longer be possible to extract only selected files out of an NSIS archive then...

Any ideas?
Good find icfu, you were almost correct. Replace '-scswin' with '-scsdos', now extraction of SuperCopier2beta1-9.exe including language files works from within TC too.

Get well soon... :)
________
Regards,
deus-ex
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

Good find icfu, you were almost correct. Replace '-scswin' with '-scsdos', now extraction of SuperCopier2beta1-9.exe including language files works from within TC too.
Oh, I feel stupid now, thanks a bunch!
Sometimes sees one the wood before louder trees not. ;)
Get well soon...
I'll do my best, thanks! :)

Icfu
This account is for sale
TychoBarfy
Senior Member
Senior Member
Posts: 350
Joined: 2005-08-13, 15:13 UTC
Location: Berlin, Germany
Contact:

Post by *TychoBarfy »

But with:

BatchUnpack=0
...
Extract=%P e -y -scsdos %AAQ
ExtractWithPath=%P x -y -scsdos %AAQ

Thanks deus-ex
User avatar
byblo
Senior Member
Senior Member
Posts: 270
Joined: 2005-02-20, 21:13 UTC
Contact:

Post by *byblo »

This one seem not working but supported by the multiarc script : http://puzzle.dl.sourceforge.net/sourceforge/lamefe/LameFE22.3.exe
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

Please read the comments inside NSIS.addon. This archive is one of those that display crap data, unsupported by 7z.exe, not the fault of the plugin.

Code: Select all

>7z l "E:\Download\LameFE22.3.exe"

7-Zip 4.43 beta  Copyright (c) 1999-2006 Igor Pavlov  2006-09-15

Error: E:\Download\LameFE22.3.exe is not supported archive

Errors: 1
Icfu
This account is for sale
User avatar
byblo
Senior Member
Senior Member
Posts: 270
Joined: 2005-02-20, 21:13 UTC
Contact:

Post by *byblo »

icfu wrote:Please read the comments inside NSIS.addon. This archive is one of those that display crap data, unsupported by 7z.exe, not the fault of the plugin.

Code: Select all

>7z l "E:\Download\LameFE22.3.exe"

7-Zip 4.43 beta  Copyright (c) 1999-2006 Igor Pavlov  2006-09-15

Error: E:\Download\LameFE22.3.exe is not supported archive

Errors: 1
Icfu
So could you please try to make the ID more accurate to avoid that type (if possible), because IEtotal (placed after multiarc in wincmd.ini of course) can read that type without any problem.
icfu
Power Member
Power Member
Posts: 6052
Joined: 2003-09-10, 18:33 UTC

Post by *icfu »

It's not possible to detect supported/unsupported by the ID position of the string NullsoftInst. I have seen files with the same IDPOS of which one works and the other doesn't.

So, if someone knows a better signature that can separate the good from the bad, feel free to post it.

Icfu
This account is for sale
Post Reply