[HD2 Windows Phone 7 Q&A, Help & Troubleshooting an] red.on.fire:
So I have an Australian live account, and I don't want to make a new one for many reasons, so I've been trying to work out a way to access the marketplace (specifically the music store) on my phone from and AU account.

Ultimately I haven't solved it yet but I did find something interesting that maybe someone better at this all than me can use for a permanent fix?

Using a registry editor, go to HKLM/Software/Microsoft/Zune/Settings and edit Xuidlocale from (in my case) en-au to en-us.

This enabled the entire marketplace (not instantly, it needed to reload. reboot was the fastest way to get it). Trouble is, after only a few minutes it would revert to en-au. So clearly it is updating from somewhere.

I figure if we can stop it from updating, or even get it to check somewhere else, we could enable full marketplace support permanently. I mean, the fact that I can browse for 5 mins or so suggests that as long as that registry remains as US (or UK or whatever other fully supported country you like), it will continue to work.

Just my thoughts. anyone out there know anything that could help?

UPDATE 1:

ok so after messing around more I found another registry key in the same directory (LastTunerConfigURL). I foolishly ignored this before because in my mind "tuner" could only mean radio.

anyway, the key leads to a zune configuration page (https://tuners-ssl.zune.net/en-au/winMobile/v7.0/configuration.xml) which has lots of interesting parameters. In particular:

<setting id="Music Marketplace Enabled" value="false"/>

<setting id="App Marketplace Enabled" value="true"/>

<setting id="XBox Live Available" value="true"/>

changing the en-au to en-us shows the US config file in which all three are enabled.

So to enable specific marketplaces we would need to either a) change the XML on the zune server (impossible I would assume) or b) change the registry to lead to the US version. Obviously I tried that straight away, and once again, it worked for a minute or two, but very quickly reverted. Thing is though, the last part of the key is a list of additional parameters that aren't set in the XML file (e.g. MCC=505 and OEMID=HTC). These are setting in the XML but they are obviously being set from the phone, and not the zune servers as I initially thought. So if I can work out the setting or file on the phone and change THAT, then it should stop changing back.

any info on where the hell it might be pulling its info from would be greatly appreciated

UPDATE 2:

Ok so I think I found where its getting most of its information. I downloaded the LEO70 dump and worked through some likely files, and I found some entries in the zune.dll file stored in \windows on the phone (or in the dump files \IMGFS\SYS\MediaApps\Zune.dll), specifically the file S000 in the dump files. Most of it I can't understand but there are a few bits and pieces that could be useful.

The one that I think would be most likely the easiest to change is the section that deciphers the Country ID and turns it into the Phone Locale.

Basically looks like:

MapLCIDToXCountry (*ppMapping) != NULL Z W E N - Z W Y E A R - Y E ..... U S E N - U S ..... A U E N - A U A R E S - A R D Z A R - D Z A L S Q - A L.

(I cut out most of the countries but I think you get the idea

Long shot I know but I assume If i can change this to read A U E N - U S, I could trick it into reporting US to the online servers. Thing is, I have no idea at all how to actually change the file on the phone. I don't know how to compile .dll files from raw files, and I can't copy the file from the phone because touchexperience wont allow me to alter (or even copy from) the /windows directory.

Any help doing either of those two things would be greatly appreciated