Serial number? - Windows Mobile Development and Hacking General

Hi guys,
Been looking round the forums here for a method of getting the device serial number. All of the (very good!) examples seem to return a 16 byte GUID. Is there a method of getting the 12 digit serial number? Mine is like HT620DZ71704. This would be much appreciated, espacially if it were in VB!!!
Many thanks,
Millicent.

Mill - the examples on pocketpcdn are quite good. Just extract the relevant bytes of the returned serial.
V
Edit - didn't see you wanted VB. Apologies, I've only tried it in C++

Related

International smartdialing/intellidialer for Wizard

Thought more people would be interested. So I post it here. Now you can comfortably dial using any accented/language specific characters in smartdialer. You only have to modify your smardialing.dll for international characters:
http://buzzdev.net/component/option,com_simpleboard/Itemid,59/func,view/id,10204/catid,45/
8)
It only suprises me HTC smartdialer is written so badly that the look-up tables are hardcoded in the dll library. Isn't it narrow-minded? Why HTC cannot program the code to load the tables from the registry? I don't code, but don't they lack structural thinking at HTC? Best practices? Or maybe, they don't get it there are other countries in the world...
Good luck,
Seff
Is there a german version for the vario already? Don't know too much about HEX tables and stuff.....

Intercepting and rewriting phone # before dial

Hi!
I'm a new windows mobile user, developer by trade. I have a need for an application that will intercept a dial attempt from contacts or smart dialing and apply some re-write rules to the number then proceeding with the dial as normal. I've not found such a program for WM (I use TakePhone to do it on Treo 650) so I decided to try to write it!
This is for Windows Mobile 5 (on a wizard, if it matters).
I'm a Java developer, and rarely use Windows so I'm not so up on the technology used for this kind of thing, but no matter. I orderd the Windows Mobile 5 developer thing from MS and have it all installed. Using the managed code Microsoft.WindowsMobile.Telephony stuff I can dial a phone number. I suppose I could even add a menu to the contact that would specifically run my code and then I could use the Phone.Talk thing to place the call, however, I'd really like to enable the program and just have it work in the background when it is enabled.
First, can this be done with managed code? If so, how! Any input would be appreciated. Also, if you know of software that does this already, I'll just go buy it.
Thanks in advance!
this should be possible to be done with managed code, but the only idea I have now is hooking RIL.DLL or COM-port communications. And the easiest way to hook something - is to use C/C++.
Thanks for the reply! I've done some searching on RIL and RILGSM and found minimal info regarding "hooking" it. It seems that the person most likely to have done it is "itsme" who has posted a bit of information regarding the entry points and functions available in said DLL.
I'll keep looking...

TyTN cellid?

Hi. I am writing a freeware social networking application based on location services ( http://www.fightersoft.ro/mts/index.htm ). Although many devices are supported, it seems that the HTC TyTN isn't. To that end I acquired one and now I am on the quest on getting the cellid in my application.
The approach that should of worked was the COM port. However, no matter what COM port I open, I get a create file error. I am guessing that maybe the internal modem uses a weird port name such as COM550 or other letters instead of COM. I know that another way of getting the cellid is by using ril.dll (or even getting the handle to the gsm modem com port). However, in WM5 this is not documented at all on msdn.com - BUT for WM6 there is documentation.
Firstly, I want to ask anyone if they have extra information about this issue and secondly if by upgrading to WM6, the using the COM port approach works from the box (usually COM9)?
hi, I tryed many programs, which have actually support for cellid information, but no one work on herm, no matter if it was WM5 or WM6. on all phones, I had before it worked correctly... phone alarm also have this functionality, but shown only something like 00-00...
This is so frustrating. Every mobile device with GSM capabilities has a GSM modem insinde. That modem SHOULD be accesible from the OS by the means of COM ports. My guess is that this port is hidden or under a different name than the rest of the HTC devices where it resides on COM9.
CommMgrPro shows Cell Id and Location Area Code correctly on TyNT
I started this thread in the hopes that people will contribute with ideas towards getting this task done. Can you reveal any technical information on how you get the cellid information?
stargatesg1 said:
I started this thread in the hopes that people will contribute with ideas towards getting this task done. Can you reveal any technical information on how you get the cellid information?
Click to expand...
Click to collapse
Sure. Ril.dll gives you access to this information and works properly in WM5-WM6. And technically is easier than manager serial drivers......
Documentation isnt included in WM5 so it isnt "official" but realky It is included. The only problem for "not official" issue is you wont get support from microsoft....
Ask me what you want...
stargatesg1, if you have searched the forum, you'd already have the answer. For instance, this thread:
http://forum.xda-developers.com/showthread.php?t=280476&highlight=cellid
has a reference to RIL API. And I do remember I told you this some months ago in your another thread...
Here it is:
http://forum.xda-developers.com/showpost.php?p=1040464&postcount=27
It was at October 26 last year!
Basically I only need the cellid and the lac. I found that msdn.com offers documentation for ril.dll for WM6. This also works for WM5?
From what I learned from msdn.com is that I should do a ril.initialize first and then I should get the cell info using a fuction that I can't remember right now. Is this approach correct?
Lurker0, I know about this approach (I have mentioned it in my first post) however, I need more information because c++ native is not my primary envoirement for developing. That's why I kept searching for a way of getting the lac-cid from com ports so that I could do it directly from managed code.
stargatesg1 said:
Basically I only need the cellid and the lac. I found that msdn.com offers documentation for ril.dll for WM6. This also works for WM5?
From what I learned from msdn.com is that I should do a ril.initialize first and then I should get the cell info using a fuction that I can't remember right now. Is this approach correct?
Click to expand...
Click to collapse
Exactly. I downloaded Platform builder to have includes and libraries.
1) Initialize Ril
2.a) Request Position explicitally using a RIL_gettowerinfo
2.b) When you initializa Ril you can pass a callback to be notified upon location changes....
Did you read the source code for RIL interface that I pointed you to?
danielherrero, I see. Regarding the callback function is not neccessary in my app - the user or the app set on auto mode searches for changes in location. Thank you very much for your info.
Lurker0, yes I did, but like I said, I am not a very experienced c++ programmer and I need some documentation to get me started. I am also very greatful for your help and I am sure that I will use information from rilclass.cpp.
Thank you both, I will post back with the results as soon as I will have any.
Good luck
Hi StargateSG,
Did you succeeded in getting MTS working on Tytn?
Rgds
I had to leave the country on a business trip. I'll get back in a few days and I will start working on the problem.
danielherrero said:
CommMgrPro shows Cell Id and Location Area Code correctly on TyNT
Click to expand...
Click to collapse
Does nothing on the Blue Angel.

