Jump to content
Sign in to follow this  
trancexx

ZIP browser

Recommended Posts

trancexx

Likely not very needed script in the packed form.

Nevertheless very needed when it comes to binary data examination. Challenging in all cases.

Made upon this document.

The main and the most complex task was how to draw the content of the zip in a gui. I've chosen a treeview control for reasons known only to me. :P

Script:

ZIP_Browser.zip

Try it if you dare. :mellow:

edit:

I've added ability to preview or extract compressed files from within the ZIP archive. The method used here doesn't use any third party dlls nor Shell.Application object. It's rather unique approach relying on standard system's ziplfldr.dll and its internal API. I haven't seen anyone ever doing what I did here :P. Hopefully it works LOL. If not - do report back to me.

Edited by trancexx
  • Like 2

♡♡♡

.

eMyvnE

Share this post


Link to post
Share on other sites
TinyHacker

Its great my friend.. thanx!  :mellow:

can u make it open "exe" files, like "zip" ones?  :P

Share this post


Link to post
Share on other sites
trancexx

Yeah, this one isn't sorting anything. Order is taken from the zip. That' actually important for what I'm using it.

I have found a way how to make it faster so will update the script (eventually). Thing is i don't have to 'find' icons for every file, just for different files (at least different than the last one).

@TinyHacker, not only that.


♡♡♡

.

eMyvnE

Share this post


Link to post
Share on other sites
trancexx

There, all I wanted is now implemented. You can drop files on gui, on exe, on... (well nothing more), to get it processed.

Edited by trancexx

♡♡♡

.

eMyvnE

Share this post


Link to post
Share on other sites
dantay9

This is really nice. The only thing missing (in my eyes) is the ability to extract the files in pure autoit. But for now, rasim's 7zip UDF is good enough. I can see myself using this in the future.


[font="Verdana"] [size="2"]"[/size][/font]Failure is not an option -- it comes packaged with Windows"[font="Verdana"][size="2"] Gecko Web Browser[/size][/font][font="Verdana"][size="2"], [/size][/font][font="Verdana"][size="2"]Yahtzee![/size][/font][font="Verdana"][size="2"], Toolbar Launcher (like RocketDock)[/size][/font][font="Verdana"][size="2"]Internet Blocker, Simple Calculator, Local Weather, Easy GDI+ GUI [/size][/font][font="Verdana"][size="2"]Triangle Solver, TCP File Transfer, [/size][/font][font="Verdana"][size="2"]Valuater's Autoit Wrappers[/size][/font][font="Verdana"][size="3"][size="2"][size="2"]OOP In AutoIt[/size][/size][/size][/font][font="Verdana"][size="2"][size="1"]Using Windows XP SP3, 1GB RAM, AMD Athlon Processor @ 2.1 GHzCheck me out at gadgets.freehostrocket.com[/size][/size][/font]

Share this post


Link to post
Share on other sites
trancexx

This is really nice. The only thing missing (in my eyes) is the ability to extract the files in pure autoit. But for now, rasim's 7zip UDF is good enough. I can see myself using this in the future.

Thanks dantay9.

I've been reading ZIP documentation I linked to again and again and tho I'm not certain I'm interpreting right, seems I could limit the size of the parsed central directory of the ZIP to 65536 bytes. In that case the process of retrieving wanted data from the zip should be (is) much faster. FileSetPos will do the job, for AutoIt not to choke on large binary data.

Another thing is I'm introducing a form of associative array to determine the icon of the file-type inside the zip. That means less calls to used slower functions and more to those that are fast. Again speed improvement.

Will update the script.

And of course the script can be used to view pseudo-zip files (docx, xpi, etc...).

Edited by trancexx

♡♡♡

.

eMyvnE

Share this post


Link to post
Share on other sites
TheSaint

The only thing missing (in my eyes) is the ability to extract the files in pure autoit.

If you search the forum, you should find that has already been achieved. The Create Zip Within program on my Toolbox topic should be linked to one of them somewhere in it's documentation, installer, etc. My Installer Creator, etc also uses it ... or at least a slightly updated version.

@trancexx - thanks for sharing!

Edited by TheSaint

AutoIt.4.Life Clubrooms - Life is like a Donut (secret key)

Make sure brain is in gear before opening mouth!
Remember, what is not said, can be just as important as what is said.

Spoiler

What is the Secret Key? Life is like a Donut

If I put effort into communication, I expect you to read properly & fully, or just not comment.
Ignoring those who try to divert conversation with irrelevancies.
If I'm intent on insulting you or being rude, I will be obvious, not ambiguous about it.
I'm only big and bad, to those who have an over-active imagination.

I may have the Artistic Liesense ;) to disagree with you. TheSaint's Toolbox (be advised many downloads are not working due to ISP screwup with my storage)

userbar.png

Share this post


Link to post
Share on other sites
czardas

Didn't get much time to look at this until now. Now I have had a look, I'll probably be using it myself. Thanks!

Share this post


Link to post
Share on other sites
HAMID
trancexx are you can add code to this for read zip content ?

i mean read files content that are in zip file and extract content without using dll(many programs using of DLLs)

Share this post


Link to post
Share on other sites
trancexx

Of course I can but that would go out of the scope of the example shown here. Beside that, the method would be very specific because I'm parsing the ZIP myself so I can assign items' indexes needed for extraction easily during enumeration, meaning it wouldn't be generic enough for general usage.

My advice to you is to use Zip UDF written by forum's MVP member wraithduu (search examples forum a bit to find it). He's code uses no third party dlls.

Yes wraithdu, I added extra u deliberately.


♡♡♡

.

eMyvnE

Share this post


Link to post
Share on other sites
trancexx

Meh, I'll add code to preview/extract files from ZIPs. I can do that without boring shell folder object, by directly working with zipfldr.dll.


♡♡♡

.

eMyvnE

Share this post


Link to post
Share on other sites
HAMID

also this UDF not work in time that file extension not be ZIP ( can't create "Shell.Application" object )

i want to scan docx content and i cant using of this UDF

Share this post


Link to post
Share on other sites
HAMID

Meh, I'll add code to preview/extract files from ZIPs. I can do that without boring shell folder object, by directly working with zipfldr.dll.

 

thanks

Share this post


Link to post
Share on other sites
trancexx

I've updated first post with the new script that has a feature or two more than the original. HAMID try it.

I'll make another thread about the helper UDF used for unzipping when I find time. The method is absolutely awesome, if I may say. Hopefully it works on all supported systems.


♡♡♡

.

eMyvnE

Share this post


Link to post
Share on other sites
HAMID

woooooooooooow nice code

i'm really beginer

i'll scrutiny this script

thanks man  :D

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×