New: XDA launches forum for app developers. Discuss coding, tools, marketing, and more.
XDA Developers Android and Mobile Development Forum
Forgot your password?
 
Post Reply+
Tip us?
 
ted973
Old
(Last edited by ted973; 10th November 2011 at 06:28 AM.)
#1  
ted973's Avatar
Senior Member - OP
Thanks Meter 62
Posts: 150
Join Date: Feb 2008
Location: Beijing
Default [GUIDE]How To make your HTC Mango Rom suits Old System Apps.

HTC new drivers Mango Rom will not allow old system apps to get root access, like TouchXplorer does not work on 4.xx above roms.So these days i found a way to make my custom rom based on htc 5.10 rom work perfect with old system apps.

Step 1
get an old htc offical rom, like 1.xx, get a htc offical 4.0x rom.dump them.copy HTCFileUtility.dll and HTCRegUtility.dll from 1.xx rom dump, and HTCProvisionDrv.dll from 4.0x rom dump.(they are both in OEM\HTC_AppDrivers)

Step 2
use the three files(modules) copied above to replace your custom rom, if u are using 4.0x rom as your base skip step 3.

Step 3
replace the ApprovedlistDB.db(in OEM\CSConn_DB) by my uploaded one.

Step 4
use OSBuilder to relloc your modules, or relloc them by yourself(just like me, cause OSBuilder is hard for me to understand how to use it)

Step 5
package your custom rom, and flash it, then you will get a new rom that TouchXplorer and RegistryEditor(this works much faster than before) can work like charm

Step 6
thx DFT bring us HSPL & Julien Schapman bring us magic system tools!
Attached Files
File Type: zip ApprovedlistDB_modified.zip - [Click for QR Code] (1.7 KB, 106 views)
File Type: zip HTC_AppDrivers_1.32.zip - [Click for QR Code] (246.6 KB, 80 views)
File Type: zip HTC_AppDrivers_4.06.zip - [Click for QR Code] (279.3 KB, 97 views)
The Following 4 Users Say Thank You to ted973 For This Useful Post: [ Click to Expand ]
 
OMEGA_du
Old
#2  
OMEGA_du's Avatar
Member
Thanks Meter 4
Posts: 34
Join Date: Apr 2010
Location: ZhuHai , GuangDong
remarkable,thx 4 sharing
 
GoodDayToDie
Old
#3  
Recognized Developer
Thanks Meter 1423
Posts: 3,707
Join Date: Jan 2011
Location: Seattle
Would be awesome if there was a way to restore the old versions in-place without re-flashing the whole phone. CAB maybe? I don't think you can overwrite ROM modules any other way. I've avoided installing the latest HTC updates because I've written a couple apps that rely on the File and Reg DLLs, but that also means I don't have things like the Connected Media app working.
 
ted973
Old
#4  
ted973's Avatar
Senior Member - OP
Thanks Meter 62
Posts: 150
Join Date: Feb 2008
Location: Beijing
Quote:
Originally Posted by GoodDayToDie View Post
Would be awesome if there was a way to restore the old versions in-place without re-flashing the whole phone. CAB maybe? I don't think you can overwrite ROM modules any other way. I've avoided installing the latest HTC updates because I've written a couple apps that rely on the File and Reg DLLs, but that also means I don't have things like the Connected Media app working.
if you can put files in \windows folder, and change reg key under HKLM\Drivers\BuiltIn\, you can make it works without flash a rom.

cause we could get drivers from htc orginal update cabs then rename them to put into \windows folder and change reg key to make these drivers load, no need to replace.
 
GoodDayToDie
Old
#5  
Recognized Developer
Thanks Meter 1423
Posts: 3,707
Join Date: Jan 2011
Location: Seattle
Well, if you care about this at all, you're already interop-unlocked.
If you're interop-unlocked, then you can set registry values and move files (using provxml).
So... yes, this sounds pretty exciting. Having the official HTC updates but still being able to use TouchXplorer would be awesome.

So, would it just be a matter of copying the old files under new names to the Windows folder and changing the "Dll" value of "HKLM\Drivers\BuiltIn\HTCFileUtility" and such? Or would something need to be done with the DB as well? I'm not sure if that can be changed on a running device.