Strange shortcut format?

Relatively new to this forum, but I've written a little app for WM6 and I'm trying to get "selected icon" functionality working.
I've been looking around and the general consensus on .lnk syntax is something like the following...
xx#<path>[options]
...where xx is the number of characters to consider as the command line after the pound sign.
If that's the case, what does this format for the calendar shortcut on my device mean?
21#:MSCALENDAR?:calendarapp
The 21 doesn't seem to refer to anything, as there are 24 characters after the pound. And what is ":MSCALENDAR?:" ? Is that some sort of environment variable? If so, where is it defined?
I did finally figure out that "calendarapp" refers to HKCR\calendarapp, where both the "DefaultIcon" and "SelectIcon" keys are defined, but there's no reference to the calendar app's path, so that must be defined by :MSCALENDAR?: somehow.
Thanks for any pointers!
wdbdesign said:
Relatively new to this forum, but I've written a little app for WM6 and I'm trying to get "selected icon" functionality working.
I've been looking around and the general consensus on .lnk syntax is something like the following...
xx#<path>[options]
...where xx is the number of characters to consider as the command line after the pound sign.
If that's the case, what does this format for the calendar shortcut on my device mean?
21#:MSCALENDAR?:calendarapp
The 21 doesn't seem to refer to anything, as there are 24 characters after the pound. And what is ":MSCALENDAR?:" ? Is that some sort of environment variable? If so, where is it defined?
I did finally figure out that "calendarapp" refers to HKCR\calendarapp, where both the "DefaultIcon" and "SelectIcon" keys are defined, but there's no reference to the calendar app's path, so that must be defined by :MSCALENDAR?: somehow.
Thanks for any pointers!
Click to expand...
Click to collapse
:MSCALENDAR:, as well as :MSCONTACTS: and many others are aliases!
SKTools can help manage those and even define new ones!
Ah...thanks for that! Armed with that information I was able to discover that those are stored in HKLM/Software/Microsoft/Shell/Rai. Exactly what I was looking for!

MEID and ESN Calculation CDMA

