许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  NX签名功能解析

NX签名功能解析

阅读数 6
点赞 0
article_banner

场景描述:

环境:VS2010+NX10

假设库项目为A,使用项目为B。A头文件中包含:

static unsigned char nxauthblock[] = "NXAUTHBLOCK      "

                                        "                                                  "

                                        "                                                  "

                                        "                                                  "

                                        "                                                  "

                                        "                                                  "

                                        "                                                  "

                                        "                                                  "

                                        "                                                  "

                                        "                                                  "

                                        "                                                  "

                                        "      NXAUTHBLOCK";

extern DllExport void NXSigningResource(void)

   {

   }

然后B调用A,配置头文件,库目录,附加依赖项后,B签名失败......

原因:

按理说,B中已经包含了签名函数,应该签名正确!

检查发现,B虽然调用了A,但是B并没有用到A中的函数,会不会跟这个有关?

于是在B中添加了对A函数的调用,签名成功!!!

原因A是动态库,如果没有函数使用,A不会加载进来,即签名函数没有添加,造成签名失败 !!!

其他问题补充1:

另如果B调用了A,无论是否使用了A函数,如果此时添加NXSigningResource. cpp 文件,

编译会报错,因为签名函数存在两份。

其他问题补充2:

NX  功能中 签名函数只能有一份,否则编译冲突。

如果当前功能代码不包含签名文件,调用的第三方库包含了签名文件:

此时可能会出现奇怪的问题:Debug签名成功,Rease签名失败

解决办法:

打开项目属性,逐个比较Debug/Release不同,一般是”C++/优化” 和 ”链接器/优化”,更改即可。

总结:

创建NX第三方库时,不宜添加签名文件,在项目本身添加签名文件更好。


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空