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

IMbnPin

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

メソッド 11

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

vtbl 3 HRESULT get_PinType(MBN_PIN_TYPE* PinType)
PinTypeMBN_PIN_TYPE*outこのPINの種別(PIN1・PUK・ネットワークロック等)を示すMBN_PIN_TYPE列挙値を受け取る出力ポインタ。
vtbl 4 HRESULT get_PinFormat(MBN_PIN_FORMAT* PinFormat)
PinFormatMBN_PIN_FORMAT*outPINの入力形式(数字のみ等)を示すMBN_PIN_FORMAT列挙値を受け取る出力ポインタ。
vtbl 5 HRESULT get_PinLengthMin(DWORD* PinLengthMin)
PinLengthMinDWORD*out許容されるPINの最小桁数を受け取る出力ポインタ。
vtbl 6 HRESULT get_PinLengthMax(DWORD* PinLengthMax)
PinLengthMaxDWORD*out許容されるPINの最大桁数を受け取る出力ポインタ。
vtbl 7 HRESULT get_PinMode(MBN_PIN_MODE* PinMode)
PinModeMBN_PIN_MODE*outPINの有効・無効状態を示すMBN_PIN_MODE列挙値を受け取る出力ポインタ。
vtbl 8 HRESULT Enable(LPWSTR pin, DWORD* requestID)
pinLPWSTRinPINロックを有効化するための現在のPIN文字列の入力。
requestIDDWORD*out非同期有効化要求を識別するIDを受け取る出力ポインタ。完了イベントで照合する。
vtbl 9 HRESULT Disable(LPWSTR pin, DWORD* requestID)
pinLPWSTRinPINロックを無効化するための現在のPIN文字列の入力。
requestIDDWORD*out非同期無効化要求を識別するIDを受け取る出力ポインタ。完了イベントで照合する。
vtbl 10 HRESULT Enter(LPWSTR pin, DWORD* requestID)
pinLPWSTRin認証のために入力するPIN文字列の入力。
requestIDDWORD*out非同期認証要求を識別するIDを受け取る出力ポインタ。完了イベントで照合する。
vtbl 11 HRESULT Change(LPWSTR pin, LPWSTR newPin, DWORD* requestID)
pinLPWSTRin変更前の現在のPIN文字列の入力。
newPinLPWSTRin新しく設定するPIN文字列の入力。
requestIDDWORD*out非同期変更要求を識別するIDを受け取る出力ポインタ。完了イベントで照合する。
vtbl 12 HRESULT Unblock(LPWSTR puk, LPWSTR newPin, DWORD* requestID)
pukLPWSTRinブロック解除に使用するPUK(個人ロック解除キー)文字列の入力。
newPinLPWSTRinブロック解除後に設定する新しいPIN文字列の入力。
requestIDDWORD*out非同期解除要求を識別するIDを受け取る出力ポインタ。完了イベントで照合する。
vtbl 13 HRESULT GetPinManager(IMbnPinManager** pinManager)
pinManagerIMbnPinManager**outこのPINを管理する親のIMbnPinManagerを受け取る出力ポインタ。

HSP用 COM定義

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

出力引数:
#define global IID_IMbnPin "{DCBBBAB6-2007-4BBB-AAEE-338E368AF6FA}"
#usecom global IMbnPin IID_IMbnPin "{}"
#comfunc global IMbnPin_get_PinType       3 var
#comfunc global IMbnPin_get_PinFormat     4 var
#comfunc global IMbnPin_get_PinLengthMin  5 var
#comfunc global IMbnPin_get_PinLengthMax  6 var
#comfunc global IMbnPin_get_PinMode       7 var
#comfunc global IMbnPin_Enable            8 wstr,var
#comfunc global IMbnPin_Disable           9 wstr,var
#comfunc global IMbnPin_Enter             10 wstr,var
#comfunc global IMbnPin_Change            11 wstr,wstr,var
#comfunc global IMbnPin_Unblock           12 wstr,wstr,var
#comfunc global IMbnPin_GetPinManager     13 sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。