7-Zip Portable [JPE] -complete-

Share, discuss and debug ready-made JauntePE launchers for non-portable applications.
Message
Author
User avatar
m^(2)
Posts: 890
Joined: Sat Mar 31, 2007 2:38 am
Location: Kce,PL
Contact:

#16 Post by m^(2) »

Could you repeat everything you did in the demo, but running Process Monitor and post a log here?

BTW does JPE offer an option to silence the confirmation message boxes?
I guess that after 100th OK they would be annoying...

ADDED: Thanks for making the video. It helped.

User avatar
joby_toss
Posts: 2970
Joined: Sat Feb 09, 2008 9:57 am
Location: Romania
Contact:

#17 Post by joby_toss »

I'm sure 7-zip 4.64 is at fault here.
Try 4.57.

User avatar
m^(2)
Posts: 890
Joined: Sat Mar 31, 2007 2:38 am
Location: Kce,PL
Contact:

#18 Post by m^(2) »

joby_toss wrote:I'm sure 7-zip 4.64 is at fault here.
Try 4.57.
Why do you think so?
I checked the changelog and only "Some bugs were fixed" entries could be related with the issue.

User avatar
joby_toss
Posts: 2970
Joined: Sat Feb 09, 2008 9:57 am
Location: Romania
Contact:

#19 Post by joby_toss »

Well ... I also made a launcher and 4.64 gives errors when trying to unpack an archive using the shell extension, but 4.57 doesn't.
(the shell extension only works inside portabilized 7zFM)

User avatar
m^(2)
Posts: 890
Joined: Sat Mar 31, 2007 2:38 am
Location: Kce,PL
Contact:

#20 Post by m^(2) »

So I think we should contact Igor and ask whether he has some ideas why it's wrong.
Also, it would be good to determine which update exactly breaks it.

User avatar
joby_toss
Posts: 2970
Joined: Sat Feb 09, 2008 9:57 am
Location: Romania
Contact:

#21 Post by joby_toss »

4.57 was the last version that worked for me until version 4.62.
I am talking about the shell extension support of 7-zip's installed version.
7-zip builds
Sadly I didn't keep a screenshot with the error I received when trying to unpack some archives, but it was something about "not enough memory..."
I'm not too keen about contacting the author without some proof ... :(

This is the error I get when trying to extract files using the shell extension from 4.64 7zFM JPE'd (as I said, 4.57 7zFM JPE'd works fine):
Image
Not too much info here ...

User avatar
m^(2)
Posts: 890
Joined: Sat Mar 31, 2007 2:38 am
Location: Kce,PL
Contact:

#22 Post by m^(2) »

joby_toss wrote:4.57 was the last version that worked for me until version 4.62.
I am talking about the shell extension support of 7-zip's installed version.
7-zip builds
Sadly I didn't keep a screenshot with the error I received when trying to unpack some archives, but it was something about "not enough memory..."
I'm not too keen about contacting the author without some proof ... :(

This is the error I get when trying to extract files using the shell extension from 4.64 7zFM JPE'd (as I said, 4.57 7zFM JPE'd works fine):
Image
Not too much info here ...
Why not ask?
It's more a JauntePE than 7-zip problem and knowing what changed would help us resolve it.
This information is valuable for Igor as these changes somewhat reduced 7-zips compatibility.

Actually I wouldn't be very surprised if he said that there were no changes done to this part and this is some randomly triggered JPE issue.

Anyway a Process Monitor log would help finding out what's the difference between the 2 versions / 2 directory names.

crownixx
Posts: 403
Joined: Sat May 12, 2007 6:26 am

#23 Post by crownixx »

Previously i made the 7-Zip Context Menu Portable in the vmware environment but on the next run somehow the right click menu doesn't show as espected. Thus i continue my experiment in my real windows xp and my 7-Zip Context Menu Portable constantly shows the right click menu if i run it.
Here's my observation which is quite constant and i have repeat it several times

Action: Injecting the jauntePE plugins to explorer.exe
Result: The 7-Zip Context Menu Portable will show up and is running ok. Both Right click a file >add archive or right click an archive file > extract files are working.

