Can someone show me how to use JPE?

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
SlowLearner
Posts: 92
Joined: Wed Aug 08, 2007 3:58 pm

#61 Post by SlowLearner »

No worries

I enjoyed getting to play about with it - and I appreciate the time you've given.

Thank you

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

#62 Post by redllar »

Just in case you're only monitoring this thread, there's a new build out (0.1.6.1) that I think you should be able to use to get a good discovery ini built. So please give it a go when you have the chance.

SlowLearner
Posts: 92
Joined: Wed Aug 08, 2007 3:58 pm

Another step closer :D

#63 Post by SlowLearner »

Thanks for that redllar,

I had been monitoring others, but I didn't realise that the new version would affect me.

I copied the new dlls (all of them, as I'm not sure which one I need) into the JauntePE 0.1.3 folder - which replaced the existing dll

I ran it in discover mode, but got a few errors (something about twe gradebook file unavialble, template file incompatible, etc)
I don't get these errors if I open it without going through jpe.

Anyway, I ignored these :D

JPE had made the discover file "jauntePE_discovery"

I made it read only, and followed your instructions...and this time I have the modules !!!! :D

There are 43 of them.
1) Type inprocserver32 into the Filter field
2) Set Module to the empty (top) entry
3) Make sure that the Everything button is selected
4) Count the number of registry keys in the listbox
This gave me 32 entries
you need a set of 53 of these types of registry entries in order for a portablized TWE to run correctly
If you don't have the required number then you'll need to decide whether you want to do it the easy way and have me send you my discovery ini or do it the hard way and try and get the discovery ini yourself. There are other ways to getting the required keys into the discovery ini but they require manually editing it, so it would be a tedious process to say the least.
I'm willing to go for the hard way, if you don't mind posting instructions

However, if you can't spare the time - I completely understand, and I'll take anything you can offer.

Thanks again

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

#64 Post by redllar »

I ran it in discover mode, but got a few errors (something about twe gradebook file unavialble, template file incompatible, etc)
That's the same error I get except when running with the jauntePElog.dll. So that's actually good news.

Try renaming jauntePE.dll to something else, renaming jauntePElog.dll to jauntePE.dll, and then re-running discovery mode. You need to be able to get to the point where the main window pops up so that you can play around with the settings dialog boxes. If you get a popup in front of the main window where it asks you to choose a gradebook file, and you don't have one, then close the window via the close button and not the cancel button, since that shuts down the app.

SlowLearner
Posts: 92
Joined: Wed Aug 08, 2007 3:58 pm

Using log version of dll

#65 Post by SlowLearner »

Hi redllar

I used the "LOG" dll instead - and I now have:

50 entries in the "Module" drop-down box
and
46 entries when I filter on "inprocserver32"

Is this enough?

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

#66 Post by redllar »

Is this enough?
That *might* be enough. Let's go ahead and use it since you're going to have to do some manual registry extraction anyway. So any entries you miss using JPE you can get then.

Okay, we need to get things back to where you had them before, so read-only protect the discovery ini file, copy it off for safe keeping, start JPE and select an app to be run in discovery mode. It actually doesn't matter which one it is. I normally use Notepad. Anyway, select one of them and run it in discovery mode then close down the app to get the JPE "Registry Usage Discovery" dialog box to pop up.

As a first suggestion on getting the "to-be-copied" list created, it's a good idea to have the app's installer's RegShot handy to search through. And have RegEdit open for looking through as well. That way you can refer to those whenever you find an entry that looks like you might want added but aren't sure.

First, lets go after those in-process server component entries I had you count previously. This time, enter "HKCR\CLSID" into the Filter field and select the blank entry for the Module list. What you should then see in the registry entries list box is a natural grouping of entries. Each group should have the same starting path, which will look something like "HKCR\CLSID\{########-####-####-####-############}", where "#" is some hex number, and there should be several entries per group. What you want to do is select the top entry for each of these groupings (the one with nothing to the right of the starting path, i.e., the "parent" entry) and then "Add" it to the "to-be-copied" list. You can either do this once per group or you can ctrl+left-click on each group's top entry and then "Add" them all at once or do this for a few at a time. You need to be a bit careful in doing this though as unfortunately there's no undo selection capability. If you ever select the wrong entry just ctrl+left-click it to unhighlight so it won't get "Add"ed. As you "Add" entries to the "to-be-copied" list, the entries you had selected, plus any of their children, will be removed from the discovery list. So another quick way to get entries moved from the discovery list to the "to-be-copied" list is to left-click followed by Alt+A to "Add" over and over again. Just make sure to only select the top, parent, entry per group. If you run across any groups that don't have a parent entry followed by several child entries, it's probably best to go ahead and "Add" them too as they can always be stripped out of the .reg file later if they'll interfere with portable usage. While your doing these selections, you can also occasionally select "View Selected" to see what the "to-be-copied" list looks like. "Cancel" out of that dialog box to get back. Ideally, once you're done with the CLSID entries, your filtered discovery list will be empty, except for maybe a solo "HKCR\CLSID" entry.

