Win32 API 日本語リファレンス
ホームNetworkManagement.MobileBroadband › IMbnSmsReadMsgTextCdma

IMbnSmsReadMsgTextCdma

COM
IIDdcbbbab6-2014-4bbb-aaee-338e368af6fa継承元IUnknown自前メソッド開始 vtbl3

公式ドキュメント

デバイスメモリから読み取った CDMA 形式の SMS メッセージを表すプロパティのコレクションです。

解説(Remarks)

このメッセージ形式は CDMA デバイスでのみ有効であり、GSM デバイスでは使用できません。

このインターフェイスは、IMbnSmsEvents インターフェイスの OnSmsReadComplete メソッドおよび OnSmsNewClass0Message メソッドによって提供されます。

メソッド 8

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT get_Index(DWORD* Index)

デバイスの SMS メモリ内におけるメッセージのインデックスです。

IndexDWORD*outメッセージストア内でのこのCDMA SMSのインデックス値を受け取る出力ポインタ。
vtbl 4 HRESULT get_Status(MBN_MSG_STATUS* Status)

メッセージの種類です。(IMbnSmsReadMsgTextCdma.get_Status)

StatusMBN_MSG_STATUS*outメッセージの状態(既読・未読等)を示す列挙値を受け取る出力ポインタ。
vtbl 5 HRESULT get_Address(LPWSTR* Address)

メッセージに関連付けられた携帯電話番号です。

AddressLPWSTR*out送信元または宛先のアドレス(電話番号)文字列を受け取る出力ポインタ。呼び出し側が解放する。

解説(Remarks)

受信メッセージの場合、これは送信者の番号です。送信済みメッセージまたは下書きメッセージの場合、これは受信者の番号です。

address は、次のいずれかの形式で表されます。

vtbl 6 HRESULT get_Timestamp(LPWSTR* Timestamp)

メッセージのタイムスタンプです。

TimestampLPWSTR*outメッセージのタイムスタンプ文字列を受け取る出力ポインタ。呼び出し側が解放する。

解説(Remarks)

タイムスタンプ文字列の形式は "YY/MM/DD,HH:mm:SS±ZZ" です。

次の表は、タイムスタンプ文字列の形式を定義しています。

フィールド 意味 範囲
YY 年の下 2 桁 2007 年なら 07 00 から 99
MM 月を 2 桁で表記 1 月なら 01 01 から 12
DD 日を 2 桁で表記 1 日なら 01 01 から 31
HH 時を 24 時間形式で表記 午後 1 時なら 13 00 から 23
mm 分を 2 桁で表記 1 分なら 1 00 から 59
SS 秒を 2 桁で表記 1 秒なら 01 00 から 59
ZZ GMT を基準とした時刻 1 時間進んでいる場合は +01 -12 から +13
vtbl 7 HRESULT get_EncodingID(MBN_SMS_CDMA_ENCODING* EncodingID)

メッセージで使用されているデータエンコーディングです。

EncodingIDMBN_SMS_CDMA_ENCODING*outCDMAメッセージのエンコード方式を示す列挙値を受け取る出力ポインタ。
vtbl 8 HRESULT get_LanguageID(MBN_SMS_CDMA_LANG* LanguageID)

メッセージで使用されている言語です。

LanguageIDMBN_SMS_CDMA_LANG*outCDMAメッセージの言語を示す列挙値を受け取る出力ポインタ。
vtbl 9 HRESULT get_SizeInCharacters(DWORD* SizeInCharacters)

メッセージのサイズ(文字数)です。

SizeInCharactersDWORD*outメッセージ本体の文字数を受け取る出力ポインタ。
vtbl 10 HRESULT get_Message(SAFEARRAY** Message)

メッセージの内容です。

MessageSAFEARRAY**outメッセージ本体のデータをSAFEARRAYで受け取る出力ポインタ。

解説(Remarks)

メッセージの最大サイズは、IMbnSmsConfigurationCdmaShortMsgSize プロパティで指定されます。また、そのサイズは MBN_CDMA_SHORT_MSG_SIZE_MAX(160)を超えることはできません。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IMbnSmsReadMsgTextCdma "{DCBBBAB6-2014-4BBB-AAEE-338E368AF6FA}"
#usecom global IMbnSmsReadMsgTextCdma IID_IMbnSmsReadMsgTextCdma "{}"
#comfunc global IMbnSmsReadMsgTextCdma_get_Index             3 var
#comfunc global IMbnSmsReadMsgTextCdma_get_Status            4 var
#comfunc global IMbnSmsReadMsgTextCdma_get_Address           5 var
#comfunc global IMbnSmsReadMsgTextCdma_get_Timestamp         6 var
#comfunc global IMbnSmsReadMsgTextCdma_get_EncodingID        7 var
#comfunc global IMbnSmsReadMsgTextCdma_get_LanguageID        8 var
#comfunc global IMbnSmsReadMsgTextCdma_get_SizeInCharacters  9 var
#comfunc global IMbnSmsReadMsgTextCdma_get_Message           10 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。