Click here to get back home

Determining Carrier Programmatically

 HomeNewsGroups | Search | About
 microsoft.public.smartphone.developer    Post an article   get this group's latest topics as an RSS feed add this group's latest topics to your My MSN content add this group's latest topics to your My Yahoo content
Subject Author Date
Determining Carrier Programmatically Charlie 10-16-2006
Get Chitika Premium
Posted by Charlie on October 16, 2006, 4:47 pm
Please log in for more thread options
Is there any API I can use to reliably determine which carrier the
platform I'm running on is subscribed to? For instance, can I call any
API and find out that the user is a T-Mobile or Cingular customer?

And would that be a privledged API?

Or do I need to probe around and try to recognize unique info in the
firmware images? Registry?

Any help greatly appreciated.

Charlie

Posted by riki on October 17, 2006, 5:05 am
Please log in for more thread options
Charlie wrote:
> Is there any API I can use to reliably determine which carrier the
> platform I'm running on is subscribed to? For instance, can I call any
> API and find out that the user is a T-Mobile or Cingular customer?
use LINEGENERALINFO.dwSubscriberNumberSize which lineGetGeneralInfo()
will get for you. This will have the IMSI number, the first three digits
are a county code (MCC) and the next two (europe) or three (america)
digits in an operator number (MNC).

> And would that be a privledged API?
sadly, yes

> Or do I need to probe around and try to recognize unique info in the
> firmware images? Registry?
I personally don't know of anywhere - but worth a search

Riki

Posted by Charlie on October 17, 2006, 12:25 pm
Please log in for more thread options
That sounds wonderful, actually. Is this different on CDMA vs. GSM
devices? I just want a way to see which networks my users are on.


CLV


riki wrote:
> Charlie wrote:
>
>> Is there any API I can use to reliably determine which carrier the
>> platform I'm running on is subscribed to? For instance, can I call any
>> API and find out that the user is a T-Mobile or Cingular customer?
>
> use LINEGENERALINFO.dwSubscriberNumberSize which lineGetGeneralInfo()
> will get for you. This will have the IMSI number, the first three digits
> are a county code (MCC) and the next two (europe) or three (america)
> digits in an operator number (MNC).
>
>> And would that be a privledged API?
>
> sadly, yes
>
>> Or do I need to probe around and try to recognize unique info in the
>> firmware images? Registry?
>
> I personally don't know of anywhere - but worth a search
>
> Riki

Posted by JDeats on October 17, 2006, 12:13 pm
Please log in for more thread options
It depends on how you define "reliable", because you can't expect the
handsets to be bound to a carrier (i.e. not everyone has an "network
locked" phone). If you have controlled environment and know which
carriers and which devices you are going to be including in your check
you can selectively do this using a registry check at this location:

HKEY_LOCAL_MACHINE/SOFTWARE/[DEVICE VENDOR]/SIM/EFpnn/1/Full Network
Name

For example, HTC is the vendor of the T-Mobile SDA, MDA and the
Cingular 2125, 3125 and 8125 devices. So if I fetch the Data Value of
the this key:

HKEY_LOCAL_MACHINE/SOFTWARE/HTC/SIM/EFpnn/1/Full Network Name

On any of those devices I'll either get: Cingular or T-Mobile depending
on service provider.

So if you're purpose with this is to "lock" an application to only run
on a specific service provider you could do this, you could use this
method to accomplish that. Since you'll be accessing the registry, for
your application to run it will need to be digital signed before it can
run on any application locked handset, which is most handsets sold
today.




Charlie wrote:
> Is there any API I can use to reliably determine which carrier the
> platform I'm running on is subscribed to? For instance, can I call any
> API and find out that the user is a T-Mobile or Cingular customer?
>
> And would that be a privledged API?
>
> Or do I need to probe around and try to recognize unique info in the
> firmware images? Registry?
>
> Any help greatly appreciated.
>
> Charlie


Similar ThreadsPosted
Getting SmartPhone Wireless Carrier November 30, 2005, 8:53 am
CreateThread - determining available resources November 15, 2007, 1:10 pm
Determining if there is an active call in progress October 6, 2008, 12:15 pm
Programmatically set NumLock March 19, 2007, 5:47 pm
Is there a way to programmatically set the profile? February 1, 2008, 7:12 pm
How to start MS Activesync programmatically? November 22, 2005, 10:56 am
"Compose" email programmatically? February 6, 2006, 2:20 pm
Sending email programmatically May 11, 2006, 9:01 am
How to access the inbox programmatically? December 22, 2006, 9:27 am
Set input mode programmatically June 14, 2007, 6:03 pm

Our other projects:

Art Dolls, Fairies and Mermaids - Sunnyfaces.net

Roy's Linux, Programming and Search Engines messages

1-Script XML SitemapXML Sitemap