Action: Uninjecting the jauntePE plugins.There are 2 possible results after this action.
Result 1: If the explorer.exe crash and need to be kill, the 7-Zip Context Menu Portable will be running ok on the next injecting. It can be rename it's own folder name or move to other's directory and it still can be run without error
Result 2: Else if the explorer.exe do not crash. The 7-Zip Context Menu Portable will be running ok on the next injecting BUT, renaming it's own folder or move to other's directory will cause it not run.

I can only give the best observation here but not the answer. Maybe the the problem was from the uninjecting procedure because in Result 2, it seems the explorer.exe still remember the path of the 7-Zip Context Menu Portable(unproper uninjection maybe?). To make 7-Zip Context Menu Portable work again, we need to use Task Manager to kill the explorer.exe and run back fresh explorer.exe before you make the new injection. NOTE: even though in Result 2 our explorer.exe do not crash after uninjecting, this procedure need to be done)

Here's my experiment 7-Zip Context Menu Portable. WARNING: only for testing and not for daily use. It can potentially crash your explorer.exe
Download 7-ZipContextMenuPortable-Experiment.zip (1.39 MB)

ADDED: It will not touch your system registry. To verify, you can use Regshot and take 1st snapshot, then after inject the explorer.exe take the 2nd snapshot. But you still have the context menu on right click
Last edited by crownixx on Tue Jan 20, 2009 3:27 am, edited 1 time in total.

crownixx
Posts: 403
Joined: Sat May 12, 2007 6:26 am

#24 Post by crownixx »

m^(2) wrote:Could you repeat everything you did in the demo, but running Process Monitor and post a log here?
I'm not familiar with Process Monitor,too much registry entries. However i already post my 7-Zip Context Menu Portable, hope you can do the test for us
m^(2) wrote:BTW does JPE offer an option to silence the confirmation message boxes?
I guess that after 100th OK they would be annoying...
As far as i know, there is no documentation (yet maybe) on how to turn off the message boxes. I have made my own autoit script that help me auto click the message box at startup. Also in the end of uninjecting explorer, i made the script close & restart back normal explorer.exe to solve the crash problem. But of course this is not the trully solution
m^(2) wrote:ADDED: Thanks for making the video. It helped.
You're welcome =)
joby_toss wrote:I'm sure 7-zip 4.64 is at fault here.
Try 4.57.
Hi joby_toss, i got the 4.64 shell extension unpack working here. Maybe the previous error that i got was because i not using the optimized config, or maybe it was i working in the vmware environment is the reason. Not sure but i'm interested on your idea. How do you made the shell extension working inside 7zFM?I have turn on the settings>show system menu but no context menu is shown. Just an idea, try using 7-zip 4.64 but replace the 7-zip.dll from 4.57, mybe could solve your problem.

User avatar
joby_toss
Posts: 2970
Joined: Sat Feb 09, 2008 9:57 am
Location: Romania
Contact:

#25 Post by joby_toss »

crownixx wrote:Hi joby_toss ... How do you made the shell extension working inside 7zFM? I have turn on the settings>show system menu but no context menu is shown.
I just built a simple launcher only to keep my system clean.
Although the 7zip shell extension works inside 7zFM jauntized, it will stop working when renaming or moving the folder, thus it is not portable!
I used "Normal2.ini" config and, after starting 7zFM jauntized, I went to Tools/Options/Plugins/Options and selected "Integrate 7zip...", just like you normally would, then restarted the app.
The 7zip shell extension menu appears below the System menu, not inside it.

Just an idea, try using 7-zip 4.64 but replace the 7-zip.dll from 4.57, maybe could solve your problem.
Tried that with no luck .... the whole 4.57 version must be present ...

I don't know what I'm doing wrong, but I can't get your portable context menu to work on my machine :(.

User avatar
joby_toss
Posts: 2970
Joined: Sat Feb 09, 2008 9:57 am
Location: Romania
Contact:

#26 Post by joby_toss »

Thanks to REG editJPE Easy by crownixx I was able (I hope) to make the shell extension portable inside 7zFM jauntized.
Here is the version I tested on 2 pcs and worked well on both (v4.57).

Code: Select all

