ISCardISO7816::GetData 方法
[ GetData 方法可用於需求一節中指定的作業系統。 它不適用於 Windows Server 2003 Service Pack 1 (SP1) 及更新版本、Windows Vista、Windows Server 2008 和後續版本的作業系統。 智慧卡模組提供類似的功能。]
GetData方法會建構應用程式通訊協定資料單位, (APDU) 命令,根據選取的檔案類型,擷取單一基本資料物件或一組資料物件 (包含在建構的資料物件) 。
語法
HRESULT GetData(
[in] BYTE byP1,
[in] BYTE byP2,
[in] LONG lBytesToGet,
[in, out] LPSCARDCMD *ppCmd
);
參數
-
byP1 [in]
-
參數。
值 意義 - 0000 - 003F
RFU - 0040 - 00FF
P2 中的 BER-TLV 標記 (1 個位元組) - 0100 - 01FF
應用程式資料 (專屬編碼) - 0200 - 02FF
P2 中的 SIMPLE-TLV 標記 - 0300 - 03FF
RFU - 0400 - 04FF
P1-P2 中的 BER-TLV 標記 (2 個位元組) -
byP2 [in]
-
參數。
值 意義 - 0000 - 003F
RFU - 0040 - 00FF
P2 中的 BER-TLV 標記 (1 個位元組) - 0100 - 01FF
應用程式資料 (專屬編碼) - 0200 - 02FF
P2 中的 SIMPLE-TLV 標記 - 0300 - 03FF
RFU - 0400 - 04FF
P1-P2 中的 BER-TLV 標記 (2 個位元組) -
lBytesToGet [in]
-
回應中預期的位元組數目。
-
ppCmd [in, out]
-
在輸入時, ISCardCmd 介面物件的指標或 Null。
傳回時,它會填入此作業所建構的 APDU 命令。 如果ppCmd設定為Null,則會使用ppCmd指標在內部建立並傳回智慧卡ISCardCmd物件。
傳回值
方法會傳回下列其中一個可能的值。
傳回碼 | 描述 |
---|---|
|
作業順利完成。 |
|
無效的參數。 |
|
傳入不正確的指標。 |
|
記憶體不足。 |
備註
只有在 智慧卡 的安全性狀態滿足所讀取基礎檔案的安全性屬性時,才能執行封裝的命令。 安全性條件取決於卡片的原則,而且可以透過 ExternalAuthenticate、 InternalAuthenticate、 ISCardAuth等操作。
若要選取檔案,請呼叫 SelectFile。
如需此介面提供之所有方法的清單,請參閱 ISCardISO7816。
除了上面所列的 COM 錯誤碼之外,如果呼叫智慧卡函式以完成要求,此介面可能會傳回智慧卡錯誤碼。 如需詳細資訊,請參閱 智慧卡傳回值。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows Server 2003 [僅限桌面應用程式] |
用戶端支援結束 |
Windows XP |
伺服器終止支援 |
Windows Server 2003 |
標頭 |
|
類型程式庫 |
|
DLL |
|
IID |
IID_ISCardISO7816定義為 53B6AA68-3F56-11D0-916B-00AA00C18068 |
另請參閱