共用方式為


ISCardISO7816::ReadBinary 方法

[ ReadBinary 方法可用於需求一節中指定的作業系統。 它不適用於 Windows Server 2003 Service Pack 1 (SP1) 及更新版本、Windows Vista、Windows Server 2008 和後續版本的作業系統。 智慧卡模組提供類似的功能。]

ReadBinary方法會建構應用程式通訊協定資料單位, (APDU) 命令,該命令會取得回應訊息,以提供透明結構化基礎檔案內容的一部分。

語法

HRESULT ReadBinary(
  [in]      BYTE       byP1,
  [in]      BYTE       byP2,
  [in]      LONG       lBytesToRead,
  [in, out] LPSCARDCMD *ppCmd
);

參數

byP1 [in]

P1-P2 欄位,位移至要從檔案開頭讀取的第一個位元組。 如果 P1 中的 b8=1,則 b7 和 p1 的 b6 會設定為零 (RFU 位) ,b5 到 b1 的 P1 是簡短的 EF 識別碼,而 P2 是從檔案開頭開始以資料單位讀取的第一個位元組位移。 如果 P1 中的 b8=0,則為 P1||P2 是要從檔案開頭的資料單位讀取之第一個位元組的位移。

byP2 [in]

P1-P2 欄位,位移至要從檔案開頭讀取的第一個位元組。 如果 P1 中的 b8=1,則 b7 和 p1 的 b6 會設定為零 (RFU 位) ,b5 到 b1 的 P1 是簡短的 EF 識別碼,而 P2 是從檔案開頭開始以資料單位讀取的第一個位元組位移。 如果 P1 中的 b8=0,則為 P1||P2 是要從檔案開頭的資料單位讀取之第一個位元組的位移。

lBytesToRead [in]

要從透明 EF 讀取的位元組數目。

如果 Le 欄位只包含零,則短長度限制為 256 或長度為 65536,則應該讀取檔案結尾之前的所有位元組。

ppCmd [in, out]

在輸入時, ISCardCmd 介面物件的指標或 Null

傳回時,它會填入此作業所建構的 APDU 命令。 如果ppCmd設定為Null,則會使用ppCmd指標在內部建立並傳回智慧卡ISCardCmd物件。

傳回值

方法會傳回下列其中一個可能的值。

傳回碼 描述
S_OK
作業順利完成。
E_INVALIDARG
無效的參數。
E_POINTER
傳入不正確的指標。
E_OUTOFMEMORY
記憶體不足。

 

備註

只有在 智慧卡 的安全性狀態滿足所處理基礎檔案的安全性屬性時,才能執行封裝的命令。

當命令包含有效的簡短基本識別碼時,會將檔案設定為目前的基本檔案。

無法清除沒有透明結構的基本檔案。 如果套用至基本檔案且沒有透明結構,則封裝的命令會中止。

如需此介面提供之所有方法的清單,請參閱 ISCardISO7816

除了上面所列的 COM 錯誤碼之外,如果呼叫智慧卡函式以完成要求,此介面可能會傳回智慧卡錯誤碼。 如需詳細資訊,請參閱 智慧卡傳回值

規格需求

需求
最低支援的用戶端
Windows XP [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2003 [僅限桌面應用程式]
用戶端支援結束
Windows XP
伺服器終止支援
Windows Server 2003
標頭
Scardssp.h
類型程式庫
Scardsrv.tlb
DLL
Scardssp.dll
IID
IID_ISCardISO7816定義為 53B6AA68-3F56-11D0-916B-00AA00C18068

另請參閱

EraseBinary

ISCardISO7816

UpdateBinary

WriteBinary