您的位置:首页 > 其它

关于接入点,cmwap,代理设置,WIFI

2011-09-22 10:32 281 查看
include commdb.h

添加commdb.lib到mmp文件library列表

1.枚举所有接入点,包括grps,蓝牙,WIFI

参考代码如下:

...

CCommsDatabase* db;

CCommsDbTableView* view;

TBuf<KCommsDbSvrMaxColumnNameLength> iapName;

TUint32 iapId;

TInt result;

//open database

db = CCommsDatabase::NewL( EDatabaseTypeIAP );

CleanupStack::PushL(db);

view = db->OpenTableLC(TPtrC(IAP)); //IAP is the table name

result = view->GotoFirstRecord();

TInt nCount = 0;

while((result == KErrNone) &&(nCount<30))

{

view->ReadTextL(TPtrC( COMMDB_NAME),iapName );

view->ReadUintL(TPtrC( COMMDB_ID),iapId );

AddItem( iapName );

nCount++;

result = view->GotoNextRecord();

}

CleanupStack::PopAndDestroy(2);

...

2.用户选择接入点后查询连接信息,包括区分grps和wifi,代理信息

参考代码:

...

m_bIsGRPS = ETrue;

proxy.Zero();

port = 0;

TInt result = KErrNone;

TBool bok = EFalse;

//1.Is GRPS ?

CCommsDatabase* db = CCommsDatabase::NewL( EDatabaseTypeIAP );

TUint32 id = 0;

TBuf<KCommsDbSvrMaxColumnNameLength> iapName;

TUint32 iapService;

TBuf<KCommsDbSvrMaxColumnNameLength> serviceType;

CCommsDbTableView* view = db->OpenTableLC(TPtrC(IAP)); //IAP is the table name

result = view->GotoFirstRecord();

while ( result == KErrNone )

{

view->ReadUintL(TPtrC(COMMDB_ID), id);

view->ReadTextL(TPtrC(COMMDB_NAME), iapName);

view->ReadUintL(TPtrC(IAP_SERVICE), iapService);

view->ReadTextL(TPtrC(IAP_SERVICE_TYPE), serviceType);

if ( iap == id )

{

if ( 0 == serviceType.Compare(TPtrC(OUTGOING_GPRS)) )

{

m_bIsGRPS = ETrue;

}

else

{

m_bIsGRPS = EFalse;

}

bok = ETrue;

break;

}

result = view->GotoNextRecord();

}

CleanupStack::PopAndDestroy();

if (!bok)

{

return KErrNotFound;

}

//2.Get Proxy

CCommsDatabase* commsDb = CCommsDatabase::NewL(EDatabaseTypeIAP);

CCommsDbTableView* commsView = commsDb->OpenViewOnProxyRecordLC( iapService, serviceType );

result = commsView->GotoFirstRecord();

if ( KErrNone != result )

{

CleanupStack::PopAndDestroy();

return KErrNotFound;

}

TBool proxyEnabled( EFalse );

commsView->ReadBoolL(TPtrC(PROXY_USE_PROXY_SERVER), proxyEnabled);

if ( !proxyEnabled )

{

CleanupStack::PopAndDestroy();

return KErrNotFound;

}

proxy.Copy( *commsView->ReadLongTextLC(TPtrC(PROXY_SERVER_NAME)));

commsView->ReadUintL(TPtrC(PROXY_PORT_NUMBER), port );

CleanupStack::PopAndDestroy(2);

...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: