MoDaCo is undergoing planned maintenance. Site functionality may be reduced - follow @modaco or @paulobrien on Twitter for updates.

  • Announcements

    • Reminder - MoDaCo position on illegal content

      ILLEGAL CONTENT I'd like to just reaffirm MoDaCo's position regarding piracy and illegal content in the light of some recent questions / postings. Posts will be censored by myself or my moderation team if the contain or link to: Illegal / pirated / cracked software or sites that host such software
      Nintendo emulators / ROMs or sites hosting them (in light of Nintendo's legal stance)


      CUSTOM ROMS

      You may discuss and post links to custom device ROMs on MoDaCo, provided the following rules are adhered to: ROMs must not be hosted directly in topic via the MoDaCo attachment system
      ROMs must not contain any illegal 3rd party software (this includes trial versions included without permission)
      ROMs must give full credit to the original author
      This decision has been taken in light of the huge amount of interest in this area of device customisation within the community, and member feedback! Please note that custom ROM discussion should be kept in specific device sub-areas, (e.g. Kaiser.MoDaCo.com for Kaiser based devices). ISSUES If you have any issues with this policy, please contact me directly via PM. P
    • Support MoDaCo by signing up to a MoDaCo Silver or Gold membership

      To sign up to an annual MoDaCo Silver subscription which will eliminate all ads from the site (as well as giving you access to the MoDaCo Online Kitchens for Android) for only £9.99 using PayPal, Credit or Debit Card, ensure you are logged in to the site, and then click the link below, which will take you directly to the subscription store! You can also sign up to an annual MoDaCo Gold subscription for £29.99, which adds the benefits listed below! PURCHASE A MODACO SUBSCRIPTION - FREE Titanium Backup Mobile for Android worth $5.99! - FREE 1 year PrivateInternetAccess.com worth $39.95! - FREE 1 year LastPass Premium worth $12! - FREE CalcConvert for Pocket PC from Binaryfish worth $17.95! - FREE Calendar Bar for Pocket PC from OmegaOne worth $9.99! - FREE CamerAware for Pocket PC and Smartphone from MoDaCo worth £19.99 / $30! - FREE Chronos for Pocket PC from ActiveKitten worth $14.95! - FREE CodeWallet Pro for Smartphone and Pocket PC from DeveloperOne worth up to $24.95! - FREE Concentrix for Pocket PC from eSoft Interactive worth $9.95! - FREE FlexMail for Pocket PC and Smartphone from WebIS worth up to $59.90! - FREE FTouchSL for Pocket PC from Vekoff s.r.o. worth 10 euro / $12.50! - FREE Jewel Challenge for Pocket PC from eSoft Interactive worth $9.95! - FREE John Cody's Alerts Pro for Smartphone from Omnisoft worth $14.95! - FREE LingvoSoft Talking Dictionary 2008 English <-> Dutch for Pocket PC from Lingvosoft worth $49.95! - FREE LingvoSoft Talking Dictionary 2008 English <-> French for Pocket PC from Lingvosoft worth $49.95! - FREE LingvoSoft Talking Dictionary 2008 English <-> German for Pocket PC from Lingvosoft worth $49.95! - FREE LingvoSoft Talking Dictionary 2008 English <-> Italian for Pocket PC from Lingvosoft worth $49.95! - FREE LingvoSoft Talking Dictionary 2008 English <-> Spanish for Pocket PC from Lingvosoft worth $49.95! - FREE LingvoSoft Dictionary English <-> Dutch for Smartphone from Lingvosoft worth $49.95! - FREE LingvoSoft Dictionary English <-> French for Smartphone from Lingvosoft worth $49.95! - FREE LingvoSoft Dictionary English <-> German for Smartphone from Lingvosoft worth $49.95! - FREE LingvoSoft Dictionary English <-> Russian for Smartphone from Lingvosoft worth $49.95! - FREE LingvoSoft Dictionary English <-> Turkish for Smartphone from Lingvosoft worth $49.95! - FREE Note2Self for Pocket PC and Smartphone from WebIS worth up to $19.90! - FREE Opera 8.60 for Pocket PC and Smartphone from Opera Software worth up to $48! - FREE Pocket Informant for Pocket PC and Smartphone from WebIS worth up to $59.90! - FREE Pocket Launcher for Pocket PC and Smartphone from Conduits worth $9.95! - FREE PTab for Pocket PC and Smartphone from z4soft worth up to $60! - FREE Resco Explorer for Pocket PC and Smartphone from Resco worth up to $49.90! - FREE Safemode for Pocket PC from monocube worth $12.95 - FREE SplashPhoto for Pocket PC and Smartphone from SplashData worth up to $59.90! - FREE Sprite Backup for Pocket PC and Smartphone from Sprite Software worth $29.95! - FREE Teksoft Glyphs UI for Pocket PC and Smartphone from Teksoft €9.95! - FREE Teksoft HeadsetRemote for Pocket PC and Smartphone from Teksoft €4.95! - FREE Traffic Jam for Pocket PC from eSoft Interactive worth $9.95! - FREE unlock (1 per year) from imei-check.co.uk - DISCOUNT of 10% at MoDaCo FairDeal - DISCOUNT of 10% at Semsons.com - FORUM - AD FREE SITE - FORUM - custom rank / title - FORUM - double competition entries - FORUM - double post attachment space - FORUM - no search flood control - FORUM - priority event registration - FORUM - triple PM space
    • Reminder: Selling items on the forum directly is not allowed

      Please note that selling items on the forum directly is not allowed by the forum rules. There is a forum for eBay auctions whereby you can list the items on eBay and link to them there. This is the ONLY forum for this type of activity. You may also advertise links to the eBay forum in your signature. Please note that selling directly in contravention of these rules will result in a warning / suspensions / ban.

SimGetRecordInfo

15 posts in this topic

Posted (edited) · Report post

Hi everyone,

I have two problems using the SIM Manager API :

1. I want to read any record on the SIM Card. I'm using eVC4 with Smartphone 2003 emulator. Here's my code :

HSIM hSim;

HRESULT resOfGetReadRecord;

LPSIMRECORDINFO lpSimRecordInfo;

DWORD dwAddress = 0x06F07;

resOfGetReadRecord = SimGetRecordInfo(hSim, dwAddress, lpSimRecordInfo);

I always get the error code 80070057 (Invalid parameter)

2. If I want to write something on the SIM Card (with simWriteRecord), where can I write? ie wich address to give to the function in order to write.

Any Help would be really appreciated. It's been 2 weeks I'm working on these two functions ... :D

Edited by othman20001
0

Share this post


Link to post
Share on other sites

Posted · Report post

Wheres the rest of your code?

You need to:

1) call simInitialize()

