ОС: Windows
API: LINK от версии 1.0.1.1
Описание:
Я разрабатываю приложение на C++, которое взаимодействует со устройством чтения смарт-карт с использованием библиотеки CT-API. Однако я столкнулся с проблемой, из-за которой функция CT_init завершается с ошибкой с кодом -8.
Вот соответствующий фрагмент кода:
#include "framework.h"
#include "test.h"
#include
#include
int main(int argc, char* argv[])
{
char ret;
unsigned short ctn=0;
unsigned short pn = 0; // Initialize 'pn' with a default value of 0
unsigned char sad;
unsigned char dad;
// REQUEST ICC
unsigned char command[] = { 0x20, 0x12, 0x01, 0x00, 0x00 };
unsigned short lenc = sizeof(command);
unsigned char response[300];
unsigned short lenr = sizeof(response);
unsigned short i;
// Hardcoded values for card terminal and ICC interfaces
const char* ctacs_content =
"[CardTerminal]\n"
"CTN1=ACS ACR122\n\n"
"[ACS ACR122]\n"
"ICC1=ACS ACR122 0\n"
"ICC2=Broadcom Corp Contacted SmartCard 0\n";
// Initialize card terminal
ret = CT_init(ctn, pn);
if (ret != OK)
{
printf("Error: CT_init failed with error %d\n", ret);
return 1;
}
sad = 2; // Source = Host
dad = 1; // Destination = Card Terminal
// Send command
ret = CT_data(ctn, &dad, &sad, lenc, command, &lenr, response);
if (ret != OK)
printf("Error: CT_data failed with error %d\n", ret);
else
{
// Display response
printf("Response: ");
for (i = 0; i < lenr; i++)
printf("%02X ", response);
printf("\n");
}
// Close card terminal
ret = CT_close(ctn);
if (ret != OK)
printf("Error: CT_close failed with error %d\n", ret);
return 0;
}
Я получаю сообщение об ошибке:
Error: CT_init failed with error -8
Кроме того, вот содержимое моего файла ctacs.ini, который я жестко запрограммировал в своем коде, как вы можете видеть выше:
[CardTerminal]
CTN1=ACS ACR122
[ACS ACR122]
ICC1=ACS ACR122 0
ICC2=Broadcom Corp Contacted SmartCard 0
```
Я проверил документацию по библиотеке CT-API, но не смог найти никакой конкретной информации о том, что означает код ошибки -8. Я также проверил правильность параметров, переданных в CT_init.
Может кто-нибудь помочь мне понять, что означает этот код ошибки и как его устранить? Существуют ли какие-либо распространенные причины, по которым CT_init может завершиться с ошибкой -8?
Будем очень признательны за любую помощь или информацию. Спасибо!
Диспетчер устройств обнаружил устройство чтения карт
[img]https://i. sstatic.net/LJAwlgdr.jpg[/img]
Я написал скрипт Python, чтобы просмотреть детали устройства чтения NFC:
import smartcard.System
def list_readers():
readers = smartcard.System.readers()
if len(readers) == 0:
print("No smart card readers found")
else:
for reader in readers:
print("Reader:", reader)
if __name__ == "__main__":
list_readers()
и вот результат
C:\Users\DELL\source\pytrhon>python test_reader.py Reader : ACS ACR122
0 Читатель: Broadcom Corp связалась со смарт-картой 0
Как вы думаете, мои ini-файлы верны?
// Hardcoded values for card terminal and ICC interfaces
const char* ctacs_content =
"[CardTerminal]\n"
"CTN1=ACS ACR122\n\n"
"[ACS ACR122]\n"
"ICC1=ACS ACR122 0\n"
"ICC2=Broadcom Corp Contacted SmartCard 0\n";
Подробнее здесь: https://stackoverflow.com/questions/785 ... -reader-co
Сбой CT_init с ошибкой -8 при использовании библиотеки CT-API для связи со устройством чтения смарт-карт ACR122U ⇐ C++
Программы на C++. Форум разработчиков
1716782565
Anonymous
ОС: Windows
API: LINK от версии 1.0.1.1
Описание:
Я разрабатываю приложение на C++, которое взаимодействует со устройством чтения смарт-карт с использованием библиотеки CT-API. Однако я столкнулся с проблемой, из-за которой функция CT_init завершается с ошибкой с кодом -8.
Вот соответствующий фрагмент кода:
#include "framework.h"
#include "test.h"
#include
#include
int main(int argc, char* argv[])
{
char ret;
unsigned short ctn=0;
unsigned short pn = 0; // Initialize 'pn' with a default value of 0
unsigned char sad;
unsigned char dad;
// REQUEST ICC
unsigned char command[] = { 0x20, 0x12, 0x01, 0x00, 0x00 };
unsigned short lenc = sizeof(command);
unsigned char response[300];
unsigned short lenr = sizeof(response);
unsigned short i;
// Hardcoded values for card terminal and ICC interfaces
const char* ctacs_content =
"[CardTerminal]\n"
"CTN1=ACS ACR122\n\n"
"[ACS ACR122]\n"
"ICC1=ACS ACR122 0\n"
"ICC2=Broadcom Corp Contacted SmartCard 0\n";
// Initialize card terminal
ret = CT_init(ctn, pn);
if (ret != OK)
{
printf("Error: CT_init failed with error %d\n", ret);
return 1;
}
sad = 2; // Source = Host
dad = 1; // Destination = Card Terminal
// Send command
ret = CT_data(ctn, &dad, &sad, lenc, command, &lenr, response);
if (ret != OK)
printf("Error: CT_data failed with error %d\n", ret);
else
{
// Display response
printf("Response: ");
for (i = 0; i < lenr; i++)
printf("%02X ", response[i]);
printf("\n");
}
// Close card terminal
ret = CT_close(ctn);
if (ret != OK)
printf("Error: CT_close failed with error %d\n", ret);
return 0;
}
Я получаю сообщение об ошибке:
Error: CT_init failed with error -8
Кроме того, вот содержимое моего файла ctacs.ini, который я жестко запрограммировал в своем коде, как вы можете видеть выше:
[CardTerminal]
CTN1=ACS ACR122
[ACS ACR122]
ICC1=ACS ACR122 0
ICC2=Broadcom Corp Contacted SmartCard 0
```
Я проверил документацию по библиотеке CT-API, но не смог найти никакой конкретной информации о том, что означает код ошибки -8. Я также проверил правильность параметров, переданных в CT_init.
Может кто-нибудь помочь мне понять, что означает этот код ошибки и как его устранить? Существуют ли какие-либо распространенные причины, по которым CT_init может завершиться с ошибкой -8?
Будем очень признательны за любую помощь или информацию. Спасибо!
Диспетчер устройств обнаружил устройство чтения карт
[img]https://i. sstatic.net/LJAwlgdr.jpg[/img]
Я написал скрипт Python, чтобы просмотреть детали устройства чтения NFC:
import smartcard.System
def list_readers():
readers = smartcard.System.readers()
if len(readers) == 0:
print("No smart card readers found")
else:
for reader in readers:
print("Reader:", reader)
if __name__ == "__main__":
list_readers()
и вот результат
C:\Users\DELL\source\pytrhon>python test_reader.py Reader : ACS ACR122
0 Читатель: Broadcom Corp связалась со смарт-картой 0
Как вы думаете, мои ini-файлы верны?
// Hardcoded values for card terminal and ICC interfaces
const char* ctacs_content =
"[CardTerminal]\n"
"CTN1=ACS ACR122\n\n"
"[ACS ACR122]\n"
"ICC1=ACS ACR122 0\n"
"ICC2=Broadcom Corp Contacted SmartCard 0\n";
Подробнее здесь: [url]https://stackoverflow.com/questions/78526803/ct-init-failing-with-error-8-when-using-ct-api-library-for-smart-card-reader-co[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия