朕的 发表于 2022-7-6 17:31:54

部件动态库-官方这样介绍的

“部件DLL动态链接库”和普通的“DLL动态链接库”没有本质的区别,都是动态链接库。只是前者在编译DLL时会自动生成其火山接口程序,方便他人使用其DLL中的功能,并且由于相关实现代码位于编译后的DLL中,因此安全性是绝对有保证的,可广泛应用于多人协作或闭源项目中。
同时系统在编译部件DLL程序时自动打包生成对应的火山模块,使用方将该模块安装到其火山系统中即可使用其中的功能。
部件DLL中的以下内容会被自动输出到所生成的接口程序中:
(1) 所有公开类及其中的公开成员常量和公开成员方法(不会包含具体功能实现代码)。
以下类不会被输出到所生成的接口程序中(即使满足前面的条件):
(1) 系统类(其所处源文件位于当前所运行火山系统安装目录下的);
(2) 模板基础类,其所有模板实现类将被自动展开后输出;
(3) 启动类;
(4) 窗口组件类;
(5) 所有设置了值为假的“@输出到部件”属性的类(初级用户无需了解)。
以下方法不会被输出到所生成的接口程序中(即使满足前面的条件):
(1) 嵌入式方法;
(2) 虚拟方法;
(3) 类的初始化和清理方法;
(4) 事件接收方法;
(5) 所有设置了值为假的“@输出到部件”属性的方法(初级用户无需了解)。

以下常量不会被输出到所生成的接口程序中(即使满足前面的条件):
(1) 所有设置了值为假的“@输出到部件”属性的常量(初级用户无需了解).
系统在编译部件DLL程序时会自动处理该DLL程序中指定的所有附属文件(通过"视窗.附属文件"属性),并会将其复制到所生成的接口数据目录中(部件DLL项目属性中可进行先关设置)。

4.2 项目创建通过“文件->新建->项目”菜单,选择“部件动态链接库”进行项目创建。
http://doc.voldp.com/e_To_vol/project_img/40.png
创建后会有一个启动类和一个自定义的输出类,其中启动类在编译部件时并不会输出到部件中展示。
http://doc.voldp.com/e_To_vol/project_img/41.png

4.3 代码编写定义一个测试类,用于测试部件程序输出情况。
http://doc.voldp.com/e_To_vol/project_img/42.png

4.4 属性设置使用快捷键“Alt + Enter”打开项目属性。
程序:
此分类下用于设置DLL程序信息,同时也会将其内容自动输出到火山模块配置文件中,用于打包模块使用。
编译:
务必将“编译结果类型”设置为“部件DLL动态链接库”否则将无法编译部件程序,其它设置根据需求调整。
部件DLL编译:
用于设置部件DLL的相关编译信息,通过“自动生成模块安装包”的设置项可以自动打包成火山模块供他人使用。
http://doc.voldp.com/e_To_vol/project_img/43.png

4.5 编译发布版部件DLL编译与普通DLL编译流程一样,右键项目选择“编译发布版本”即可。
http://doc.voldp.com/e_To_vol/project_img/44.png
编译后会输出一些路径信息,其中有DLL输出路径、部件数据路径、模块安装包路径等。
http://doc.voldp.com/e_To_vol/project_img/45.png
打开部件数据路径会看到火山模块配置文件,以及一个src文件夹,此文件夹内存储有部件程序文件和dll文件。
http://doc.voldp.com/e_To_vol/project_img/46.png
打开src路径会看到定义的dll文件夹和部件程序文件,在火山中引用部件程序就会自动调用dll中的内容,无需手动编写dll引用代码。
http://doc.voldp.com/e_To_vol/project_img/47.png
在dll文件夹中,除了存放有dll文件外,还存放有“@视窗.附属文件”所引用的附属文件。
http://doc.voldp.com/e_To_vol/project_img/48.png

4.6 部件引用(1) 引用部件和引用普通文件一致,右键项目选择“添加->现有文件/模块”即可。
http://doc.voldp.com/e_To_vol/project_img/49.png
(2) 部件后缀名为wcv,选择要引用的部件文件即可。
http://doc.voldp.com/e_To_vol/project_img/50.png
(3) 引用部件后双击可打开查看部件DLL接口,会发现变量和未公开的信息并不会输出到部件DLL接口中。
http://doc.voldp.com/e_To_vol/project_img/51.png
(4) 引用后就可以在程序中调用部件DLL中的方法。
http://doc.voldp.com/e_To_vol/project_img/52.png
(5) 部件DLL中的信息框被弹出。
http://doc.voldp.com/e_To_vol/project_img/53.png

4.7 部件模块部件dll模块和普通模块使用方式一致,通过“工具->安装模块”菜单就可以进行模块安装。
关于火山模块安装引用卸载操作可以看“支持库差异”中的介绍。

页: [1]
查看完整版本: 部件动态库-官方这样介绍的