JauntePE- towards Vista compatible?

Discuss anything related to JauntePE, the utlimate utility to help you tame non-portable applications. Share your experience about the apps that work with JauntePE, and the apps that don't.
Message
Author
crownixx
Posts: 403
Joined: Sat May 12, 2007 6:26 am

#16 Post by crownixx »

Playing with the Foxit Reader v2.1

I think JauntePE 015 having a problem with the Module runtime in Vista but i'm not sure how to determine it. I just make the guess based on the practice below

if i exclude all the module and include %appname%.exe, jauntepe fail to redirect the registry and they added into the host system. This configuration doesnt give a problem with XP but the problem only occur in Vista

Code: Select all

[ModuleExclude]
1=*

[ModuleInclude]
1=%appname%.exe
2=comctl32.dll
however if i comment the ModuleExclude, JauntePE able to redirect the registry

Code: Select all

[ModuleExclude]
;1=*

[ModuleInclude]
1=%appname%.exe
2=comctl32.dll
the whole runtime ini is below

Code: Select all

[Redirection] 
Logging=0 
FlashDisco=1 
IconDisco=1 
ModFrame=1 
RedirMisc=1
MemRegistry=1

[Registry]
Use=1
Data=..\Data\%appname%_registry.reg

[Filesystem]
Use=0

[RegistryExclude]
1=*

[RegistryInclude]
1=HKEY_CLASSES_ROOT\FoxitReader.Document
2=HKEY_CLASSES_ROOT\CLSID
3=HKEY_LOCAL_MACHINE\SOFTWARE\Classes\FoxitReader.Document
4=HKEY_CURRENT_USER\software\Foxit Software

[RegistryIgnore]

[ModuleExclude]
;1=*

[ModuleInclude]
1=%appname%.exe
2=comctl32.dll
here's my wrapper

redllar
Posts: 411
Joined: Thu Aug 03, 2006 7:52 pm
Contact:

#17 Post by redllar »

crownixx wrote:i having a problem to "Open File Dialog", or "Save File Dialog Box" in all 3 apps. all the apps are using standard jauntepe_jauntepe.ini configuration with turn on both registry and filesystem redirection. and i launch them via launchpad.
That's a perfectly valid test and assumption to make
great, but since i have a problem above, mybe i need to use autoit to generate dummy txt file and i jpe'd the script..will report you after finish the test

EDIT: Just using google and try my luck if i could find the solution, is it comdlg32.dll have to do with the "Open File Dialog" problem? i'm just reading about it here
It's probably hard to believe, but when any of the "open file", "save as file", "browse to directory", etc., dialog box windows pop up, and you have full file redirection turned on, you're running JPE in its "worse case scenario" mode. That's because behind the scenes the explorer (shell) dlls, including comdlg32, hit both the registry and the file system really hard. There's literally thousands of requests that come through just to get one of those windows displayed. And it's being done with multiple threads that the shell dlls invoke to do all of the work that they do. So, I'm not really surprised that there's problems with them under Vista.

I am working on a new jpe dll that *might* help. But who knows. There might also be some new registry entries that explorer uses that need to be excluded from redirection. Or maybe some of the ones currently excluded need to be included. It's impossible to say for sure without having access to Vista itself.

BTW, that Audit-my-pc link info is ehmm, pure crap. comdlg32 is a system dll and is not specific to VB.

redllar
Posts: 411
Joined: Thu Aug 03, 2006 7:52 pm
Contact:

#18 Post by redllar »

I think JauntePE 015 having a problem with the Module runtime in Vista but i'm not sure how to determine it.
The best test for this would be to run a non-portablized, already installed app in JPE's discovery mode. Make sure it's a simple app like Notepad so that there's only one thread running.

Add the app to the launchpad, right-click and select "Discover Registry Usage". Once the app starts just close it down and then see what's in the Module list of the "JauntePE - Registry Usage Discovery" dialog box. You should at least have the app's exe listed in there.

If that works then try it again and this time choose File->Open or something else that will invoke the shell dlls. Then close it down and see if you get them added to the module list. You should have a whole bunch of ones that weren't there before.

If that works okay then try the same thing with Foxit Reader and see what you get out of it.

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

#19 Post by crownixx »

