Метод ISCardISO7816::UpdateRecord
[Метод UpdateRecord доступен для использования в операционных системах, указанных в разделе Требования. Он недоступен для использования в Windows Server 2003 с пакетом обновления 1 (SP1) и более поздних версиях, Windows Vista, Windows Server 2008 и последующих версиях операционной системы. Модули смарт-карт предоставляют аналогичные функции.]
Метод UpdateRecord создает команду APDU , которая обновляет определенную запись с использованием битов, указанных в команде APDU.
Примечание
При использовании текущей адресации записей команда задает указатель на успешно обновленную запись.
Синтаксис
HRESULT UpdateRecord(
[in] BYTE byRecordId,
[in] BYTE byRefCtrl,
[in] LPBYTEBUFFER pData,
[in, out] LPSCARDCMD *ppCmd
);
Параметры
-
byRecordId [in]
-
Значение P1:
P1 = 00 обозначает текущую запись
P1 != '00' — это номер указанной записи.
-
byRefCtrl [in]
-
Кодирование ссылочного элемента управления P2:
Значение Значение - Текущий EF
Битовое положение: 00000---
В настоящее время выбран ef.- Короткий идентификатор EF
Битовое положение: xxxxx---
Короткий идентификатор EF.- Первая запись
Битовое положение: -----000 - Последняя запись
Битовое положение: -----001 - Следующая запись
Битовое положение: -----010 - Предыдущая запись
Битовое положение: -----011 - Запись # в P1
Битовое положение: -----100 -
pData [in]
-
Указатель на обновляемую запись.
-
ppCmd [in, out]
-
На входных данных — указатель на объект интерфейса ISCardCmd или NULL.
При возврате он заполняется командой APDU, созданной этой операцией. Если параметру ppCmd присвоено значение NULL, то объект смарт-картаISCardCmd создается и возвращается с помощью указателя ppCmd.
Возвращаемое значение
Метод возвращает одно из следующих возможных значений.
Код возврата | Описание |
---|---|
|
Operation completed successfully (Операция выполнена успешно). |
|
Недопустимый параметр. |
|
Был передан плохой указатель. |
|
Недостаточно памяти. |
Комментарии
Инкапсулированная команда может выполняться только в том случае, если состояние безопасности смарт-карта соответствует атрибутам безопасности обрабатываемого элементарной системы.
Если команда содержит допустимый короткий элементарный идентификатор, она задает файл как текущий элементарный файл. Если во время выполнения этой команды выбран другой элементарный файл, эта команда может быть обработана без идентификации текущего выбранного файла.
Если созданная команда применяется к элементарному файлу с линейной фиксированной или циклической структурой, она прервется, если длина записи отличается от длины существующей записи.
Если команда применяется к элементарному файлу с линейной переменной, она может выполняться, если длина записи отличается от длины существующей записи.
Параметр "previous" команды (P2=xxxxx011), примененный к циклическому файлу, имеет то же поведение, что и команда, созданная AppendRecord.
Элементарные файлы без структуры записи не могут быть прочитаны. Созданная команда прерывается при применении к простейшим файлам без структуры записи.
Список всех методов, предоставляемых этим интерфейсом, см. в разделе ISCardISO7816.
В дополнение к приведенным выше кодам com-ошибок этот интерфейс может возвращать код ошибки смарт-карта, если для выполнения запроса была вызвана функция смарт-карта. Дополнительные сведения см. в разделе Возвращаемые значения смарт-карты.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows XP [только классические приложения] |
Минимальная версия сервера |
Windows Server 2003 [только классические приложения] |
Окончание поддержки клиентов |
Windows XP |
Прекращение поддержки сервера |
Windows Server 2003 |
Заголовок |
|
Библиотека типов |
|
DLL |
|
IID |
IID_ISCardISO7816 определяется как 53B6AA68-3F56-11D0-916B-00AA00C18068 |
См. также раздел