【NX二次开发】批量数字签名的方法,解决自己电脑编译的dll在用户正版NX无法使用的问题
在UG5.0开始,所有开发的DLL都要“签名”后才能被客户端上正版的NX调用。
1. 如果是基于c++开发的dll,使用如下方法可以顺利签名成功(这里借用网上现有的文字和图片)
1.1.在cpp文件中需要添加头文件
#include <NXSigningResource.cpp>

2.1.启动NX Tools的DOS命令行,进入NX安装目录的UGOPEN下,运行nxsign xxx.dll,其中的xxx.dll应该包含全路径,如下图。这里的nxsign是UGOPEN目录下的nxsign.exe软件,为c++的dll签名的软件。如果签名成功,提示信息也如下。注意nxsign.exe只能用在NX8.0之前的版本,在NX8.5之后用的是signcpp.exe,因此命令行需要写成 signcpp xxx.dll

其实不用这么麻烦,直接找到signcpp.exe文件,将多个dll拖到signcpp.exe上就可以签名了:

缺点是也不知道签名成功了没有,有没有报错啊等等,为了解决这个问题,还得靠自己勤劳的双手,顺手写个脚本。
批处理源码(将源码拷到文本,扩展名改为.bat,按照下面这个动画使用,其他NX版本照葫芦画瓢改改也能用):
@echo off
title 正版批量签名工具 by 王牌飞行员_里海 20201124
if "%1"=="" (
echo 请用拖文件形式运行!
ping 127.1>nul&exit/b) echo 正在签名...
for %%i in (%*)do (
echo.
echo.
echo 签名%%i :
"%UGII_BASE_DIR%\NXBIN\signcpp.exe" %%i
)
echo.
echo.
echo.
pause ::NX8.5 "C:\Program Files\Siemens\NX 8.5\UGOPEN\signcpp.exe" %%i
::NX11.0 "C:\Program Files\Siemens\NX 11.0\UGOPEN\signcpp.exe" %%i
::NX12.0 "%UGII_BASE_DIR%\NXBIN\signcpp.exe" %%i
::NX12.0 "D:\Program Files\Siemens\NX 12.0\NXBIN\signcpp.exe" %%i
::NX10.0 "D:\Program Files\Siemens\NX 10.0\UGOPEN\signcpp.exe" %%i
效果:

舒服~~~~~~

部分参考:https://www.ugapi.com/thread-5896.html
【NX二次开发】批量数字签名的方法,解决自己电脑编译的dll在用户正版NX无法使用的问题的更多相关文章
- 【NX二次开发】切换模块的方法,切换到制图模块
源码(NX12.0): Session theSession = NXOpen::Session::GetSession(); theSession->ApplicationSwitchImme ...
- NX二次开发-NXString转换为char*方法
NX9+VS2012 #include <uf.h> #include <uf_drf.h> #include <NXOpen/Annotations_Note.hxx& ...
- 【NX二次开发】根据根据坐标系、对象旋转视图旋转视图uc6434
uc6434 (); //旋转视图 参数1:如果输入""则旋转当前工作视图参数2:1.按照ABS旋转视图.2.按照WCS选择视图.3.按照参数3旋转视图.4.按照参数4旋转视图参数 ...
- 【NX二次开发】NX内部函数,查找内部函数的方法
[NX二次开发]NX内部函数,libufunx.dll文件中的内部函数 [NX二次开发]NX内部函数,libugui.dll文件中的内部函数 [NX二次开发]NX内部函数,libuifw.dll文件中 ...
- NX二次开发-基于MFC界面的NX对Excel读写操作(OLE方式(COM组件))
NX二次开发API里没有对EXCAL读写操作的相关函数,市面上有很多种方法去实现,比如UFUN调KF,ODBC,OLE(COM组件)等等.这里我是用的OLE(COM组件)方式去做的,这种在VC上创建的 ...
- NX二次开发-BlockUI对话框嵌套MFC对话框制作进度条
半年前在一些QQ群看到有大神NX二次开发做出了进度条,那个时候我还不会弄,也不知道怎么弄得,后来断断续续得研究了一下,直到今天我把它做出来了.内心还是很喜悦的!回想自己这两年当初从没公司肯给我做NX二 ...
- NX二次开发-UDO用户自定义对象(UFUN)【持续完善】
每当提起UDO总是会让我想起大专毕业那会失业找工作,后来有个宝贵机会去了软件公司上班,拿到了我人生中的第一个NX二次开发项目,一个关于测量汽车前后左右摄像头的项目.当时那个项目就用到了UDO,对于只看 ...
- NX二次开发-UFUN计算两点距离UF_VEC3_distance
NX11+VS2013 #include <uf.h> #include <uf_curve.h> #include <uf_vec.h> UF_initializ ...
- NX二次开发-NX+VS写代码设断点调试技巧
在做NX二次开发的时候写完代码,编译可以通过,但是执行的时候却没有反应,或者得到的结果不对,说明肯定有地方传值出错了.我在查找代码错误的时候有几种方法:1.uc1601打印函数输入和输出的值看对不对. ...
随机推荐
- apache-tomcat-7.0.92
链接:https://pan.baidu.com/s/1wnTSjTknYfaeDV_pakrC9g 提取码:see7
- 10.qml-组件、Loader、Component介绍
1.组件介绍 一个组件通常由一个qml文件定义(单独文件定义组件), 实际也可以在qml里面通过Component对象来嵌入式定义组件 (4小节讲解). Component对象封装的内容默认不会显示, ...
- 微服务架构开发电商系统需要用Redis、ES和MQ吗?
如果不用什么很高大上的东西,就是有多个微服务就行这种技术架构会很难吗? 我看了一些视频,他们都用到了es.mq.redis的东西,我想不用这些东西,就简单的有多个服务,这样可行吗? 01 使用微服务你 ...
- (转)elasticsearch连接不到head插件解决方案
(1)elasticsearch-5x下的 config/elasticsearch.yml http.cors.enabled: true http.cors.allow-origin: & ...
- C++ primer plus读书笔记——第2章 开始学习C++
第2章 开始学习C++ 1. endl确保程序继续运行前刷新输出(将其立即显示在屏幕上),而使用"\n"不提供这样的保证,这意味着在有些系统中,有时可能在您输入信息后才会出现提示. ...
- 【敏杰开发】Beta阶段项目展示
[敏杰开发]Beta阶段项目展示 项目相关地址汇总 线上地址:http://roadmap.imcoming.top 前端仓库:https://github.com/MinJieDev/Roadmap ...
- Spring AOP获取不了增强类(额外方法)或无法通过getBean()获取对象
Spring AOP获取不了增强类(额外方法)和无法通过getBean()获取对象 今天在学习AOP发现一个小问题 Spring AOP获取不了额外方法,左思右想发现是接口上出了问题 先上代码 获取不 ...
- [Python] 地图API
请求位置信息 https://restapi.amap.com/v3/place/text?keywords=北京大学&city=beijing&output=xml&offs ...
- 《我常用的股票投资工具与网站》v2.0
<我常用的股票投资工具与网站>v2.0 王大海 职业投资,抽空做一点分享. 661 人赞同了该文章 "少年你好,想不到你竟有如此因缘际会看到这里.我看你骨骼精奇,定是万中无一的交 ...
- elasticksearch分词,导致kibana的url出现问题
在Kibana的展示页面中,我们点击Table的左侧栏,发现Elasticsearch中的数据在展示中是正确的数据,比如:agent中www.baidu.com/test,该界面中会正确的显示为www ...