There might also be some new registry entries that explorer uses that need to be excluded from redirection. Or maybe some of the ones currently excluded need to be included. It's impossible to say for sure without having access to Vista itself.
i wish i could help u with that :(
BTW, that Audit-my-pc link info is ehmm, pure crap. comdlg32 is a system dll and is not specific to VB.
lol, i'll find another website if need information on the module
The best test for this would be to run a non-portablized, already installed app in JPE's discovery mode
ok check,in my ToDo list now but..
If that works then try it again and this time choose File->Open or something else that will invoke the shell dlls.
this is the current problem i facing in the vista :(
Thats ok. i just give a try and see how the result..

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

#20 Post by crownixx »

i try to use Registry Usage on Notepad,Metapad,Foxit Reader and found an odd behavior..

Running under Registry Usage, i able to Open Dialog box, Save dialog box but still a failure under normal JPE hooking. Is there any difference between hooking under Registry Usage with normal JPE that we figure it to only redirect Registry and FileSystem?

After the Registry Usage, there are a lot of modules in the list.It means the Module redirection is working right. So mybe the problem i faced is, in Vista the ModuleInclude settings doesnt overwrite the ModuleExclude settings.

redllar
Posts: 411
Joined: Thu Aug 03, 2006 7:52 pm
Contact:

#21 Post by redllar »

i try to use Registry Usage on Notepad,Metapad,Foxit Reader and found an odd behavior..

Running under Registry Usage, i able to Open Dialog box, Save dialog box but still a failure under normal JPE hooking. Is there any difference between hooking under Registry Usage with normal JPE that we figure it to only redirect Registry and FileSystem?

After the Registry Usage, there are a lot of modules in the list.It means the Module redirection is working right. So mybe the problem i faced is, in Vista the ModuleInclude settings doesnt overwrite the ModuleExclude settings.
I hope the problems you're having on Vista "go away" with the new dll version I'm finishing up. In looking into the issues raised recently, I discovered that I created some bugs in the v 1.2 jpe dll having to do with identifying the correct module that made the api-hooked call. Also, I found some problems in the jpe dll coding that could, and probably did, cause erratic behavior with multi-threaded apps. And whenever you open up one of the dialog boxes you mentioned, your app immediately becomes a multi-threaded app because the shell dlls create additional threads to do the extensive amount of work required to populate those explorer browser list views.

But to answer your question (*I think*), yes, discovery mode works differently than with normal redirection. Discovery mode does NO redirection. All it does is usage tracking. The exact same apis are hooked though.

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

#22 Post by crownixx »

I hope the problems you're having on Vista "go away" with the new dll version I'm finishing up.
Got a good news. Testing the 0160 & 0161 in Foxit Reader and i dont have dialog boxes problem anymore..

except only one problem i still facing, unable to use ModuleExclude everything. here i have the debugview log info created using jauntepelog.dll 0160, one with turn on the Module exclude, one is not. hope this help
http://www.geocities.com/crownixx/debugviewLOG.zip

redllar
Posts: 411
Joined: Thu Aug 03, 2006 7:52 pm
Contact:

#23 Post by redllar »

Sorry, I haven't had time to take a look at this yet. But I'll take it with me and post back my response next week sometime.

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

#24 Post by crownixx »

that is ok with me. and i'll try to give my best feedback to help you out in the jpe development

redllar
Posts: 411
Joined: Thu Aug 03, 2006 7:52 pm
Contact:

#25 Post by redllar »

I finally got a look at your logs and what's happening is the MS application compatibility usage is interfering with the module reporting process within the jpe dll. That's because app compatibility uses a set of dlls which use Detours, MS's own api-hooking library. If you look at your logs you'll see that every single api call that jpe is reporting on indicates that it's coming from "aclayers.dll", which is the main api-hooking dll for the app compatibility layer. So, that's the problem.

For now, what you could do is add "2=aclayers.dll" to your [ModuleInclude] list and that should get your current jpe runtime ini working, albeit slower than it could be.

There's 2 things I'm going to do. First, I'll always force any api call made from aclayers.dll to never be excluded. That should prevent any problems in the future. Second, I'm going to make up a .zip for you to download that will have a new "Foxit Reader_portable.exe" in it that will run without the need for the app compatibility set to XP. So you should be able to run it as normal and then see through the logging output whether or not the calling module is reported correctly. If so then you should be running on Vista just as if you were on XP.

EDIT:
Here's a link to a "new" JPE-created portable app launcher that should allow you to run Foxit on Vista via JPE without having to set any app compatibility settings. The launcher expects the jpe & mch dlls to be in the app directory and was created with in-memory registry redirection and no file system redirection as its defaults.

It would be nice if you could run it with the jpe log dll to verify that the module names now show up as something different than aclayers.dll. I've also included the jpe runtime ini that I use with Foxit that includes a few more registry inclusions than yours had.

BTW, you can use this portable app launcher with any other Vista apps as well. Just make a copy of it and rename the copy to %appname%_portable.exe. You'll obviously need a different jpe runtime ini, especially if you want file system redirection turned on. The launcher will also launch apps that are named %appname%.jpe, if you want to prevent the non-portable app from being accidentally executed. If you do that, you can also rename the launcher to just %appname%.exe. But make sure you always have %appname%.jpe in your module inclusion list if you rename things as above and you also use "exclude all modules". The included jpe runtime ini has this already set up for you if the above is confusing. Just take a look at it to see what I mean. You'll need to edit it anyway, if you want to use it, since it's storing the .reg in the app directory and IIRC you had yours stored elsewhere.

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

#26 Post by crownixx »

It would be nice if you could run it with the jpe log dll to verify that the module names now show up as something different than aclayers.dll
great, i cant wait to have my next free time to play around with latest build. will give you the report as soon as i can.. and what a brilliant idea to avoid the accident run..i love it

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

#27 Post by crownixx »

A new version JauntePE 0.3.0 is not build for Vista but some of JPE apps still manage to run successfully without problem. As far as my testing, JauntePE having small glitch running apps that need to do "Open File" dialog box or "Save File" dialog box. They are called Common Item Dialog in Vista.

Code: Select all

http://msdn.microsoft.com/en-us/library/bb776913(VS.85).aspx
Image

If Normal2.ini configuration is used, the JPE app unable to bring up the Common Item Dialog box. Possibly this failure due to new several APIs are introduced in the new Vista Common Item Dialog.

However, my observation found that the Notepad Fastest Example does not have this kind of problem. So the workaround to this problem is try to make optimized runtime ini configuration. I only recommend this workaround if only
1. The app use "Open File" or "Save File" in the operation
2. you want running the type of app above in Vista

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

#28 Post by crownixx »

Previously, my testing applications were the The Examples and Foxit Reader. All of them manage to run with JauntePE and redirected. But then I had this weird case.

I have 2 version of 7-Zip JPE. One is from the 12 Step Program which mean i set up from the installer. The other version is taken from 7-Zip PortableApps.com and i only replace John Haller's launcher with JPE portable launcher and runtime ini. Both version was set up in the XP environment and they are working well. I migrate them into the Vista environment and i got different result. 7-Zip JPE that i set from 12 Step Program failed to redirect registry usage but 7-Zip JPE that come from the PortableApps.com package able to redirect its registry usage. I found that the different was the UPX compression. The 7-Zip PortableApps.com package was already been UPXed but in the Setup file was not. To confirm it, i UPXed the 7-Zip that come from Setup and after that it is back to redirect the registry usage and i got both version working in Vista and XP.

I dont know why JauntePE hooking behave differently in XP and Vista just by UPXed the application that need to be hook. I use the standard Normal2.ini runtime setting. The Log file shows that all settings were correct and all APIs were hooked. File system can be redirected but but not registry even though the log file tell that registry-related hook entries were already hooked.

As for the conclusion to this experiment, for Vista user there is a possibility registry leakage if you do "12 Step Program" for some installer and for some uncompressed exe. The workaround is replace the Setup installation step with Universal Extractor, try UPXed the application and then cross your fingers hoping it is working =)

fawkes
Posts: 25
Joined: Wed Dec 03, 2008 5:07 pm

#29 Post by fawkes »

Great work crownixx, so far you are the only one to report about issues found on the new JauntePE version and Vista. I hope you don't mind but I have taken your findings and made a new thread made specifically for JauntePE 0.3.0 because this one was a bit confusing when trying to find which JauntePE version has which issues. The thread is is here.

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

#30 Post by crownixx »

Ok thanks..i'll post there if i found any other discovery

Post Reply