Now you need to continue to tackle any more component-related HKCR entries. So enter "HKCR\Typelib" into the Filter field and process this list in a similar manner as above.

Then handle the "HKCR\Licenses" entries in the same way. And then "HKCR\Installer".

Once you've handled all of those types of entries, change the Filter to read "HKCR" only and take a look at what's left. What you're looking for now are any entries that stand out in terms of being TWE-specific or that have a company-related name. Again, it can't hurt to over-"Add" entries, except make sure you NEVER select a high-level entry such as HKCR or HKCR\CLSID, HKCR\TypeLib, etc. What you're looking for are specifics. For instance, I had a couple of non-Thinkwave components left that I knew I needed to add: one from Infragistics and one from Sheridan. There was also one with a path of "HKCR\AppID\twe.release.ovl" that looked like it would be wise to extract it. The Microsoft Jet stuff I didn't select since I wanted to build a .reg for use on systems that I assumed would already have MS Jet installed on them.

Okay, that's the "hard" stuff. For a lot of apps you don't even have to bother with those entries as they're specific to ActiveX, COM, OCX, VBX, etc., components and controls. Now you need to go after the non-HKCR Thinkwave-specifc and TWE-specific entries. I'd suggest just scrolling through the list and selecting any that "look interesting." In other words, highlight anything that has "think" or "twe" or anything else that's non-Microsoft and non-Windows looking. You can use the Filter field if you want. Just make sure to go through all that's left because not everything's going to have "think" or "twe" in it. For instance, there's a "Seagate" control that's used. And I remember something about "Kookaburra" as well. I'd stay away from anything that had a generic-looking path though.

FINALLY, do a once-over back through all of the remaining discovery entries, and once you're satified that you've done all you can, select "View Selected" one final time. Go through that list once to make sure nothing high-level is in there and then select OK to get the .reg created. If all goes well a jauntePE_discovery.reg file should be created in the JauntePE home directory and the main discovery dialog box will close down.

I think that's enough for now. Good luck and let me know how things went.

SlowLearner
Posts: 92
Joined: Wed Aug 08, 2007 3:58 pm

Using version 1.5

#67 Post by SlowLearner »

Hi redllar

I downloaded JPE 1.5 (I had been using 1.3) and replaced the "jauntePE.dll" with (renamed) "jauntePElog.dll"

I followed your latest instructions and all went well, just a few discrepencies:

1) Filter on "HKCR\Licenses" only had one entry (a high level one, so I left it)
2) Filter on "HKCR\Installer" only had one entey, (HKCR\Installer\features\##################)
So I included it.

Everything else went as you described and I now have a "jauntePE_discovery.reg" file of 109kB containing 1091 lines

So far so good :D

Thank you

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

#68 Post by redllar »

Hey, that's great. :)

Unfortunately, you're only about 2/3rds of the way there.

You probably now have a .reg that's close to what I started trying to run the app with. But I kept getting that "missing components" popup. So I eventually went back to the RegShot I had taken during the app install and started looking for registry keys that were in that shot list that weren't in the .reg. For each one of those keys I went and looked it up using RegEdit. If it looked like a non-MS related key, then I added it to a new discovery ini that contained the following lines at the top:

Code: Select all

[RegKey]
HKEY_CLASSES_ROOT=MACHINE\Software\CLASSES
HKEY_CURRENT_USER=USER\S-1-5-21-1078081533-839522115-854245398-1000
HKEY_CURRENT_CONFIG=MACHINE\SYSTEM\ControlSet001\Hardware Profiles\0001
[RegModules]
*=twe.exe
0=twe.exe
[RegCreate\twe.exe]
Each new key I added to the discovery ini went into the [RegCreate\twe.exe] section as a numbered entry, e.g.:

Code: Select all

1=HKEY_CLASSES_ROOT\.TWE
...
50=HKEY_CLASSES_ROOT\Installer\Products\FF7B009C999E5D1488E7259ED6E957C4
51=HKEY_CLASSES_ROOT\ThinkWave.Backup
52=HKEY_CLASSES_ROOT\ThinkWave.Backup.1
53=HKEY_CLASSES_ROOT\ThinkWave.CabArchive
54=HKEY_CLASSES_ROOT\ThinkWave.CabArchive.1
55=HKEY_CLASSES_ROOT\ThinkWave.Progress
56=HKEY_CLASSES_ROOT\ThinkWave.Progress.1
If I'm looking at the right discovery ini, I ended up with 153 of those. But I can tell just by looking at them that you won't need them all.

I'd like to give you more to go on, but that's basically what I did, IIRC. It's a tedious process to say the least. Once I got that new discovery ini made, I repeated the steps you've already been through to make the JPE launchpad use the ini in discovery mode and then was able to create a new discovery .reg which I then combined with the previous discovery .reg.

Let me know if all that's a bit confusing and I'll try and explain things better. Before you do anything though, copy off that discovery .reg!

And good job working through all of this so far. I'm hoping by the end of this we'll both have a better idea how to make the discovery mode work better. I already have a few ideas but I'd love to have your input as well.

SlowLearner
Posts: 92
Joined: Wed Aug 08, 2007 3:58 pm

Lost me

#69 Post by SlowLearner »

Hi redllar
Let me know if all that's a bit confusing and I'll try and explain things better.
I think you've gone a little fast for me.

I went into the regshot (the one I posted on this site at the start)
http://rapidshare.com/files/49086919/_res.zip


But I can't find the "the [RegCreate\twe.exe] section"

I have sections called:
[RegCreate\ieframe.dll]
[RegCreate\msacm32.dll]
[RegCreate\msi.dll]
[RegCreate\setupapi.dll]
[RegCreate\shell32.dll]
[RegCreate\wininet.dll]

Should I make a section called [RegCreate\twe.exe]?


Also, the regshot has 6824 lines - none of which mean much to me, for example, the first few are:

HKLM\SOFTWARE\Classes\AppID\IDriver.EXE
HKLM\SOFTWARE\Classes\AppID\{0352FC0F-A4CC-11D4-B0E5-0050040F8474}

I searched my discovery.reg and couldn't find these, so should I opened RegEdit and they have the following information:

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\IDriver.EXE]
"AppID"="{E4A51076-BCD3-11D4-AB7D-00B0D02332EB}"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\AppID\{0352FC0F-A4CC-11D4-B0E5-0050040F8474}]
"RunAs"="Interactive User"
"AppID"="{0352FC0F-A4CC-11D4-B0E5-0050040F8474}"

They don't contain the word "Microsoft" - so does that mean I include them?

Finally:
I'm hoping by the end of this we'll both have a better idea how to make the discovery mode work better. I already have a few ideas but I'd love to have your input as well.
Lol - I'm hanging on by a wing and a prayer; I am in no position to offer any meaningful input (although other readers may be). I am enjoying playing around with this stuff, and feel great when your the instructions you give work, but I must admit, I have almost no idea what we are doing, other than that it could be dangrous. I'm a bit like an ape with a new shotgun :D

Thank you

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

#70 Post by redllar »

I think you've gone a little fast for me.
Sorry about that. I can see from your questions that I did indeed.

I don't really have the time this week to go over it again. I'm wondering if you'd feel comfortable enough doing this type of research anyway, since it involves a lot of system registry browsing. There's nothing really dangerous about it, but you do have to make sure your fingers and mouse don't accidentally rename, change, or delete something.

This final step is not something you would normally have to do. It's just because we couldn't run the installer through JPE that we're having to hunt down the missing keys. So you won't really learn anything that will be used that much in the future (hopefully.)

I'll leave it up to you. If you still want to try and do this yourself, let me know sometime tomorrow and I'll write up a better post for you. I won't be able to post it until next week but at least it should make more sense.

SlowLearner
Posts: 92
Joined: Wed Aug 08, 2007 3:58 pm

#71 Post by SlowLearner »

Hi redllar
I'm wondering if you'd feel comfortable enough doing this type of research anyway, since it involves a lot of system registry browsing
I'll have a go at anything, although it is way above me - at least I now know that these exist and how to browse through them.
I don't really have the time this week to go over it again
I completely understand and I will fit in with whatever you have to offer.
I know you give your time and expertise to this site free of chare, and I also know that I have taken a big share of it so far.

Whenever you feel you've had enough, and realise that my username is a good description, feel free to cut your losses and move on.

Even if I don't have it working - I've still enjoyed it :D

Thank you

Post Reply