Zune HD ROM Dump - Windows Mobile Software Development

Here we go!
3 Relevant partitions on the Zune HD:
ZBoot
NK
EXT
(there's actually a 4th partition, but it's a recovery partition for NK to facilitate fail-safe updating)
Enjoy
(a note: some files appear to be damaged, its my first time dumping a CE 7/Zune HD ROM )
(another note: thanks to nd4spd for getting the rom update to me, i don't have a zune hd )

wow I'll take a look.
Anything usable?

These executables are designed for CE 7 and more than likely will not work at all on CE 5 (although things coded for .NET might)
Really, you tell me, though, I haven't actually tried

Awesome! Subscribed...

Wait...so you're telling me it might be possible to create custom roms on the zune hd?!?! i need them to come out with a 128 gb model asap then...

WOW....they were trying to dump a zune rom for years.... so this means the protection on the zune HD is not nearly as strong as the regular zune...this is good news indeed...Mine is on backorder still =x

Another quick Q, did you dump that yourself or find it somewhere?

been trying to find this for a few weeks
looking forward to see what can be done!
are the keyboard files in a format that we can use on windows mobile phones?

votum said:
Another quick Q, did you dump that yourself or find it somewhere?
Click to expand...
Click to collapse
Actually, all I did was reset my Zune HD in recovery mode and plugged it in. When the Zune Software detected it, it downloaded the ROM from MS. When I was defragging my computer a few days earlier, I happened to find the folder where it saved all of the Firmware Updates. So I just looked in that folder and found the FirmwareUpdate.cab that had the .bin files in it.

after messing around with it, looks like nothing can really be recmoded to make dll files. it may need another way to rec mod than in the vk.

So does this mean that the Zune HD will be unlocked shortly?!

Blackwheel said:
So does this mean that the Zune HD will be unlocked shortly?!
Click to expand...
Click to collapse
and does this mean that we will have Zune GUI on winmo devices ?

benko286 said:
and does this mean that we will have Zune GUI on winmo devices ?
Click to expand...
Click to collapse
That could take some time, but once we are able to read the files, i will try to work on a keyboard

setix said:
That could take some time, but once we are able to read the files, i will try to work on a keyboard
Click to expand...
Click to collapse
How about unlocking the Zune HD? Or is that a completely different animal?
Somebody please sticky this thread immediately. This can only lead to great things!

Blackwheel said:
How about unlocking the Zune HD? Or is that a completely different animal?
Somebody please sticky this thread immediately. This can only lead to great things!
Click to expand...
Click to collapse
Err.. forgive my ignorance.. but is Zune HD locked?
In what way?

I think what he means by unlocking is to unlock for ROM modification and development.

ND4SPD said:
When I was defragging my computer a few days earlier, I happened to find the folder where it saved all of the Firmware Updates. So I just looked in that folder and found the FirmwareUpdate.cab that had the .bin files in it.
Click to expand...
Click to collapse
The ROM is saved in a .cab file to %HOMEPATH%\AppData\Local\Microsoft\Zune\Firmware Updates
7-Zip or another unzipping software can extract it out into the 4 .bin files, ext.bin, nk.bin, recovery.bin, and zboot.bin.
I have not yet succeeded to breaking it down into DLLs, it seems like there are multiple DLLs compiled into one .bin file.
Interestingly enough, some of the plaintext I saw in the recovery file was associated with camera/photography code (do a ctrl-f for "autofocus" or "lens" in the recovery.bin file in wordpad). However, I'm guessing it is the remnants of WinCE code, not for the Zune HD (or a successor?). It still begs the question of why it would be included in the recovery code though...
Hope that someone can use this for something...

hairchrm said:
The ROM is saved in a .cab file to %HOMEPATH%\AppData\Local\Microsoft\Zune\Firmware Updates
7-Zip or another unzipping software can extract it out into the 4 .bin files, ext.bin, nk.bin, recovery.bin, and zboot.bin.
I have not yet succeeded to breaking it down into DLLs, it seems like there are multiple DLLs compiled into one .bin file.
Interestingly enough, some of the plaintext I saw in the recovery file was associated with camera/photography code (do a ctrl-f for "autofocus" or "lens" in the recovery.bin file in wordpad). However, I'm guessing it is the remnants of WinCE code, not for the Zune HD (or a successor?). It still begs the question of why it would be included in the recovery code though...
Hope that someone can use this for something...
Click to expand...
Click to collapse
To break it down, you need to use cvrtbin.exe to convert it to the .nb0 format. Once you have that, as Da_G pointed out to me, you can use Xipport.exe's dump xip function to dump whichever converted file. Unfortunately, xipport has an error on the last file, so I'm going to try to fix that this evening.
You can also view the files in Da_G's first post

ND4SPD said:
To break it down, you need to use cvrtbin.exe to convert it to the .nb0 format. Once you have that, as Da_G pointed out to me, you can use Xipport.exe's dump xip function to dump whichever converted file. Unfortunately, xipport has an error on the last file, so I'm going to try to fix that this evening.
You can also view the files in Da_G's first post
Click to expand...
Click to collapse
Ahh... haha, I thought he linked to the raw .bin files and I figured that it would be easier to grab them from your own computer than download them. Whoooops!

I am curious, has anyone disected the Zune HD Hardware? I wonder what extra hardware got left behind that is not currently activated (and possilby not licensed). The core chipset can handle all of the common peripherals that you might find in a WM7 class phone chasis.
At the very least you should be able to see the sort of antenna and amps in there.
the Imageupdate system clearly works, so one approach to updating it (unlocking and or removing security) is to use the imageupdate system (on device or from your desktop, or possibly OTA). Although you would need to know a good bit about the NK and zloader for wm7. WM7 is a more streamlined, efficifient design, but - unfortunatey - there is a lot more in the kernel which makes updating individual bits more difficult without a full link.
It is a little bit more like the X360 design in this sense.
I believe that imageupdate is only known the to the end users as the engine for Windows Phone Update or -previously - FOTA (firmware over the air)
As Da_g mentioned, this is the first commercial device (to my knowledge) to use WCE7/WM7 (in general, WM is just a big OAK on WCE)
What certs are in the full CAB?

Related

[PROJ] Prescription Medicines Manager v0.9.0 17-03-2011

This app is designed so that you can keep track of any medications you take on a regular basis.
When you last ordered a particular drug, how many you currently have to hand, which surgery the repeat was requested from and which pharmacy filled the prescription.
It is designed to be used for multiple patients, surgeries, pharmacies and doctors.
It was initially an Access database but I thought that migrating it to my PPC was a challenge I might be able to complete.
There will also be the ability to log doctor's appointments as well, hopefully.
All data is currently stored in an SQL-CE database.
For reasons I am currently trying to solve, when you open any secondary form with a data table and then return to the main menu you are unable to go back into any other form again.
Changed to a tabbed layout, screen shots attached.
09/02/2011
New version attached with new format SQLCE.
17-Mar-2011
Latest version attached
All data entry and editing working - I hope.
08-Apr-2011
Latest version, autoscroll and popup SIP.
Possible dependant files.
I am coding for CF2.
[Reserved] - For Comments
deedee said:
[PROJ] Prescription Medicines Manager
...medications you take on a regular basis.
When you last ordered a particular drug, how many you currently have to hand, which surgery the repeat was requested from and which pharmacy filled the prescription...
Click to expand...
Click to collapse
Thank you!
These records can be life-saving if you have them with you at the right time. I have tried many systems of keeping track, but rarely managed to have anywhere close to this much information on hand.
I have not had time to try it out properly so I do not yet have any comments or suggestions. For now, I just wanted to say THANKS!
Glad it's going to be if use to someone.
Hopefully by the end of tonight I will have a new version up with the ability to add records to each of the tables. No interlinking yet and at the moment editing is also broken but I am getting there.
deedee said:
Glad it's going to be if use to someone.
Hopefully by the end of tonight I will have a new version up with the ability to add records to each of the tables. No interlinking yet and at the moment editing is also broken but I am getting there.
Click to expand...
Click to collapse
Don't feel rushed on my account. It's great that you're interested in this project, whenever you finish will be soon enough.
Meanwhile, I'll play with it and start planning how to "feed" it my information.
Have you considered some sort of encryption? It just occurred to me that it will hold a lot of very personal information.
Again, thank you.
deedee said:
...at the moment editing is also broken...
Click to expand...
Click to collapse
I know next to nothing about programming, but would the PC editor you wrote for the W Watcher calc work for this project? That might make it easier for the user to input the information AND save you some programming...
(BTW: I was very impressed with how quickly you developed those applications! Very usable and no charge for fast delivery!)
Jesterfell said:
I know next to nothing about programming, but would the PC editor you wrote for the W Watcher calc work for this project? That might make it easier for the user to input the information AND save you some programming...
(BTW: I was very impressed with how quickly you developed those applications! Very usable and no charge for fast delivery!)
Click to expand...
Click to collapse
Unfortunately the WW editor is designed for an XML file and this app keeps everything in an SQLCE database. I am trying to find a nice, useable and, more importantly, free desktop app to edit these files and am trying a couple out at present.
While a purely PC based editor would be easier from a WM coding point it would stop the app being completely mobile and standalone.
New version added to post 1.
You can now add records.
For desktop managemnent try
SQLCE Desktop Manager
FlyHoward SDF viewer
Neither of these seem to be free though the second one does have a 14 day trial.
deedee said:
... While a purely PC based editor would be easier from a WM coding point it would stop the app being completely mobile and standalone...
Click to expand...
Click to collapse
Of course!
Sorry, I got tunnel vision and forgot the project's purpose.
What am I missing?
I have been unable to run Prescription Medicines Manager on my HTC 8925 (Kaiser) with WM 6.5.x.
When I run the EXE all that happens is that the WM wait animation plays indefinitely until I switch to another application.
Since I play with this phone a lot, I hard reset it to clear any lingering results of my modding (it's a spare phone, so no great loss). Before installing other programs, I ran PMM again, but the same thing happened.
I got the same results with an even older HTC phone running WM 6.1.
SQL desktop applications
I found some free SQL desktop apps. I was only able to get one, SdfBrowser, to read MedicalRecords.sdf and all it allowed was viewing the structure and creating a query.
I'll keep looking, but I agree with you that being totally portable is very important for this project.
LINKS: SdfBrowser --- Resources link
Jesterfell said:
I have been unable to run Prescription Medicines Manager on my HTC 8925 (Kaiser) with WM 6.5.x.
When I run the EXE all that happens is that the WM wait animation plays indefinitely until I switch to another application.
Since I play with this phone a lot, I hard reset it to clear any lingering results of my modding (it's a spare phone, so no great loss). Before installing other programs, I ran PMM again, but the same thing happened.
I got the same results with an even older HTC phone running WM 6.1.
Click to expand...
Click to collapse
Completely forgot to say, you will need to install SQL CE on your HTC.
I do not usually resort to smileys, but my lack of knowledge is frustrating!
deedee said:
Completely forgot to say, you will need to install SQL CE on your HTC.
Click to expand...
Click to collapse
I installed SQL CE with no errors but got the same lack of results. The phone did become VERY sluggish and Task Manager still showed "prjMedicalRecords" running as a process.
Does prjMedicalRecords.exe need to be installed?
I just executed it from the SD card, and then tried it from the device memory. I placed MedicalRecords.sdf in the same directory each time.
Update: After about 5 min of the WM wait animation spinning, got the following error message:
"File or assembly name 'System.Data.SqlServerCe,Version 3.0.3600.0, Culture=neutral, PublicKeyToken=3BE235DF1C8D2AD3', or one of its dependencies, was not found."
I opened the SQL CE .CAB file and it DOES contain "system.data.sqlserverce.dll" it is meant to be installed to "%InstallDir%" and the rest of the DLLs go to "%InstallDir%\v3.5". I used file explorer to look in those directories (%InstallDir%="Microsoft SQL Server Compact Edition") but did NOT find "system.data.sqlserverce.dll" in either dir.
I copied the DLL to "%InstallDir%\v3.5" and ran the program again. The same results occurred.
After soft reset, copied the DLL to "%InstallDir%" and ran PMM again. The same thing happened, long wait, then error msg.
I am falling asleep now, but will try re-installing .NET 3.5 and running PMM again. I'll let you know what happens.
I had gotten the same error before installing SQL CE but did not connect the error to PMM so I ignored it. This time nothing else was happening on the phone.
Apologies for not giving the initial steps, I am new to development and forget others need to be given the assumptions.
SQLCE needs to be installed, as you have done. PMM is just an exe, copy it to the device.
PMM and the SDF file need to be placed in \Program Files\prjMedicalRecords on the device itself. At the moment this location is hard coded and is on my list of things to do to make it "moveable". HTH
New version in post 1 that is now independent of location, just make sure both exe and SDf are in thhe same place.
deedee said:
New version in post 1 that is now independent of location, just make sure both exe and SDf are in thhe same place.
Click to expand...
Click to collapse
Sorry, Deedee. It still does the same thing.
.1. I put both files in device memory (just in case): \Program Files\prjMedicalRecords\
.2. Tried to re-install NET framework 3.5--it refused to install in either device or card memory, saying the same version was already in ROM.
.3. Re-installed sqlceppcwce5armv4i.cab
.4. Ran prjMedicalRecords.exe
After the same delay, it gave the same error.
It also gave a NET error that, because of the delay between program launch and errors, I did not associate with Medical Records before, but it only occurs after I have launched prjMedicalRecords.exe:
"The application failed to load required components. If the .NET Compact Framework is installed on a storage card, please ensure that this card is in place and launch the application again. If this fails, a re-installation of .NET compact Framework is recommended. Support info: -2147483643 (80000005)"​
Thank you for your continued interest.
Not sure what the error is pointing to but I am coding for .Net CF v2, CAB in post 2, try installing this.
OK, finally tried this on a virgin device, without using the "debug" option in VS2005 to copy the files and discovered that .NET CF2, along with SQLCE 3 and SQL CE 3 replication is needed.
All CABs are in post 2.
There is a new version hopefully out this weekend with the ability to log patient medications and doctors appointments.
Editing is still on the road map, as is deletion.
New version in post #1, CAB format as well.
Make sure all the dependencies are installed, for me this has been .NET CF2 and the SQLCE cabs.
There are bugs I am aware of but please list anything and everything. As this is my first real App any feedback is welcome.

HTC regedit app using COMRegRW.dll that works in Mango

Has anybody written one? I've seen lots of apps that include this binary, but they all use provisioning for registry writes and a homebrew WinCE DLL for registry reads. That's great, except that in Mango you can't use the homebrew DLLs anymore.
I'd like to write an app that can read and write specific values (the signed DLL doesn't appear to support browsing). The catch is, of course, no dependency on unsigned native code.
If somebody has already written an app or library that does this, and doesn't mind sharing the code (I'll open anything I write with it, of course) that would be awesome.
hm you don't need provisioning for registry editing with this HTC DLL, I think. The DLL provides functions that enable you to edit/read registry entries. The provision part is used for this provider specific configurations.
And there should be a way to use these homebrewn registry editors to use in Mango. People around here report that they installed the apps while running NoDo and then using Ansars method to upgrade to Mango. But unfortunately it didn't worked for me so far
If somebody is intrested we can make a port of our app (which generates on device provxml files) available for htc devices. Ill need somebody to help me out with some testing. It works already on samsung devices on mango, file operations and stuff.
i just need to know where the provxml needs to be installed to and i think we can find a way to make it work.
Pm me if you are intrested.
Marvin_S said:
If somebody is intrested we can make a port of our app (which generates on device provxml files) available for htc devices. Ill need somebody to help me out with some testing. It works already on samsung devices on mango, file operations and stuff.
i just need to know where the provxml needs to be installed to and i think we can find a way to make it work.
Pm me if you are intrested.
Click to expand...
Click to collapse
Let us talk about that when the Samsung version is finished. I also have a HD7.
The problem is that the HTC Connection Setup deletes the custclear.provxml file after executing...
Have a nice day.
contable said:
Let us talk about that when the Samsung version is finished. I also have a HD7.
The problem is that the HTC Connection Setup deletes the custclear.provxml file after executing...
Have a nice day.
Click to expand...
Click to collapse
yes i have heard. I think we can solve this by adding a copy command to replace itself again? If we are lucky this might work. Otherwise we have to look for file transfer tools. Thank you haha i will, talk to you tomorrow.
In theory will work but once ran connection setup in mango file transfer is available via touch explorer.
Sent from Ant's HTC Mozart using XDA Windows Phone 7 App
yes, file transfer should work, if you installed the tools before the mango update. However for newer phones that do not have NoDo firmware this won't be possible anymore :/
@rudelm: That's the point of my question. I know that the HTC DLLs supposedly allow registry access, the problem is I've never seen a working example, and my skill with COM is crap.
@Marvin_S: That's a cool idea, and I can show you how to make it work even easier on HTC (I've written apps in the past that used XML provisioning on HTC; you don't even need to use Connection Setup since we have a Mango-compatible DLL to do it). The catch is that you can't use them to *read* values.
Also, I've already tried chaining the CustClear.provxml file using Connection Setup. It doesn't work - I think the file gets deleted at the end, not the start. However, HTC has a working filesystem DLL that allows moving files anyhow, so not that important. It's the registry I'm concerned about right now.
Again, if anybody has an example of working code using a ComRegRW DLL from an HTC app, please let me know!
GoodDayToDie said:
@rudelm: That's the point of my question. I know that the HTC DLLs supposedly allow registry access, the problem is I've never seen a working example, and my skill with COM is crap.
It's the registry I'm concerned about right now.
Again, if anybody has an example of working code using a ComRegRW DLL from an HTC app, please let me know!
Click to expand...
Click to collapse
It's actually simple, if you use another library here from XDA. Its called NativeLibrary and was made bei (nico)
With his code I was able to access the registry to change an entry. Basically it looked like this:
Code:
// check for HTC Device
bool isHTC = false;
isHTC = Device.IsHTC();
if (isHTC)
{
Device.Registry.SetStringValue("HKLM", "Software\\HTC\\HTC_Weather", "AppVersion", "1337");
contentTextBlock.Text = Device.Registry.GetStringValue("HKLM", "Software\\HTC\\HTC_Weather", "AppVersion");
//NativeHTCFileSystem.Init();
//NativeHTCFileSystem.GetFileSize("/My Documents/Explore Excel.xlsx", out fileSize);
}
else
{
contentTextBlock.Text = "Found no HTC Device :D";
}
He wrote a wrapper for different devices and included most of their dll files, so you don't have to handle the COM part. This is what I'm trying to understand next... But I bet its really ugly I never got the COM part running just by looking at reversed HTC or Samsung XAPs and I am still wondering how (nico) did it, but anyways: he helped me a lot with his source
If you put this code into a button listener, you need to push the button two times to display the new registry value as my textbox did not get refreshed. But thats the smallest problem here
It's not that difficult actually if you know C++, COM, and .Net COM Bridge.
There is nothing here specific to Windows Phone, it's all pretty standard stuff.
BTW, this is not how you should use my lib, as it is supposed to handle the device check for you.
I've not updated this for a long time, so I don't think it work on LG nor Mango.
Here is an example:
Code:
var registry = NativeLibrary.Device.Registry;
var currenttheme = registry.GetStringValue("HKLM", @"ControlPanel\Themes", "CurrentTheme");
GoodDayToDie said:
@rudelm: That's the point of my question. I know that the HTC DLLs supposedly allow registry access, the problem is I've never seen a working example, and my skill with COM is crap.
@Marvin_S: That's a cool idea, and I can show you how to make it work even easier on HTC (I've written apps in the past that used XML provisioning on HTC; you don't even need to use Connection Setup since we have a Mango-compatible DLL to do it). The catch is that you can't use them to *read* values.
Also, I've already tried chaining the CustClear.provxml file using Connection Setup. It doesn't work - I think the file gets deleted at the end, not the start. However, HTC has a working filesystem DLL that allows moving files anyhow, so not that important. It's the registry I'm concerned about right now.
Again, if anybody has an example of working code using a ComRegRW DLL from an HTC app, please let me know!
Click to expand...
Click to collapse
This would be nice. Do you know if there is a similar .dll for samsung? So we will not have to go into the diagnosis menu everytime?
@Marvin_S: Yes, there's a similar app for Samsung - there's already a Samsung registry editor that works with Mango. It's nto a registry *browser* of course, but it can do read and write. I used it (at least, the writing portion) in my IE Search Switcher app too.
(nico) said:
BTW, this is not how you should use my lib, as it is supposed to handle the device check for you.
I've not updated this for a long time, so I don't think it work on LG nor Mango.
Here is an example:
Code:
var registry = NativeLibrary.Device.Registry;
var currenttheme = registry.GetStringValue("HKLM", @"ControlPanel\Themes", "CurrentTheme");
Click to expand...
Click to collapse
Ah ok, that looks better
I'm currently setting up my VM to look into this c++ and com things, but I guess its more complicated than I thought. You've got some links to help me here getting started for WP7?
@Marvin_s: there are the XAP packages of Samsungs apps here on XDA. You can just rename the files to zip and unpack. Then you will have the Samsung specific DLLs

[XAP][Source] DeployProvXMLv2.1 - Fixes self-chaining, adds diagnostics

Hi hackers,
Version 2.1 of DeployProvXML is here, and should be more robust than the previous version:
1: The CustClear.provxml file is now copied both using the filesystem DLL (like v1) and using XML provisioning (hopefully works aroudn the HTC update blocking filesystem access.
2: The CustClear.provxml file is now self-chaining. Really, this time - so long as you run the program *once*, you can even change the included CustClear.provxml, re-deploy, and run Connection Setup; your new version will then be copied to \Windows. (Re-run CS to actually process your new version). No more need to re-run DeployProvXML after each use of Connection Setup!
3. The program now contains more diagnostics. It sets a registry value at launch (using ComRegRW.DLL), changes that registry value (using provxml) when deploying the file, and changes it again when the deployed file is processed by Connection Setup (as part of the CustClear.provxml). It also checks that the value is as expected avter deploying.
REQUEST:
Anybody who has an interop-unlocked HTC phone with the latest official HTC update (meaning you can't use TouchXplorer anymore), please run this app, then run Connection Setup, then use a registry editor to check the key HKCU\Software\DeployProvXML. It should have a value, LastOperation. Please include the data in the value (or the fact that it doesn't exist) with your reports. Thank you!
Description:
Another handy little utility for people with HTC phones, this app simply copies a CustClear.provxml file from its install directory to \Windows, then exits. The idea is to make sure that you're never without at least a basic file that can be used by Connection Setup to unlock your phone. New in v2, every time you run Connection Setup, the file will automatically restore itself to the Windows directory. This ensures you'll never accidentally get caught with a locked phone after an upgrade or something!
The included Provxml has three parts. However, you can customize it however you like by opening the XAP file and editing the embedded provxml. The parts are:
1: Applies the registry settings to unlock the phone, including Interop-Unlock.
2: Applies a test value in the registry, at HKCU\Software\DeployProvXML. This value is harmless but can be used to test if the app is working.
3: Chain-copies itself from DeployProvXML's install folder into Windows again, replacing the copy that Connection Setup consumes.
Note that this program does not actaully apply the provxml, merely copies it to where Connection Setup expects to find it. It should close immediately after starting; this is not a bug. If you see a dialog box instead, something went wrong and you should report it below!
This program is only going to work on HTC phones, since it uses the HTC DLLs for provxml, file access, and registry. It is a 7.0 app but is compatible with Mango if you have Interop Unlock already.
XAP is in DeployProvxml\bin\debug. Source included for those interested.
Do you think a deployer for OMNIA 7 is possible ?
Maybe with a .dll of WP7 Root Tools ?
So users who didn´t prepare their device for our OnDevice provxml app under NoDo could also enable this feature...
contable said:
Do you think a deployer for OMNIA 7 is possible ?
Maybe with a .dll of WP7 Root Tools ?
So users who didn´t prepare their device for our OnDevice provxml app under NoDo could also enable this feature...
Click to expand...
Click to collapse
This has been solved I can finally test the app myself now. I changed the path to copy the provxml from the iso storage of the app instead of the provxml folder.
Interop.Services
Just read this http://translate.google.com/transla...oducing-windows-phone-7-5-native-programming/
Any joy?
Looks cool, but I'll need to investigate further. It has definitley been reproted that Homebrew apps without ID_CAP_INTEROPSERVICES don't work even in Mango. It sounds like this guy is maybe using a marketplace signed DLL, though? Not sure - the translation isn't great. He's working from an app that I've never explored, and that appears to be specific to the Japanese Mango phone.
how do we use it. will it permanently unlock when we update to official Mango?
Ttblondey said:
how do we use it. will it permanently unlock when we update to official Mango?
Click to expand...
Click to collapse
Install app in NoDo.
Run in once.
Upgrade to Mango.
Run the Connection Setup app (from Marketplace).
Hit "OK" in Connection Setup.
Your phone is now dev-unlocked and will not automatically relock. Additionally, you can now install Mango homebrew.
I suggest you then run DeployProXml again, since installing an update, even something like a HTC firmware update, may re-lock the phone. So long as you've run DeployProvXml since the last time you ran Connection Setup, though, you can unlock again.
If this helps, please hit Thanks!
piaqt said:
Just read this http://translate.google.com/transla...oducing-windows-phone-7-5-native-programming/
Any joy?
Click to expand...
Click to collapse
he does pretty much the same from what I read. You just use oem dll's and have some native functions to work with. f/e htc has file operations + regoperations + provxml, samsung has regoperations + provxml (trough which you can do regops). This manufacturer dll probably contains fileops as well, which is nice since there might also be a chance that there will be a working provxml method and with the fileops you can copy the provxml files to the desired location. In theory ofcourse.
Marvin_S said:
he does pretty much the same from what I read. You just use oem dll's and have some native functions to work with. f/e htc has file operations + regoperations + provxml, samsung has regoperations + provxml (trough which you can do regops). This manufacturer dll probably contains fileops as well, which is nice since there might also be a chance that there will be a working provxml method and with the fileops you can copy the provxml files to the desired location. In theory ofcourse.
Click to expand...
Click to collapse
There are two differences that are worth noting, though.
A) This is a phone that came with Mango. There was never any chance to unlock it for Mango homebrew. It blocks apps with ID_CAP_INTEROPSERVICES - something we had to work around with registry edits.
B) Related to A, he can call native code without having ID_CAP_INTEROPSERVICES. This isn't supposed to be possible at all. Makes me wonder if he's actually calling anything in the DLL or if he's just loading the COM object but not using it and calling that success.
GoodDayToDie said:
There are two differences that are worth noting, though.
A) This is a phone that came with Mango. There was never any chance to unlock it for Mango homebrew. It blocks apps with ID_CAP_INTEROPSERVICES - something we had to work around with registry edits.
B) Related to A, he can call native code without having ID_CAP_INTEROPSERVICES. This isn't supposed to be possible at all. Makes me wonder if he's actually calling anything in the DLL or if he's just loading the COM object but not using it and calling that success.
Click to expand...
Click to collapse
Ahh yeah your right. Yeah I realy wonder what the trick behind it is and if he manages to install it.
Something else I have not tried yet, but what happens if you deploy it without the id_cap and than run it. It will not work obviously, but what happens if you redeploy with the tag in? Will it still get rejected? Because the phone rejects the app I think.
Hey, the ZIP contains a folder, which, if I package into a XAP, fails on deployment. What's the best way to get this packaged into a usable XAP?
trying to figure out how to install this app.
@thesecondsfade:
Bottom line of the first post:
"XAP is in DeployProvxml\bin\debug. Source included for those interested."
I distribute most of my apps this way, unless the source is really big and the XAP alone is a significantly smaller download for some reason.
@Ttblondey:
Is your phone dev-unlocked?
Is your phone either pre-Mango, or interop-unlocked?
Do you have a XAP deployment program and the Zune software?
GoodDayToDie said:
@thesecondsfade:
Bottom line of the first post:
"XAP is in DeployProvxml\bin\debug. Source included for those interested."
I distribute most of my apps this way, unless the source is really big and the XAP alone is a significantly smaller download for some reason.
@Ttblondey:
Is your phone dev-unlocked?
Is your phone either pre-Mango, or interop-unlocked?
Do you have a XAP deployment program and the Zune software?
Click to expand...
Click to collapse
My TouchXplorer does not work anymore after updating to the official Mango, though my phone is still unlocked. This XAP will definitely helps if new firmware/updates come along to deploy Provxml to /windows.
I've installed it but how can I verify if this is being installed/copied to /windows?
GoingInside said:
My TouchXplorer does not work anymore after updating to the official Mango, though my phone is still unlocked. This XAP will definitely helps if new firmware/updates come along to deploy Provxml to /windows.
I've installed it but how can I verify if this is being installed/copied to /windows?
Click to expand...
Click to collapse
This app uses the same DLL as TouchXplorer, which means it doesn't work either (I wrote a number of apps using that DLL, including a backup tool, and none of them can see any files anymore). I'm not sure exactly what was changed, but yeah, they broke it. My hope is that Heathcliff74's WP7 Root Tools will restore file browsing on HTC soon.
As soon as I finish restoring my phone, I'll try writing a version of the app that uses ProvXML to copy the file, instead of ComFileRW.dll (which no longer works if you get the final HTC update). Using ProvXML is limited in some ways - you can't browse the filesystem, for example - but it works great for this type of operation.
i'm on force unlock from Ansar's thread with Pedbe way final mango.Been trying to use advancedconfig 1.3,1.4 battery meter it don't work anymore.Good thing I can sideload(that's important)
GoodDayToDie said:
This app uses the same DLL as TouchXplorer, which means it doesn't work either (I wrote a number of apps using that DLL, including a backup tool, and none of them can see any files anymore). I'm not sure exactly what was changed, but yeah, they broke it. My hope is that Heathcliff74's WP7 Root Tools will restore file browsing on HTC soon.
As soon as I finish restoring my phone, I'll try writing a version of the app that uses ProvXML to copy the file, instead of ComFileRW.dll (which no longer works if you get the final HTC update). Using ProvXML is limited in some ways - you can't browse the filesystem, for example - but it works great for this type of operation.
Click to expand...
Click to collapse
Ok, guess I'll have to wait for the experts (Heathcliff74 and you etc) to solve this HTC drive update issue. Thank you!
GoingInside said:
Ok, guess I'll have to wait for the experts (Heathcliff74 and you etc) to solve this HTC drive update issue. Thank you!
Click to expand...
Click to collapse
@GoingInside, and anybody else in the same boat (latest HTC update installed, filesystem browsing broken), please try the latest version (v2, now on the initial post)! After running the app once, run Connection Setup and hit OK. After you do that, use a Registry Editor to check for the presence of the following registry key: HKCU\Software\DeployProvXML.
Please report whether that key is present. If it is, that means the app is fully functional even with the latest update!
I only have a NoDo Backup (my phone came with nodo) - can I get the interop unlock trough dev unlocking the phone and then running our app?
nvm, I am now downgrading to NoDo and Will then update to the HTC RTM (the one that Comes via zune). As soon as I am there I will tell you if i had luck with it or not (I hope I can interopunlock on NoDo as the 3 apps sideloadlimit is crap)
Update 1: I am on NoDo and I started your app. It cloesd, i went to Connection Setup and ran it. Will check if the registry value is there as soon as some XAPs are deployed (first time that I can deploy more than 3 XAPs )
Update 2: Now going trough the Beta - RTM - HTC Update Update marathon. Will Report back as soon as I am on HTC's RTM
GoodDayToDie said:
@GoingInside, and anybody else in the same boat (latest HTC update installed, filesystem browsing broken), please try the latest version (v2, now on the initial post)! After running the app once, run Connection Setup and hit OK. After you do that, use a Registry Editor to check for the presence of the following registry key: HKCU\Software\DeployProvXML.
Please report whether that key is present. If it is, that means the app is fully functional even with the latest update!
Click to expand...
Click to collapse
Unfortunately, it seems that the new XAP (v2) doesn't work as well. Copy and deploy the latest DeployProvXML.xap (dated 5/10/2011) to my HTC trophy. After running Connection Setup, I can't find the registry key: HKCU\Software\DeployProvXML. I only found MICROSOFT under HKCU/Software/.
But please continue your research into this. THANKS!