MEID and ESN Calculation (AKA cdma phones only)
(If you learned anything please thank below, it will warm my heart lol
Here is a guide on how your MEID and ESN are generated. This is for educational purposes only. I am creating it as away to say thanks to all the xda devs that helped me in updating my phone with the newest htc sense updates and putting up with my noobness.
Ok again I repeat this is for educational process, I will not teach you how to edit your esn or meid’s. (Again don't anyone to use it for wrong)
Ok your ESN generates from your MEID, so once you have your meid you can derive your ESN.
Example MEID I will be using is completely random and made up (A10000999AAAAA)
You want work with you Hex MEID aka the one that starts off with A1 xxxxxxxxxxx
(The x’s follows the hex format meaning 0-9 and A-F in the lettering the numbers should be 14 digits)
You will have to transcribe this number into Binary-
(Easiest way to do it - open up Microsoft calculator that is installed on every computer – click view and go to scientific)
Click HEX in the Calculater Type in the everything (A10000999AAAAA)
After everything is typed in click BIN (should yield a 56 bit string 1010 000 100 000 000 000 000 001 001 100 110 011 010 101 010 101 010 1010)
The first 8 bytes are reserved by the government or some committee (TIA) 1010 000 100 000 000 000 000 001 001 100 110 011 010 101 010 101 010 1010
The following 24 bytes are the manufacturer bit code 1010 000 100 000 000 000 000 001 001 100 110 011 010 101 010 101 010 1010
The Last 24 bytes are the serial number for your device 1010 000 100 000 000 000 000 001 001 100 110 011 010 101 010 101 010 1010
Now if your smart you can figure out what I just wrote
Now to figure out your MEID: In the back of your phone the 14 digit number is really suppose to be converted into an 18 digit number .
First take the first 8 digits of the MEID: A10000999AAAAA paste it into your calculator and make sure that it is set under HEX then click DEC (should yield 2701131929)
Next take the last 6 digits A10000999AAAAA, 9AAAAA and add an zero to the front of it and repeat – Type on 09AAAAA in calc Hex clicked then click dec (should yield 10136234)
Finally – combine them all 270113192910136234 and wham your MEID that your phone company uses to program you phone.
For the ESN you will have to use an Hash Calc –
(I will not go into detail on how to come up with your ESN, but I will get you the steps)
1. Take MEID A10000999AAAAA paste it into you SHA-1 Hash Calculator
2. Calculate the Hash
3. Take the last 6 numbers and place and 80 in front of them
4. And wham you ESN should be 0x80(what ever your last 6 digits are)
So in Conclusion, you MEID is the most important part of your phone and everything is derived from it. Again only for information use only. I can help if you need help flashing your phone, but I am really lazy…
PS Screw PIPA and other government agencies trying to limit our educational process, they want us to pay the rich that owns colleges and other learning sources on how to educate the human race, well thank xda and internet for educating me on phone services for free.
Please not that AA and HA keys are needed too, But I don't know how to companies designs these keys. The only thing that I know the AA and HA keys are defined from algo on some number system in the phone.
Meaning that it might be formed by the MEID... (<-- All my theory)
I want the reserve another spot too
great article ty
i wanna ask you guyz, i only get BSN not ESN.
is it same BSN and ESN??
if those are direfent can BSN convert to MEID or to ESN??
Can an MEID be generated? Like can I just make one up and it be a valid meid for activation on BYOD companies?
damastah said:
Can an MEID be generated? Like can I just make one up and it be a valid meid for activation on BYOD companies?
Click to expand...
Click to collapse
It's tied into the system of the phone like the ESN. ESNs are just older versions of MEIDs. Changing them is illegal.
MrObvious said:
It's tied into the system of the phone like the ESN. ESNs are just older versions of MEIDs. Changing them is illegal.
Click to expand...
Click to collapse
I was asking if they can be generated or are all MEIDs valid. That's all I had a question about. Know anything about that?
damastah said:
I was asking if they can be generated or are all MEIDs valid. That's all I had a question about. Know anything about that?
Click to expand...
Click to collapse
Like if you have an ESN you want to know if it's possible to calculate the MEID from it? I have no idea on that but I'd imagine it's similar to above. But if you're asking if you can just simply create a MEID out of thin air, no. MEIDs are serial numbers mandated by the government to not be changed per law (same with ESNs) and are tied to the phone's motherboard/ROM.
I hope this helps some.
MrObvious said:
Like if you have an ESN you want to know if it's possible to calculate the MEID from it? I have no idea on that but I'd imagine it's similar to above. But if you're asking if you can just simply create a MEID out of thin air, no. MEIDs are serial numbers mandated by the government to not be changed per law (same with ESNs) and are tied to the phone's motherboard/ROM.
I hope this helps some.
Click to expand...
Click to collapse
Yep, good explanation here. Note that you cannot calculate a MEID from just the ESN. MEIDs were introduced years ago because they realized the ESN address space would run out, kinda like IPv4 ran out, and now we have IPv6, blah blah. Think of the MEID address space as a "superset" of ESN's.
Also, MEID pools are assigned to device manufacturers. So an HTC MEID will not collide with the Samsung range, will not collide with LG, fruity phone, etc, etc, etc.
Oh one last thing: The MEID is defintely NOT tied to the ROM of a device - No MEID change from flashing a ROM !! :angel:
ESN from MEID
Old thread, but hoping someone can still help. My phone's ESN is zeroed out, and I don't know what it is. The MEID is fine though. I want to repair it to the factory ESN. How do I do this with a Sprint LG G2?

Categories

Resources