VS2017下PBNI环境搭建与功能应用详解

需积分: 12 14 下载量 187 浏览量 更新于2024-09-07 收藏 577KB DOCX 举报
在VS2017环境下,PowerBuilder Native Interface (PBNI) 的应用环境搭建和初步使用具有重要意义。PBNI是PowerBuilder 9.0引入的一项革新特性,它改变了PowerBuilder与C/C++交互的传统方式,以前只能通过外部函数调用,现在则支持方法导向的接口,使得双向通信成为可能。以下是关于PBNI的关键知识点: 1. **PBNI功能概述**: - PBNI提供了一种强大的途径,使PowerBuilder开发者可以直接调用C/C++函数,并实现C/C++程序对PowerBuilder对象和方法的调用。 - 通过PBNI和JNI(Java Native Interface)的结合,Java应用程序也能与PowerBuilder程序进行双向通信,增强了跨平台和组件化的开发能力。 2. **传统调用问题**: - 传统的PowerBuilder开发中,虽然可以使用外部函数调用C/C++,但回调函数(CallbackFunction)处理存在挑战,因为C函数无法直接回调PowerBuilder中的函数。 - 外部函数调用还面临数据传递限制和对象导入开发方式的局限性。 3. **PBNI环境搭建**: - PBNI环境的建立是基于PowerBuilder 9.0及以上版本,它允许将第三方程序转化为PowerBuilder的对象,从而无缝集成到PowerBuilder项目中。 - 开发者需要配置PowerBuilder环境以启用PBNI,这通常包括设置编译器选项,链接外部库,以及添加必要的头文件路径。 4. **PBNI的使用示例**: - 在VS2017中,开发者可以编写PBNI案例,通过创建PBNI类和方法,将C/C++的函数或对象包装起来,使得它们能在PowerBuilder中如同内置组件一样使用。 - 源代码示例可能包括PowerBuilder对象声明、PBNI类的定义、方法声明以及如何正确调用C/C++函数或对象的代码片段。 5. **优势与优点**: - PBNI提高了代码的灵活性和复用性,降低了耦合度,使得开发更高效。 - 通过PBNI,PowerBuilder可以与Java和C/C++的复杂架构集成,增强了应用的扩展性和兼容性。 VS2017下的PBNI环境搭建和使用对于PowerBuilder开发者来说是一项重要的技能,它扩展了PowerBuilder的功能边界,使得开发者能够更好地利用C/C++和Java技术构建更加复杂和高性能的应用程序。