CorelDRAWX4的VBA插件开发(三十六)调用C++实现一键智能群组(第5节)导出动态链接库并在VBA中静态调用
- 关于智能群组的C++代码就已经全部展示完毕,那么在文件中的顺序也是显而易见的, 为了照顾没有基础的朋友,所以还是把顺序讲一下, 先放上#include,然后是声明部分,然后是入口函数,然后是四个被调函数,再接主调函数,最后放导出函数然后生成动态链接库即可,这里就不重复演示了.
- 这里讲一下我们在VBA中选择静态调用,主要是因为代码简洁干净,只要两行即可,而且是VBA原生支持的,动态调用是我们强加上去的,动态调用在释放的时候有可能会造成内存溢出,导致无法干净卸载的问题,所以如果是很有经验的朋友执意要用动态加载也无妨,这里就还是用静态调用了
我们把导出的CongLingKaiShi.dll
动态库文件放在某个路径下,我是放在C:\cine\CongLingKaiShi.dll
下面,可以随意更改,
'静态调用
Public Declare Function wodedll Lib "C:\cine\CongLingKaiShi.dll" Alias "WoDeDll" (ByVal Application As Application, ByVal hwnd As Long) As Integer
- 然后就是VBA调用
Sub 第一个插件()tool.wodedll CorelDRAW.Application, CorelDRAW.Windows.Item(1).HandleEnd Sub
- 好了,以上就实现了智能群组的全部功能,如果想在里面加上其它功能只要在Qunzu的最后面接着往下写就行了
CorelDRAWX4的VBA插件开发(三十六)调用C++实现一键智能群组(第5节)导出动态链接库并在VBA中静态调用相关推荐
- CorelDRAWX4的VBA插件开发(三十四)调用C++实现一键智能群组(第3节)主调函数以及三个被调函数
这一节就进入到了群组的实质性的内容,先把群组Qunzu()函数展示一下 先展示主调函数Qunzu(),函数里面还有四个被调函数等会儿再说 BOOL Qunzu() {//undo开 这个是一键多步撤销 ...
- CorelDRAWX4的VBA插件开发(三十五)调用C++实现一键智能群组(第4节)递归调用框选工具
上一节没有讲到的递归函数diguiSelect,这一单独列出来讲一下 INT diguiSelect(long count, DOUBLE LX, DOUBLE BY, DOUBLE RX, DOUB ...
- CorelDRAWX4的C++插件开发(三十九)纯C++插件开发(3)声明变量并暴露导出函数
接上一节我们接下来声明一些需要用到的变量 // 声明CorelDRAW变量=VBA::Application类 VGCore::IVGApplication* corelApp = NULL; //声 ...
- CorelDRAWX4的VBA插件开发(四十六)VBA插入启动事件让CDR启动时检测并自动添加工具栏和按钮
先上结果图,这个工具栏和按钮都是主程序自动生成的 在程序的运行当中,如果我们希望程序能够自己创建工具栏和按钮,可以在CDR启动事件中设置一个检测功能 Private Sub GlobalMacroSt ...
- CorelDRAWX4的C++插件开发(三十八)纯C++插件开发(2)导入tlb编译文件
上一节文件建立好了之后,我们把Debug模式改成X86,如果找不到的话,可以在视图-工具栏-标准找到这个界面,因为X4不支持64位的,所以我们只能让他在32位的环境中进行编译调试 然后我们点开顶部项目 ...
- 程序员编程艺术第三十六~三十七章、搜索智能提示suggestion,附近点搜索
第三十六~三十七章.搜索智能提示suggestion,附近地点搜索 作者:July.致谢:caopengcs.胡果果. 时间:二零一三年九月七日. 题记 写博的近三年,整理了太多太多的笔试面试题,如微 ...
- C# 中静态调用C++dll 和C# 中动态调用C++dll
在最近的项目中,牵涉到项目源代码保密问题,由于代码是C#写的,容易被反编译,因此决定抽取核心算法部分使用C++编写,C++到目前为止好像还不能被很好的反编译,当然如果你是反汇编高手的话,也许还是有可能 ...
- Python编程基础:第三十六节 模块Modules
第三十六节 模块Modules 前言 实践 前言 我们目前所有的代码都写在一个文档里面.如果你的项目比较大,那么把所有功能写在一个文件里就非常不便于后期维护.为了提高我们代码的可读性,降低后期维护的成 ...
- OpenCV学习笔记(三十六)——Kalman滤波做运动目标跟踪 OpenCV学习笔记(三十七)——实用函数、系统函数、宏core OpenCV学习笔记(三十八)——显示当前FPS OpenC
OpenCV学习笔记(三十六)--Kalman滤波做运动目标跟踪 kalman滤波大家都很熟悉,其基本思想就是先不考虑输入信号和观测噪声的影响,得到状态变量和输出信号的估计值,再用输出信号的估计误差加 ...
- NeHe OpenGL教程 第三十六课:从渲染到纹理
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
最新文章
- C#3.0 为我们带来什么(5) —— 匿名类型
- 修改Intelij IDEA的maven下载地址为国内阿里云镜像
- boost::safe_numerics模块实现数据类型下溢的测试程序
- Android开发之Dialog对话框(弹框)工具类
- CentOS7 FTP安装与配置
- SQLAlchemy Connection
- 判断一个图是否有环(有向图,无向图)
- Word2Vec算法详解(CBOW和skip-gram算法详解)
- CentOS 6系统FreeSwitch和RTMP服务 安装及演示(四)
- (BISM)FTP搜索引擎BLOG开通了,专门交流搜索引擎技术
- 数据结构系列之大话数据结构
- 轻松学会硬盘还原卡的安装和使用
- 【精度】概率论之概念解析:边缘化(Marginalisation)
- 商场三十六计——第29计 “树上开花”
- Linux删除所有文件之后的恢复快照恢复
- 什么是X86和X86-64
- 焊接机器人编程c语言,机器人现场编程与调试(cnc上下料,弧焊,喷涂,点焊等),就是这么全!...
- Android中实现类似探探中图片左右滑动切换效果
- 【用HTML+CSS实现简单的轮播图片效果】
- BYTE WORD DWORD
热门文章
- 26个最好免费下载电子书(Ebooks)的网站
- 最简单详细的JavaMD5加密解密算法
- 融合不是冗余,全栈自研才有出路?特斯拉/Mobileye这样做
- 负债均衡(三)下载安装Nginx
- Linux下如何使用搜狗词库
- 无限制版电驴连接不上服务器,电驴怎么连接服务器?电驴连接不上服务器的解决方法介绍...
- nodejs 服务端 音频拼接 合成 实现
- 各省简称 拼音 缩写_全国城市拼音 缩写
- java中的关键字有哪些_java关键字有哪些?java关键字大全
- 实对称矩阵的特征值一定为实数证明