2) call simGetRecordInfo()

3) call simReadRecord()

4) call simDeinitialize()

8)

0

Share this post


Link to post
Share on other sites

Posted · Report post

Sorry the code wasn't complete. I call simInitialize before wich returns S_OK, the problem appears for simGetRecordInfo and simReadRecord wich returns 80070057.

0

Share this post


Link to post
Share on other sites

Posted · Report post

hi guys,

I sovled the problem, I had to use a privileged certificate as explained in http://msdn.microsoft.com/mobility/default...ne_security.asp , because sim manager functions are privileged functions.  :D

Cheers

<{POST_SNAPBACK}>

i got the same error 0x80070057

I tried this

A Practical Guide to the Smartphone Application Security and Code Signing Model for Developers

but still not solved it

0

Share this post


Link to post
Share on other sites

Posted · Report post

In fact, this error is due to an invalid parameter in your function. Try changing the type of the record you access (TRANSPARENT,LINEAR, CYCLIC ...) or send us the piece of code you are using

0

Share this post


Link to post
Share on other sites

Posted · Report post

I am using

SimReadRecord(hSim, 0x2FE2, SIM_RECORDTYPE_TRANSPARENT, 0, ICCID, 10, &sizeRead)
and want to get the iccid. I tried with your code
SimGetRecordInfo(hSim, dwAddress, lpSimRecordInfo);