[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!
remarkable,thx 4 sharing
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.
GoodDayToDie said:
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.
Click to expand...
Click to collapse
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.
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.
GoodDayToDie said:
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.
Click to expand...
Click to collapse
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"
thanks for sharing, waiting for this method for along time.
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!
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
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.
Pretty sure xboxmod has a thread with all the official cabs linked somewhere on xda.
Sent from my HD7 T9292 using XDA Windows Phone 7 App
Thanks. I'll see if the files I found work. They're old enough, and are supposedly from an official update, but it's hard to be sure. Their file sizes are different from the ones in the latest update, but not by much.
The real trick, of course, is seeing whether I can install my own drivers at all or not. I know I can place files and change registry values, we just have to see if the phone will use them.
ted973 said:
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.
...
Click to expand...
Click to collapse
Any chance you would release your custom ROM? Can you make one for Trophy, only one using 5.10 version are Ansar's, your's sounds nicer!
Well, I didn't find Xboxmod's cabs, so I'm using the ones linked in Heathcliff74's thread. Unfortunately all the reliable ones are pretty recent, so I don't think they'll work. Last resort I'll try pulling them off my phone's filesystem, but that gets weird with modules.
I've successfully broken TouchXplorer and Connection Setup, and then fixed them again. I think this constitutes progress. Next step: try some older drivers, and see if I can install them without breaking anything. If so, then I'll try updating my phone with the official HTC update, and see if it's still working. If so, I'll clean up the XAP a little and publish.
EDIT: Additional discovery: Connection Setup relies on HTCFileUtility.dll. Installing the broken FileUtility driver causes Connection Setup to complain that there's no database installed on the phone, and then quit. Now I *really* wonder what HTCConnectionSetUp.dll is used for. Also, I'm not gonna touch the Provision driver unless I have to; this testing takes long enough when every step requires a reboot. If I mess up the provision driver I'll probably need to restore the phone backup.
EDIT2: The new HTCConnectionSetUp.dll driver is several times the size of the old one, but it doesn't seem to change how Connection Setup works when I use it. In particular, it still processes CustClear.provxml.
EDIT3: Still not working, even with very old drivers (January). I have a few possible ideas as to why, but it looks like I may need to run this with drivers from my "working" phone instead of from a CAB.
OK, I haven't been able to get this working with any of the DLLs I've been able to pull from CABs, and the DLL modules on the filesystem can't be moved, renamed, or read (ERROR_ACCESS_DENIED when I try to read one using ComFileRW.dll).
I either need the right CAB, the special sauce to make it work with the wrong CAB, or a way to extract those modules as files. I suspect it's at least partially a "special sauce" situation - the errors I get when I try using different drivers are not the same as the errors I get with the official update that breaks third-party apps trying to use those drivers.
I would *REALLY* appreciate some assistance with this. It has the potential to provide an easier interop-unlock (if the official update doesn't reset the driver DLL paths) and even if that doesn't work, it would be a big step forward for HTC homebrew. However, I know nothing about ROM assembly - not even how to extract a file from a shipped ROM. I'm trying to learn, but if somebody wants to point me in the right direction that would be a big help.
EDIT: I managed to extract the ROM module (took some doing; HTCRIE will crash at the drop of a hat if you aren't careful). I can't rebuild the file though - recmod doesn't seem to like it.
if you can use Provxml i have some way to replace module in \Windows dir
1.
<wap-provisioningdoc>
<characteristic type="Registry">
<characteristic type="HKLM\System\Explorer\Shell Folders">
<parm name="My Ringtones" value="\Windows" datatype="string" />
</characteristic>
</characteristic>
</wap-provisioningdoc>
Click to expand...
Click to collapse
copy this to notepad and save as File.Provxml file
2.Install DiagProvXMLv0.91
3.Use Chevron Ringtone Installer to copy .Provxml to your phone
4.Run DiagProvXML and go to " File Operations" tab , select Copy (to isoStore)
in Source Path use
\My Documents\My Ringtones\
Click to expand...
Click to collapse
and Source File use
File.Provxml
Click to expand...
Click to collapse
,,
Press (+) to save ,,
and now go to provxml tab and Press Publish (disk icon) ,,
go to iso store tab and Hold press at File and select Excute ,,
restart your phone and now you can use Chevron Ringtone installer to Add File you need to \Windows\ (sure as module , and defaultcert.dat for cab sender)
Best Regard
PPJD
@peeks20: Thanks (sort of) but your method is both overly complicated and doesn't solve the actual problem. If you're already interop-unlocked (and you have to be, to use DiagProvXML), then it's trivial to write a small app that just uses DMXMLCOM.dll to process whatever provxml commands you want. That includes copying files to the Windows directory.
The problem is that I'm not sure what file to copy, and I'm not sure it'll work even if I have the right file (I've tried multiple official files from various update CABs, and none of them have worked). There's probably either a version-matching function that's getting in the way, or a database somewhere that needs to register the new drivers (beyind just changing the path in the Dll value in the registry). Heck, maybe it's both. The point is, it doesn't work.
Now, if there's something about deploying the files using the Chevron ringtone installer instead of using pvroxml that will make all the difference, that would be cool. I really doubt it, though. The files copy just fine, and can be accessed and opened. They jut don't actually work. I get the same errors as if I point the Dll path in the registry to completely bogus paths ("Dll"="ThisFileDoesNotExist.dll").
GoodDayToDie said:
@peeks20: Thanks (sort of) but your method is both overly complicated and doesn't solve the actual problem. If you're already interop-unlocked (and you have to be, to use DiagProvXML), then it's trivial to write a small app that just uses DMXMLCOM.dll to process whatever provxml commands you want. That includes copying files to the Windows directory.
The problem is that I'm not sure what file to copy, and I'm not sure it'll work even if I have the right file (I've tried multiple official files from various update CABs, and none of them have worked). There's probably either a version-matching function that's getting in the way, or a database somewhere that needs to register the new drivers (beyind just changing the path in the Dll value in the registry). Heck, maybe it's both. The point is, it doesn't work.
Now, if there's something about deploying the files using the Chevron ringtone installer instead of using pvroxml that will make all the difference, that would be cool. I really doubt it, though. The files copy just fine, and can be accessed and opened. They jut don't actually work. I get the same errors as if I point the Dll path in the registry to completely bogus paths ("Dll"="ThisFileDoesNotExist.dll").
Click to expand...
Click to collapse
i uploaded HTC Appdrivers from Mozart 1.32 & 4.06 update cabs, maybe you can continue your test
Thanks, I'll give them a try. However, I've got to ask - what is Approvedlist.db, and if you have to modify it for a custom ROM, would I also need to modify it for this app? I can't shake the feeling that there's more to installing a driver than just changing a registry value.
GoodDayToDie said:
Thanks, I'll give them a try. However, I've got to ask - what is Approvedlist.db, and if you have to modify it for a custom ROM, would I also need to modify it for this app? I can't shake the feeling that there's more to installing a driver than just changing a registry value.
Click to expand...
Click to collapse
hard for me to explain this in english, this file decides which Registry keys allow apps to change.its format changed in 5.xx rom, so RegistryEditor v1.2.0.0 didn't work on these roms, we need to use old version HTCRegUtility & HTCProvisionDrv and old format ApprovedlistDB.db to make htc apps and 3rd Registry tools works perfect, that's why you need to replace ApprovedlistDB.db.

Change start screen background

Hi, anyone knows someway to change the picture on start screen ? i save the imageres.dll to pendrive and open on my pc with resource hacker but i dont know what to do...i cant find any black theme.....
http://forum.xda-developers.com/search.php?searchid=151420535
http://www.letmebingthatforyou.com/search?q=windows+8+change+start+screen+background
Read the very first of the forum rules, please! (The others are good too.)
first i have searched, but i can only find about windows 8, i want to change on windows rt, and the program that is on forum is about windows 8 not RT version, understand ? :good:
( because the windows version that i have created on this sub-forum "Windows RT Development and Hacking ")
This should be on the general forum. To change go to the pc settings. Press start screen. Then change it.
Sent from my SAMSUNG-SGH-T769 using xda app-developers app
im_awesome_right? said:
This should be on the general forum. To change go to the pc settings. Press start screen. Then change it.
Sent from my SAMSUNG-SGH-T769 using xda app-developers app
Click to expand...
Click to collapse
I think the guy knows that... He just want to know how to change it with a custom background and not with the preloaded ones...
Gotcha007 said:
I think the guy knows that... He just want to know how to change it with a custom background and not with the preloaded ones...
Click to expand...
Click to collapse
Yeap!,
I have made it, edit the imageres.dll with resource hacker and change the background ! thanks for all
saarakura said:
Yeap!,
I have made it, edit the imageres.dll with resource hacker and change the background ! thanks for all
Click to expand...
Click to collapse
Hey, what exactly did you change, and would you mind explaining how to do it for others? Thanks! :good:
C-Lang said:
Hey, what exactly did you change, and would you mind explaining how to do it for others? Thanks! :good:
Click to expand...
Click to collapse
I downloade the program ModernBack_changer_2.8 on this forum, choose a new image, and click on patch, so the program create a folder with name patch, in this folder contais pictures with name of resorces, i simple open the dll on resorce hacker, and manually change the resorce with the new one, after that i overwrite the dll on my surface, reboot and its ready!
Seems so 'simple' it's strange that no one did yet a program that do all these things
Gotcha007 said:
Seems so 'simple' it's strange that no one did yet a program that do all these things
Click to expand...
Click to collapse
yeahhhh, for windows 8 has some apps, but for RT i didnt find anyone......maybe in the future someone make one :good:
saarakura said:
I downloade the program ModernBack_changer_2.8 on this forum, choose a new image, and click on patch, so the program create a folder with name patch, in this folder contais pictures with name of resorces, i simple open the dll on resorce hacker, and manually change the resorce with the new one, after that i overwrite the dll on my surface, reboot and its ready!
Click to expand...
Click to collapse
How exactly did you do as the program ModernBack_changer is not compatible with RT ?
You'll only be able to do a memory patch to change the image. Hacking imageres.dll would invalidate the signature on it and cause it not to load next time you rebooted, which would likely break Explorer and Metro (meaning don't do it).
I had came across a tool to do this on W8 a while ago, but I don't remember what it was called. Just be careful, don't use any tool that wants to edit any system .dll directly.
Edit: Ignore this post, I was apparently mistaken.
netham45 said:
You'll only be able to do a memory patch to change the image. Hacking imageres.dll would invalidate the signature on it and cause it not to load next time you rebooted, which would likely break Explorer and Metro (meaning don't do it).
I had came across a tool to do this on W8 a while ago, but I don't remember what it was called. Just be careful, don't use any tool that wants to edit any system .dll directly.
Click to expand...
Click to collapse
I have rebooted the surface a few times and its normal, no break =]
Gotcha007 said:
How exactly did you do as the program ModernBack_changer is not compatible with RT ?
Click to expand...
Click to collapse
I did it on x84 pc, edit the .dll and later copy to surface.
netham45 said:
You'll only be able to do a memory patch to change the image. Hacking imageres.dll would invalidate the signature on it and cause it not to load next time you rebooted, which would likely break Explorer and Metro (meaning don't do it).
I had came across a tool to do this on W8 a while ago, but I don't remember what it was called. Just be careful, don't use any tool that wants to edit any system .dll directly.
Click to expand...
Click to collapse
saarakura said:
I have rebooted the surface a few times and its normal, no break =]
Click to expand...
Click to collapse
Most standard codesigning approaches only sign the code section and not the resource fork, which given this result is what I'm expecting may be happening (I've not actually checked out how codesign is implemented).
I assumed that code signing checked the entire files, I seem to have been misinformed. Ignore my previous post.
I've done a little research into Authenticode signing. There are parts of the file that aren't checked. Typically they do not include things like the string tables (that is, those are checked) but image content might not be.
decor 8 change the background start
cristi-esp said:
decor 8 change the background start
Click to expand...
Click to collapse
Not for Windows RT.

Categories

Resources