⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 etelbgsm.h,v

📁 symbian s60手机上的短信拦截源代码。
💻 H,V
📖 第 1 页 / 共 3 页
字号:
//	IMPORT_C TInt EnumerateEntries(TInt& aCount);	IMPORT_C TInt GetMaxNumEntries(TInt& aMaxNumber);	IMPORT_C TInt SetMaxNumEntries(TInt aMaxNumber);//// Reset all entries//	IMPORT_C void Reset();protected:	CGsmNetworkList(TInt aNoOfEntries);private:	void ConstructL();private:	IMPORT_C void GsmNetworkListSlot1();	IMPORT_C void GsmNetworkListSlot2();	CArrayFixFlat<RBasicGsmPhone::TNetworkInfo>* iList;	TInt iCurrentIndex;	TInt iLastAddedIndex;	TInt iNoOfEntries;	TInt iMaxNoOfEntries;	};////// Phone book////#define	SIM_FIX_DIALLING_PHONEBOOK		_L("SIMFixDialling")#define ME_PHONEBOOK					_L("ME")#define ME_AND_SIM_PHONEBOOK			_L("CombinedMEAndSIM")#define SIM_PHONEBOOK					_L("SIM")#define TA_PHONEBOOK					_L("TA")//#define LAST_DIALLED_PHONEBOOK			_L("DialledCalls")#define EMERGENCY_PHONEBOOK				_L("EmergencyNumber")#define MISSED_CALLS_PHONEBOOK			_L("MissedCalls")#define RECEIVED_CALLS_PHONEBOOK		_L("ReceivedCalls")class CGsmPhoneBookResults;class RGsmPhoneBook : public RTelSubSessionBase	{friend class CGsmPhoneBookResults;friend class CGsmPhoneBookSearch;public:	IMPORT_C RGsmPhoneBook();	IMPORT_C TInt Open(RPhone& aPhone, const TDesC& aType);	IMPORT_C void Close();//// Capability Information//	enum		{		KCapsWriteAccess=0x00000001,		KCapsRestrictedWriteAccess=0x00000002,		KCapsAddressChanged=0x00000004		};	struct TCaps		{		TUint iCaps;		};	IMPORT_C TInt GetCaps(TCaps& aCaps) const;//// Phone Book Entry Changed Notifications//	IMPORT_C void EntryChangedNotification(TRequestStatus& aStatus,TInt& aIndex); 	IMPORT_C void EntryChangedNotificationCancel() const;//// Phone book information//	IMPORT_C TInt GetInfo(RBasicGsmPhone::TPhoneBookInfo& aInfo) const;	IMPORT_C void GetInfo(TRequestStatus& aStatus, RBasicGsmPhone::TPhoneBookInfo& aInfo);	IMPORT_C void GetInfoCancel() const;//// Phone Book Browsing//	enum { KPhoneBookEntrySize=100 };		// Review this number	class TEntry		{	public:		void InternalizeL(RReadStream& aStream);		void ExternalizeL(RWriteStream& aStream) const;	public:		TGsmTelNumber iTelNumber;		TBuf<KPhoneBookEntrySize> iText;		TInt iIndex;		TName iPhoneBookName;		};	IMPORT_C TInt Read(TEntry& aEntry);	IMPORT_C void Read(TRequestStatus& aStatus, TEntry& aEntry);	IMPORT_C void ReadCancel() const;	IMPORT_C TInt ReadFirst(TEntry& aEntry);	IMPORT_C void ReadFirst(TRequestStatus& aStatus, TEntry& aEntry);	IMPORT_C void ReadFirstCancel() const;	IMPORT_C TInt ReadPrevious(TEntry& aEntry);	IMPORT_C void ReadPrevious(TRequestStatus& aStatus, TEntry& aEntry);	IMPORT_C void ReadPreviousCancel() const;	IMPORT_C TInt ReadNext(TEntry& aEntry);	IMPORT_C void ReadNext(TRequestStatus& aStatus, TEntry& aEntry);	IMPORT_C void ReadNextCancel() const;//// Phone Book Writing/Deleting//	IMPORT_C TInt Write(TEntry& aEntry) const;	IMPORT_C void Write(TRequestStatus& aStatus, TEntry& aEntry);	IMPORT_C void WriteCancel() const;	IMPORT_C TInt Delete(TInt aIndex) const;	IMPORT_C void Delete(TRequestStatus& aStatus, TInt aIndex);	IMPORT_C void DeleteCancel() const;//// Synchronous Phone Book Search//	typedef TBuf<KPhoneBookEntrySize> TSearchString;	IMPORT_C CGsmPhoneBookResults* SearchLC(const TSearchString& aSearch);//// Server TSY internal definitions//public:	struct TGsmPhoneBookWrite		{		TEntry iEntry;		TGsmPassword iPin2;		};		struct TGsmPhoneBookClientId		{		TInt iSessionHandle;		TInt iSubSessionHandle;		};	struct TGsmPhoneBookSearch		{		TSearchString iSearchString;		TInt iNumMatchingEntries;		};protected:	void PhBookGet(const TInt aIpc,TRequestStatus& aStatus,TDes8& aDes1,TDes8& aDes2) const;	void PhBookGet(const TInt aIpc,TRequestStatus& aStatus,TDes16& aDes1,TDes16& aDes2) const;	TInt PhBookCancel(const TInt aIpc,const TInt aIpcToCancel) const;private:	RGsmPhoneBook(const RGsmPhoneBook& aPhoneBook);	CBasicPtrHolder* iBasicPtrHolder;	TGsmPhoneBookWrite iWrite;	TInt iDelete;	TInt iReadIndex;protected:	IMPORT_C virtual void ConstructL();	IMPORT_C virtual void Destruct();	};//// Storage of results of phone book search or read; used by sync and async searches//class CGsmPhoneBookResults : public CBase	{public:	IMPORT_C static CGsmPhoneBookResults* NewL(TInt aNoOfEntries);	IMPORT_C ~CGsmPhoneBookResults();//// Streaming - for use to pass array over IPC//	void InternalizeL(RReadStream& aStream);	void ExternalizeL(RWriteStream& aStream) const;	IMPORT_C CBufFlat* StoreLC();	IMPORT_C void StoreL(TDes8& aDes);	IMPORT_C void RestoreL(const TDesC8& aBuf);	IMPORT_C void AddEmptyEntriesL();//// Panic constant for browsing list//	enum 		{ KPanicInvalidResultsIndex };//// Accessing results// 	IMPORT_C TInt GetNextEntry(RGsmPhoneBook::TEntry& aEntry);	IMPORT_C TInt GetPreviousEntry(RGsmPhoneBook::TEntry& aEntry);	IMPORT_C TInt GetEntry(TInt aPosition,RGsmPhoneBook::TEntry& aEntry);//// Adding an entry //	IMPORT_C TInt AddEntry(const RGsmPhoneBook::TEntry& aEntry);//// Counting entries//	IMPORT_C TInt EnumerateEntries(TInt& aCount);//// Reset all entries//	IMPORT_C void Reset();protected:	CGsmPhoneBookResults(TInt aNoOfEntries);private:	void ConstructL();private:	CArrayFixFlat<RGsmPhoneBook::TEntry>* iResults;	TInt iCurrentIndex;	TInt iLastAddedIndex;	TInt iNoOfEntries;	};//// Async phone book search//class CGsmPhoneBookSearch : public CActive	{public:	IMPORT_C static CGsmPhoneBookSearch* NewL(RGsmPhoneBook& aPhoneBook);	IMPORT_C ~CGsmPhoneBookSearch();//// Start the search//	IMPORT_C void Start(const RGsmPhoneBook::TSearchString& aSearch,TRequestStatus& aStatus);//// Get the results of the search//	IMPORT_C CGsmPhoneBookResults* SearchResults() const;protected:	IMPORT_C CGsmPhoneBookSearch(RGsmPhoneBook& aPhoneBook);	IMPORT_C void ConstructL();	IMPORT_C virtual void StartPhase2L();//// CActive pure virtual functions// 	IMPORT_C virtual void DoCancel();private:	virtual void RunL();protected:	enum {		EIdle,		ESearchPhase1,		ESearchPhase2		} iState;	RGsmPhoneBook& iPhoneBook;	TRequestStatus* iUserStatus;	RGsmPhoneBook::TGsmPhoneBookSearch iSearch;	RGsmPhoneBook::TGsmPhoneBookClientId iId;	TPtr8 iSearchPtr;	TPtr8 iIdPtr;	CGsmPhoneBookResults* iResults;	CBufFlat* iResultsBuf;	TPtr8 iResultsPtr;	};////// Sms Message Abstraction////#define SMS_BROADCAST_MESSAGE_STORE_NAME	_L("BroadcastMessageStorage")#define SMS_ME_STORE_NAME					_L("MEStorage")#define SMS_ME_AND_SIM_STORE_NAME			_L("MEAndSIMStorage")#define SMS_SIM_STORE_NAME					_L("SIMStorage")#define SMS_TA_STORE_NAME					_L("TAStorage")class TSms	{public://// Messaging Format//	enum TFormat		{		EFormatPdu		// this may be extended in the future		};//// Messaging Enumerations//	enum { KPduSize=177			};		// (160*7)/8 + 25 (header) + 12 (SC address)	enum { KTextSize=160		};		// //// Message Structures//	typedef TBuf8<KPduSize> TPdu;//// Functionality//	IMPORT_C TSms();	IMPORT_C TSms(const TFormat aFormat);	IMPORT_C TSms(const TPdu& aPdu);	IMPORT_C TFormat Format() const;	IMPORT_C void SetFormat(const TFormat aFormat);	IMPORT_C TBool UseDefaultSca() const;	IMPORT_C void SetUseDefaultSca(const TBool& aUseDefaultSca);//// For Pdu message only//	IMPORT_C const TPdu& PduL() const;	IMPORT_C void SetPduL(const TPdu& aPdu);private:	TFormat iFormat;	TBool iUseDefaultSca;	TPdu iBuf;	};//// RSmsStorage//class RSmsMessaging;class RSmsStorage : public RTelSubSessionBase	{public:	IMPORT_C RSmsStorage();	IMPORT_C TInt Open(RSmsMessaging& aMessaging,const TDesC& aStore);	IMPORT_C void Close();	struct TInfo		{		TUint iUsed;		TUint iTotal;		};	enum TStatus		{		EStatusUnread,		EStatusRead,		EStatusUnsent,		EStatusSent		};	struct TSmsMsgStoreEntry		{		TSms iMsg;		TStatus iStatus;		};	IMPORT_C TInt GetInfo(TInfo& aInfo) const;	IMPORT_C void GetInfo(TRequestStatus& aStatus, TInfo& aInfo);	IMPORT_C void GetInfoCancel() const;	IMPORT_C TInt ReadSms(const TInt aIndex, TSmsMsgStoreEntry& aMsgEntry) const;	IMPORT_C void ReadSms(TRequestStatus& aStatus, const TInt aIndex, TSmsMsgStoreEntry& aMsgEntry);	IMPORT_C void ReadSmsCancel() const;	IMPORT_C TInt Write(TInt& aIndex, const TSmsMsgStoreEntry& aMsg) const;	IMPORT_C void Write(TRequestStatus& aStatus, TInt& aIndex, const TSmsMsgStoreEntry& aMsg);	IMPORT_C void WriteCancel() const;	IMPORT_C TInt Delete(const TInt aIndex) const;	IMPORT_C void Delete(TRequestStatus& aStatus, const TInt aIndex);	IMPORT_C void DeleteCancel() const;	IMPORT_C void WriteNotification(TRequestStatus& aStatus, TInt& aIndex);	IMPORT_C void WriteNotificationCancel() const;private:	CBasicPtrHolder* iBasicPtrHolder;	TInt iReadIndexValue;	TInt iDeleteValue;protected:	IMPORT_C virtual void ConstructL();	IMPORT_C virtual void Destruct();	};//// RSmsMessaging//class RSmsMessaging : public RTelSubSessionBase	{public:	IMPORT_C RSmsMessaging();	IMPORT_C TInt Open(RPhone& aPhone);	IMPORT_C void Close();//// Capability Information//	enum		{		KCapsModeCommandPduSupported=0x00000001,		KCapsModeBlockPduSupported=0x00000002,		KCapsModeReadWithoutStorage=0x00000004,		KCapsModeReadWithStorage=0x00000008		};	enum		{		KCapsTypeRxSmsDeliver=0x00000001,		KCapsTypeTxSmsSubmit=0x00000002		};	struct TCaps		{		TUint iSmsMode;		TUint iSmsMsgTypes;		};	IMPORT_C TInt GetCaps(TCaps& aCaps) const;//// Messaging Mode//	enum TSmsMode		{		EModeCommandPdu,		EModeBlockPdu		};	enum TStorageMode		{		EReadWithoutStorage,		EReadWithStorage		};	struct TMode		{		TSmsMode iMessagingMode;		TStorageMode iStorageMode;		};	IMPORT_C TInt SetMode(const TMode& aMode) const;	IMPORT_C void SetMode(TRequestStatus& aStatus, const TMode& aMode) const;	IMPORT_C void SetModeCancel() const;	IMPORT_C TInt GetMode(TMode& aMode) const;	IMPORT_C TInt GetDefaultSCAddress(TGsmTelNumber& aSCAddress) const;	IMPORT_C void GetDefaultSCAddress(TRequestStatus& aStatus, TGsmTelNumber& aSCAddress) const;	IMPORT_C void GetDefaultSCAddressCancel() const;	IMPORT_C TInt SetDefaultSCAddress(const TGsmTelNumber& aSCAddress) const;	IMPORT_C void SetDefaultSCAddress(TRequestStatus& aStatus, const TGsmTelNumber& aSCAddress);	IMPORT_C void SetDefaultSCAddressCancel() const;//// Message Transmission//	IMPORT_C void SendMessage(TRequestStatus& aStatus, TUint& aMsgRef, TSms& aMsg);	IMPORT_C void SendMessageCancel() const;//// Message Reception//	struct TMsgLocation		{		TInt iIndex;		TName iStore;		};	IMPORT_C void ReadSmsMessage(TRequestStatus& aStatus, TMsgLocation& aMsgLocation, TSms& aMsg);	IMPORT_C void ReadSmsMessageCancel() const;	IMPORT_C void NotifySmsMessageArrived(TRequestStatus& aStatus) const;	IMPORT_C void NotifySmsMessageArrivedCancel() const;//// Message Storage//	struct TStoreInfo		{		TName iName;		TUint iTotal;		TUint iUsed;		TUint32 iFlags;		};	enum		{		KMessageStoreReadAndDeleted=0x00000001,		KMessageStoreWriteAndSend=0x00000002,		KMessageStoreBroadcast=0x00000004   		};	IMPORT_C TInt EnumerateMessageStores(TInt& aCount) const;	IMPORT_C TInt GetMessageStoreInfo(const TInt aIndex,TStoreInfo& aInfo) const;	IMPORT_C void GetMessageStoreInfo(TRequestStatus& aStatus,const TInt aIndex,TStoreInfo& aInfo) const;	IMPORT_C void GetMessageStoreInfoCancel() const;private:	CBasicPtrHolder* iBasicPtrHolder;protected:	IMPORT_C virtual void ConstructL();	IMPORT_C virtual void Destruct();	};#endif@1.1.1.1log@project kicks off@text@@

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -