Статус: Новичок
Группы: Участники
Зарегистрирован: 10.07.2024(UTC) Сообщений: 5  Откуда: Омск Сказал(а) «Спасибо»: 1 раз
|
Добрый день! Пока не особо получается разобраться с license_api. Доки нет, примеров нет В кратце из всех методов работает только license_check license_set как будто ничего не делает, пишу на Swift, код прикладываю Цитата: var buffer = Array(licenseNumber.utf8) buffer.append(0) license_set(&buffer, nil, 0)
license_get нормально вычисляет длину возвращаемой строки, но результирующая строка состоит из \0 (так называемые null terminator) Цитата: var dataLength: UInt32 = 0 license_get(nil, &dataLength, nil, 0) let data = malloc(Int(dataLength)).assumingMemoryBound(to: BYTE.self) license_get(data, &dataLength, nil, 0) let licenseData = Data(bytes: data, count: Int(dataLength)) if let licenseString = String(data: licenseData, encoding: .utf8) { print(licenseString) }
Можете, пожалуйста, подсказать, где можно увидеть примеры работы с этой апишкой или документацию какую-нибудь конкретную?
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 10.07.2024(UTC) Сообщений: 5  Откуда: Омск Сказал(а) «Спасибо»: 1 раз
|
Если как-то может помочь, то при самом первом запуске приложения, падает вот такой лог Цитата: 13:39:20.830094 support_an_fopen:90 p:8995 t:0x202b80188 support_an_fopen("/var/mobile/Containers/Data/Application/68EE6518-106E-4BA4-98A1-2340C8C974FE/Documents/../Documents/cprocsp//etc/license.ini", "rb") = 0x0 fail No such file or directory(2)
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 16.04.2008(UTC) Сообщений: 1,500
Сказал(а) «Спасибо»: 42 раз Поблагодарили: 609 раз в 421 постах
|
Здравствуйте. Все функции API возвращают коды ошибок - их необходимо проверять на ноль (успех), иные значения будут говорить об ошибках. Их смысл можно узнать, например, на https://www.magnumdb.com |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 10.07.2024(UTC) Сообщений: 5  Откуда: Омск Сказал(а) «Спасибо»: 1 раз
|
Автор: Русев Андрей  Здравствуйте. Все функции API возвращают коды ошибок - их необходимо проверять на ноль (успех), иные значения будут говорить об ошибках. Их смысл можно узнать, например, на https://www.magnumdb.com Андрей, спасибо за ответ! При вызове функции set_license выдается код 2148073504, что значит NTE_FAIL, но как это напрямую относится к api работы с лицензией мне непонятно. Дополнительно отмечу, что функциональность добавления сертификатов и подписания работают нормально
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 10.07.2024(UTC) Сообщений: 5  Откуда: Омск Сказал(а) «Спасибо»: 1 раз
|
После некоторых танцев с бубном получилось добиться кода 0 в license_set, но теперь license_get выдает 7055 - ERROR_CTX_LICENSE_CLIENT_INVALID. В какую сторону можно покопать в таком случае?
Из примечательного, при первом запуске license_get нормально печатает лицензию, которая по умолчанию установлена из файла license.enc, но после вызова license_set, все ломается и падает такая ошибка
|
|
|
|
Статус: Сотрудник
Группы: Администраторы, Участники Зарегистрирован: 16.04.2008(UTC) Сообщений: 1,500
Сказал(а) «Спасибо»: 42 раз Поблагодарили: 609 раз в 421 постах
|
Автор: romanrvachev  После некоторых танцев с бубном получилось добиться кода 0 в license_set А что именно вы сделали для этого? Автор: romanrvachev  но теперь license_get выдает 7055 - ERROR_CTX_LICENSE_CLIENT_INVALID. В какую сторону можно покопать в таком случае? Скорее всего, это означает, что вы установили невалидую лицензию. Перед license_set() надо делать license_check(), чтобы убедиться, что вы ставите корректное значение. При этом надо проверить и код ошибки (его надо проверять всегда), и validity. Из логических ошибок: у вас везде utf8, а лицензионный ключ - в ascii. |
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close