APDL宏文件如何加密

APDL宏文件如何加密

Please Share Us

点击此处查看 ✿水哥原创ANSYS视频教程清单 ✿

水哥专属答疑服务已开通,点此此处查看详情

很多时候,我们在服务甲方的时候,需要将建模或者求解的结果发给甲方审核,但是又不想让对方知道我们的具体操作代码,这个时候就可以采用加密宏来实现,通过该操作,可以最大程度上对我们的知识产权进行保护,且目前为止水哥还没发现方法可以对其进行还原。

加密后的效果主要有两个方面:

1、用户在使用过程中,必须提前输入我们加密宏的密码,否则即使有宏文件也无法进行调用。

2、宏文件用户打开后看到的是一堆乱码。

加密操作要注意两个方面:

1、宏文件一旦进行加密后,将不可逆,也即无法还原为正常代码,所以操作之前,一定要备份好源代码。

2、为了防止用户通过Log文件的方式进行查看源代码,在加密时一定要通过/Nopr和/Gopr来禁止将宏文件的代码写入到Log文件中。

APDL加密宏的命令如下:

/ENCRYPTKeyFnameExt

其中,Key为加密密码,Fname为宏文件名称,Ext为宏文件后缀名

下面以一个创建壳单元为例,来演示具体的操作流程。

一、正常流程如下(通过*Create和*End命令来创建宏文件):

!创建宏文件
*Create,CreateShell,mac
/prep7
allsel,all
!获取当前模型最大的材料、类型、截面编号
*get,matmax,mat,0,num,max
*get,typemax,type,0,num,max
*get,Secmax,secp,0,num,max
!创建新的单元属性
mp,ex,matmax+1,2.0e5
et,typemax+1,shell181
sectype,secmax+1,shell
secdata,100
!获取最大节点编号
*get,nodemax,node,0,num,max
!创建四个节点
N,nodemax+1,100,100
N,nodemax+2,200,100
N,nodemax+3,200,200
N,nodemax+4,100,200
!创建单元
Type,typemax+1
Mat,matmax+1
Secnum,secmax+1
E,nodemax+1,nodemax+2,nodemax+3,nodemax+4
*END

运行完上述代码后,即可在软件工作目录下看到一个名为CreateShell.mac的宏文件,通过本文编辑器打开即可看到源代码,如下所示:

APDL宏文件如何加密

 

二、改为加密方式创建流程如下:

文件名称为CreateShell_Jiami,文件密码为Logepi

/Encrypt,Logepi,CreateShell_Jiami,mac
/Nopr
/prep7
allsel,all
*get,matmax,mat,0,num,max
*get,typemax,type,0,num,max
*get,Secmax,secp,0,num,max
mp,ex,matmax+1,2.0e5
et,typemax+1,shell181
sectype,secmax+1,shell
secdata,100
*get,nodemax,node,0,num,max
N,nodemax+1,100,100
N,nodemax+2,200,100
N,nodemax+3,200,200
N,nodemax+4,100,200
Type,typemax+1
Mat,matmax+1
Secnum,secmax+1
E,nodemax+1,nodemax+2,nodemax+3,nodemax+4
/Gopr
/Encrypt

运行完上述代码后,即可在软件工作目录下看到一个名为CreateShell_Jiami的宏文件,通过本文编辑器打开,发现是乱码,如下所示:

APDL宏文件如何加密-2

将生成的CreateShell_Jiami文件发给客户,用告知其使用方法或者直接体现在我们最终的命令流里面即可,这样就可以对我们的一些操作进行保护。

三、加密宏的使用方法

使用加密宏的时候,需要用/Decrypt提前声明密码,用法流程如下:

finish
/clear
/prep7
!声明密码
/Decrypt,password,Logepi
!使用宏文件
CreateShell_Jiami
finish

打开软件的log文件,拉到最后几行,没有发现源代码,通过这种操作就对我们的宏文件进行了保护。

APDL宏文件如何加密-3

 

四、WB当中使用加密宏文件方法

方法与在经典中使用的方法类似,只需在求解阶段插入Command,命令流中声明密码即可,如下所示:

APDL宏文件如何加密-4

 

在WB界面拖入一个APDL,来进行实时查看命令流运行效果,从下面截图可见,加密的宏文件已经运行。

 

欢迎扫描如下二维码关注本站微信公众号:ANSYS结构院

有时间麻烦帮忙点击下公众号文末的广告哦, 权当码字的辛苦费,感谢大家!

Please Share Us
© 版权声明
THE END
喜欢就支持一下吧
点赞0赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码

    暂无评论内容

YOU MAY LIKE…