Tell me what needs to be done and I'll create a tool to do it.
 
ted973
Old
(Last edited by ted973; 7th November 2011 at 10:09 AM.)
#6  
ted973's Avatar
Senior Member - OP
Thanks Meter 62
Posts: 150
Join Date: Feb 2008
Location: Beijing
Quote:
Originally Posted by GoodDayToDie View Post
Well, if you care about this at all, you're already interop-unlocked.
If you're interop-unlocked, then you can set registry values and move files (using provxml).
So... yes, this sounds pretty exciting. Having the official HTC updates but still being able to use TouchXplorer would be awesome.

So, would it just be a matter of copying the old files under new names to the Windows folder and changing the "Dll" value of "HKLM\Drivers\BuiltIn\HTCFileUtility" and such? Or would something need to be done with the DB as well? I'm not sure if that can be changed on a running device.

Tell me what needs to be done and I'll create a tool to do it.
you are on the way, m8.

get drivers from htc update cab, then u'll get files not modules

Code:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\HTCFileUtility]
"Dll"="HTCFileUtility_new.dll"
if you make new HTCFileUtility.dll work, you will have enough power to replace files.

then make your new reg drivers work.

Code:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\HTCRegUtility]
"Dll"="HTCRegUtility_new.dll"
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\HTCProvisionDrv]
"Dll"="HTCProvisionDrv_new.dll"
The Following 2 Users Say Thank You to ted973 For This Useful Post: [ Click to Expand ]
 
nhathoa
Old
#7  
nhathoa's Avatar
Senior Member
Thanks Meter 204
Posts: 1,011
Join Date: Dec 2006

 
DONATE TO ME
thanks for sharing, waiting for this method for along time.
 
GoodDayToDie
Old
#8  
Recognized Developer
Thanks Meter 1423
Posts: 3,707
Join Date: Jan 2011
Location: Seattle
Thanks ted. I'll update my backup (so I can roll back to working version if I need to) and go hunt down those files.

I don't think I'll need to overwrite HTCProvisionDrv, the current version seems to work just fine. In fact, if it doesn't, there won't be any way to do the overwrite. It's just the registry and filesystem drivers that were broken.

Now I'm wondering what the other HTC drivers do. There's a specific one for Connection Setup and for HTC YouTube, plus drivers for "HTCBgService" (a way to run tasks in the background, I assume) and "HTCVersionUtility" (probably not useful, but maybe?). It would be interesting to examine the APIs of those.

For that matter, it would be interesting to examine the API of things like the provision driver. It appears to have full permissions, but the DMXMLCOM.DLL library used to interface with it has a fairly limited API (no way to get the result of a provxml query, for example). Talking directly to the driver may work better.

Anyhow, off to find the correct CAB!
 
WMD
Old
#9  
Member
Thanks Meter 1
Posts: 31
Join Date: Aug 2008
Location: Taastrup
Sounds pretty awesome! New drivers in Mango with support for old apps - cool! Really hoping for a tool to do this, i've never cooked my own ROM, I solely rely on the experts for this
 
GoodDayToDie
Old
(Last edited by GoodDayToDie; 8th November 2011 at 09:55 AM.)
#10  
Recognized Developer
Thanks Meter 1423
Posts: 3,707
Join Date: Jan 2011
Location: Seattle
Hi Ted (or anybody), do you knwo where I can get the pre-Mango HTC cabs? All the cabs I've been able to find are for the Mango HTC updates, and have the wrong versions of the files.

EDIT: Found some that might work. They aren't labeled but the datestamp is from January.


XDA PORTAL POSTS

What’s Possible with CASUAL & How to Make Your Own CASUAL – XDA Developer TV

XDA Elite Recognized Developer AdamOutler is known … more

Pearl Chen to Talk NFC Development at XDA:DevCon 2013

From HTML to LEDs or Android to Arduino, Hardware Hacking is a pastime of many people … more

Avoid Framework Bootloops on Xperias Running Jelly Bean

If you’re a Sony device owner running a stock Android Jelly Bean firmware and … more

Forum Added for the Samsung Galaxy Mega

What do you do when the Galaxy Note line is simply not big enough? You get theSamsung Galaxy Mega. … more