not work neither

0

Share this post


Link to post
Share on other sites

Posted · Report post

What about this code :

SIMRECORDINFO simRecordInfo;

	simRecordInfo.dwRecordType= SIM_RECORDTYPE_TRANSPARENT; // Try different types here

	memset(&simRecordInfo,0,sizeof(simRecordInfo));

	simRecordInfo.cbSize = sizeof(simRecordInfo);

	res = SimGetRecordInfo(hSim, 0x2FE2, &simRecordInfo);
If not working try using this :
HRESULT res;

	BYTE bufferOfRead;

	DWORD sizeOfRead;

	DWORD bufferSize = 50;

	memset(&bufferOfRead,0,sizeof(bufferOfRead));

	res = SimReadRecord(hSim, 0x2FE2,SIM_RECORDTYPE_TRANSPARENT, 0, &bufferOfRead,bufferSize,&sizeOfRead);

Basically the error n° 57 is an invalid parameter, if the adress is wrong you would get 88000341, and if it's a signing problem you would have 80004005. Also, are u running your code on a device or emulator. If it is the emulator, some adresses are not working, on the device your sim must be unlocked, but I think you know that :D

0

Share this post


Link to post
Share on other sites

Posted · Report post

thanks othman20001,

for the addres 0x2FE2 it is working with my codes. only the value, which is become, is not right.

When i am trying get other values, like 0x6F07, then the error comes.

I am using Device for debugging.

what do you mind SIM-unluck? I am still a newbie in this world.

0

Share this post


Link to post
Share on other sites

Posted · Report post

When accessing 0x6F07 did you try all the record types ?

SIM unlock means that the access to SIM Card is locked by the operator to avoid malicious codes and other stuffs. There is a lot of topics on MoCaDo if you want to know how to unlock your sim.

0

Share this post


Link to post
Share on other sites

Posted · Report post

Thank you othman20001.

with

BYTE bufferOfRead;

	DWORD sizeOfRead;

	DWORD bufferSize = 50;

	memset(g_szICCID,0,sizeof(bufferOfRead));

	res = SimReadRecord(hSim, add,SIM_RECORDTYPE_TRANSPARENT, 0, g_szICCID,bufferSize,&sizeOfRead);

tested with unsigned short add = 0x6F07, 6f05, 6f20, 6f74

looks like don't work with 6D40 to get MSISDN.

But, can you get the correct IMSI with it? by here i got a value ,it is not my correct IMSI.

I will take a look at the SIM unlock in this forum.

0

Share this post


Link to post
Share on other sites

Posted · Report post

Now i see how to read these values.

It is in hex-value to read. 4bit -> one number,

THanks again

0

Share this post


Link to post
Share on other sites

Posted · Report post

I have another question,

what 's the meaning of Error 80070057 ?

0

Share this post


Link to post
Share on other sites

Posted · Report post

I have another question,

what 's the meaning of Error 80070057  ?

<{POST_SNAPBACK}>

It means Invalid parameter in your function.

0

Share this post


Link to post
Share on other sites

Posted (edited) · Report post

Hi,

I am trying to get the IMSI of the card in the phone, but get 80004004 error (E_ABORT). Any idea why that could be? The device is a WM5 SmartPhone using .net cf 2.0 sp1

UPDATE: created the 0000101b key in the Policies reg key and now I get past the SimGetRecordInfo, but get a 80070056 when doing SimReadRecord... any ideas?

Thanks,

András

Edited by mcfly9
0

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

MoDaCo is part of the MoDaCo.network, © Paul O'Brien 2002-2015. MoDaCo uses IntelliTxt technology.