http://rapidshare.com/files/186694986/7-zip_PJ.7z.html
http://www.mediafire.com/?zvlwmv3jsd1
If anyone would be so kind and launch 7zFM and see if there is any 7-zip context menu and that it is working, I would be very happy!
Please keep in mind that this is not finished work...it's just for quick testing (the ini redirects everything).
If you already have 7-zip installed on that system, please deactivate the shell extension and rename your installed 7zip folder (prior to opening 7zFM jauntized) so that there would be no question about what version is doing the job.

User avatar
m^(2)
Posts: 890
Joined: Sat Mar 31, 2007 2:38 am
Location: Kce,PL
Contact:

#27 Post by m^(2) »

XP x64.
I tried:
-Explorer 32 bit
-Explorer 64 bit
-Total Commander

Doesn't work in any case. Actually I don't get JPE icons even in 7zFM. And JPE dll isn't listed in the modules list.

crownixx
Posts: 403
Joined: Sat May 12, 2007 6:26 am

#28 Post by crownixx »

joby_toss wrote: Here is the version I tested on 2 pcs and worked well on both (v4.57).

Code: Select all

http://rapidshare.com/files/186694986/7-zip_PJ.7z.html
http://www.mediafire.com/?zvlwmv3jsd1
If anyone would be so kind and launch 7zFM and see if there is any 7-zip context menu and that it is working, I would be very happy!
I got your version and it work in my pc. Then i took a look at your portable reg, i guess you edit the path in the registry to be relative right?

Code: Select all

[HKEY_CLASSES_ROOT\CLSID\{23170F69-40C1-278A-1000-000100020000}\InprocServer32]
@=".\App\7-zip.dll"
I think that is not right to do. Maybe here is the article about how registry find its relative path. Beside, if user re-apply the shell extension setting, the relative path that you made will be overwritten

It is better you do "portable install" 7-zip in the special folder,mostly in Program Files folder. Then you will get this path @="C:\Program Files\7-Zip\7-zip.dll". Next step is use Reg Tokenizer to change the special folders in the portable reg automatically. You will then get this path @="%JPE38L%\7-Zip\7-zip.dll". This path will work just like relative path when you move to different computer or operating system and the %JPE38L% will be detokenize to the correct absolute path on runtime.
XP x64.
I tried:
-Explorer 32 bit
-Explorer 64 bit
-Total Commander

Doesn't work in any case. Actually I don't get JPE icons even in 7zFM. And JPE dll isn't listed in the modules list.
Without any concrete theory, a random tweak that i might do maybe upx compressed the application like i did for vista. And also try to add this setting [Redirection]SingleThread=1

Sorry guys if my portable context menu is not working for you. But got new ideas to make 2nd portable context menu for the testing
1. instead of injecting the normal explorer.exe with jauntePE plugins, why not we try close the normal explorer.exe and run the portablized explorer.exe. To stop, we close the portablized explorer.exe and run back the normal explorer.exe.

2. 7-Zip is not only running with individual 7zfm.exe but also with other modules like 7zG.exe and 7-zip.dll. This modules also using the 7-zip registry settings. Thus, most likely this application could having problem when using MemRegistry as stated in Known Limitation #2. To play safe this time we will use MemRegistry=0

3. In the readme.html state that IndentMode=1,2,3 might cause some app to crash. So this time we try to use IndentMode=0 to avoid crashing

User avatar
m^(2)
Posts: 890
Joined: Sat Mar 31, 2007 2:38 am
Location: Kce,PL
Contact:

#29 Post by m^(2) »

Bad news: JPE doesn't work here at all.

Until now I didn't really test it, but no application gets hooked, not even redllar's examples. :(

I use XP x64, I guess that it applies to x64 versions of Vista / W7 too.

crownixx
Posts: 403
Joined: Sat May 12, 2007 6:26 am

#30 Post by crownixx »

m^(2) wrote:Bad news: JPE doesn't work here at all.

Until now I didn't really test it, but no application gets hooked, not even redllar's examples. :(

I use XP x64, I guess that it applies to x64 versions of Vista / W7 too.
Too bad it turn that way. Maybe we could wait for the low-level ntdll.dll api hook jpe library. At least redllar has tried as best as he can. There are too much jauntePE need to cover: different instruction set architecture,different operating system+bugs mybe, different applications behaviour + their bugs and not to forget its own bugs.

Post Reply