jadespider 发表于 2017-3-3 22:18:05

vb及coreldraw编程高手请进

coreldraw中的宏代码vba是vb的子集,但在coreldraw中写的宏代码没有安全性,无法加密,如果能写成vb代码或者dll函数,则能编译成exe文件或者dll函数,那么就不会轻易被人破解,当然,用汇编反编译是另一个话题了,我只想请手谈一下如何用vb来封装现有的宏代码,我在vb中改动了一些变量声明,引用了coreldraw库,代码是可以运行的,但如何让它成为和coreldraw关联的程序,或者让它成为coreldraw的一个插件?

jadespider 发表于 2017-3-8 08:21:40

为什么没人回复,我是不是应该这样问,如何用vb开发coreldraw的cfg插件,coreldraw的com口接口函数是什么,如何导入vb中

jadespider 发表于 2017-3-14 17:12:15

      看到这个贴子没人理会很是不理解,这个网站也是有很多高手的,可是这里的讨论学习气氛个人感觉不够,不能使人觉得因为成为这里的会员而学到了东西,所以决定尽自己一点力量,把自己解决自己提出的问题的过程写出来,也希望有人能指点一下。
      这一段时间一直在找cfg插件的写作方式,百度了好多,甚至去看些英文网页,e文又不是很好,不过总算是有一点眉目了。coreldraw实际上是从X3开始支持dll插件,也就是说,你写一个dll插件函数,coreldraw从x3开始给你提供接口,那么你的插件就会随coreldraw一起启动,已经和vba无关了,也就是说无关你装不装宏,更谈不上别人破解你的宏了,因为你完全可以写一个标准的dll函数来替代你现在的宏,那么我的问题实际的难点就变成了如何把自己在vba或者vb中的代码转为c或者c++代码,因为用vb写不了真正的dll。

浪天行 发表于 2017-6-11 19:20:35

好像没人懂啊,这种技术应该楼主和版主那类来回答才好

jadespider 发表于 2017-7-19 00:48:57

       从这个贴子发出到现在四个月了,只有自己来回答这个问题了,也许是牵扯到商用插件,大神或许不愿告诉象我一样纠结的写程序干活的人。coreldraw脚本、插件的魅力在于它的方便,使印前特别是大量重复动作的工作不再浪费我们的时间,你会一点vb,就能写出来宏,也就是gms文件,如果你会用vb写activex dll,那你就可以把你的宏功能模块简单封装下,不用让源码裸奔,如果你会c++,delphi,那你就能真正写出cpg插件,其实就是一个标准dll。脚本要转cpg,没有什么捷径公式,只能是你既会vb,又会c++或者delphi,原理都是去导入coreldraw的库,如果你用vb就调CorelDraw.tlb,vs或者delphi就调 vgcoreauto.tlb,后者的可以支持64位,而且c++的指针变量可以极大的提高程序效率,但这一块语法却是最让人头疼的:Q
      总结下,脚本方便,好学,好用,好调试,但代码无法加密,办公室用最好了,cpg难写,难调试,但功能强大,代码完全封装,商用赚钱似乎是最佳选择。
页: [1]
查看完整版本: vb及coreldraw编程高手请进