среда, 29 августа 2018 г.

Подписание .NET NX Open приложений

Небольшое наблюдение.
Как известно, в NX можно использовать так называемые журналы или приложения (полноценные сборки в виде dll или jar). Журналы это файлы с исходным кодом, написанным на одном из нескольких языков программирования. Журналы можно редактировать прямо в NX, но они имеют некоторые ограничения. Например, программа должна состоять из одного файла. Если надо создать программу со сложной структурой классов, то понадобится NX Open приложение.
Для создания NX Open приложения нужна среда разработки. Для Java я использую - Eclipse, а для .NET - MS Visual Studio. Eclipse также полезно знать тем, кто будет заниматься разработкой расширений для Teamcenter, т.к. эта система построена на его платформе. Для нормальной работы приложения в NX без какой-либо из лицензий Author, его необходимо подписать. В Java архив (jar), утилита для подписания SignJar.bat (это пакетный файл для запуска) сама добавляет всю необходимую информацию.

Для подписания сборки .NET в неё должен быть включен специальный файл NXSigningResource.res. Утилита SignDotNet.exe находит его и заполняет данными. Для C++ другая немного технология.

В NX 11 и NX12 разные файлы ресурсов NXSigningResource.res. Дело в том, что с 12-ой версии изменилась система лицензирования, о чём нас предупредит утилита, когда мы решим проверить подпись. Если вы прикрепите ресурс 12-го NX'а и будете подписывать утилитой 11-го, то она будет сообщать, что ресурс не найден. Файл ресурса состоит из блока, содержащего 534 символа, среди которых метка начала и конца блока. У 11-го эта метка "NXAUTHBLOCK", а у 12-го - "NXAUTHBLKNT".
Для разработчиков, у которых обычно установлено несколько версий систем, под которые что-либо создаётся (или тестируется на совместимость), такая ситуация может произойти. Мало того, скорее всего придётся переподписывать приложения у пользователей, которые перешли на 12-ую версию с 11-ой. Насколько я понял, 12-ая версия просто не найдёт блок с подписью и система будет ругаться.



Комментариев нет:

Отправить комментарий

Определение параметров CHS (Cylinder, Head, Sector) карт CF с помощью утилиты IDEINFO

 Столкнулся с проблемкой подключения карт CF к материнской плате LTC-SL REV-B и WD386SX-LPX. В БИОС этих плат нет автоопределения накопителе...