PB应用技术
文章平均质量分 78
lxbin2003
这个作者很懒,什么都没留下…
展开
-
PB的扩展DLL开发(超级篇)(八)
PB DLL 高级 开发原创 2022-09-08 11:30:37 · 1264 阅读 · 1 评论 -
PB的扩展DLL开发(超级篇)(七)
PB 高级 DLL system library原创 2022-07-01 13:08:47 · 902 阅读 · 0 评论 -
PB的扩展DLL开发(超级篇)(六)
PB 高级 DLL 开发原创 2022-06-17 16:48:12 · 925 阅读 · 1 评论 -
PB的扩展DLL开发(超级篇)(五)
PB DLL 超级篇原创 2022-06-16 18:42:52 · 766 阅读 · 0 评论 -
PB调用DLL的常见问题及处理方法
PB调用DLL的常见问题及处理方法首先,为方便描述,先假设有一个DLL文件,名称为 test.dll,里面有个函数叫test。第一类:通用型标准DLL1、调用约定问题。Windows系统的标准DLL,通常有2种调用约定,即__cdecl和__stdcall,__stdcall约定在.h文件中通常又定义为 WINAPI和CALLBACK。咱们的PB只能调用__stdcall约定的DLL,不能调用__cdecl约定的DLL。如果调用了__cdecl约定的函数,会报以上错误。.原创 2022-05-08 18:19:03 · 7213 阅读 · 0 评论 -
PbIdea 如何导入医保大文件
PbIdea 如何导入医保大文件?国家医保项目以zip格式提供药品、材料库下载,zip文件里面是一个文本文件,文本文件是utf8编码,解压出来有好几百M。这个文件对PB来说,比较难处理。PbIdea有专门功能来处理这个文件。首先使用 uo_httpclient或uo_curl对象,根据医保接口文档将zip文件下载,存为文件。假设文件存为d:\ 202202187369608330634159091.zip。接下来介绍如何把这个压缩包里的数据导入数据库。第一步:解析数据文件,把它分解成若干个小原创 2022-04-14 23:01:47 · 1670 阅读 · 0 评论 -
Pbidea库关于PB核心代码保护的一个方案
Pbidea库关于PB核心代码保护的一个方案我们写程序,总是希望自己的代码不容易被别人破解,有一定安全性。尤其是用PB写CS程序,如果代码被pbkiller之类的工具轻易反编译了,数据连接等信息、加密方法等就一止了然,别人可以直接使用这些信息连接到数据库,其影响不可估量。当然,也有人不在乎这些安全考量,那就不在此考虑之类,可以忽略本文。一、pbidea库核心代码安全保护方案1.给应用程序正常添加库文件。将核心代码单独放到一个pbl里面,库名称随意指定,这里假设我们指定的名称是panda.pb原创 2022-04-03 14:46:41 · 2106 阅读 · 0 评论 -
第一次使用Pocket-PowerBuilder和开发DLL的经历
第一次使用Pocket-PowerBuilder和开发DLL的经历有位朋友使用Pocket-PowerBuilder(以下简称PPB)开发PDA上使用的APP,遇到一个问题,找我帮忙:DLL在PDF上调用失败。以前听闻过这个版本,以为在 windows CE上跑,和windows平台没多大差别,结果是我想简单了。特此记录一下这次经历。1.常规操作,打开虚拟机,安装windows xp sp3。顺利!2.安装PPB。顺利!3.找到wince 6.0 模拟器。4.安装 vs2008 +原创 2022-03-03 12:31:40 · 1256 阅读 · 0 评论 -
datawindow中正确使用字体的重要性
datawindow中正确使用字体的重要性 datawindow界面设计中,许多人忽略了字体选择,字段往DW上一拖,一放,默认是 Arial字体,也不会去调整它。如果是英文字体,倒也无关紧要,但如果内容里有中文,那差别就太大了,这时候就应该选择合适的中文字体。下面就这个区别进行一下分析。 首先是打开体会上,就这样一个简单的DW,第一列使用Arial字体,打开时就有明显迟滞,如果改为宋体,则几乎感觉不到停顿,打开时丝一般顺滑。 接下来,测试生成...原创 2022-02-14 09:50:18 · 989 阅读 · 1 评论 -
Datawindow中如何快捷方便地使用二维码、条码
Datawindow中如何快捷方便地使用二维码、条码原创 2022-01-17 10:33:58 · 3073 阅读 · 0 评论 -
PbIdea功能系列之PowerBuilder高级图像处理功能
PbIdea功能系列之PowerBuilder高级图像处理功能我们知道,PowerBuilder是CS桌面应用的开发利器,具方便、快捷、高效的特点。然而,PowerBuilder的特长在数据库方面,对于图像处理这块,功能几乎是一片空白,只有几个简单的图形形状,更谈不上图片处理与加工,甚至有些格式都不支持。本文着重于介绍利用PbIdea扩展库,增强PB图片处理功能。一、uo_image对象uo_image对象着重于图片显示、转换、缩放等处理的一些基础功能,着重实现图片的工具性功能。原创 2022-01-03 18:33:31 · 7741 阅读 · 3 评论 -
PbIdea功能库用于新医保项目快速入门
PbIdea 新医保 快速入门原创 2021-12-12 18:43:18 · 6696 阅读 · 3 评论 -
PowerBuilder中调用DLL参数类型
PowerBuilder中可以使用外部DLL来扩展程序功能。但在实际使用中,许多人并不了解如何 做好类型对应声明。类型声明错误,甚至调用错误,会导致隐藏bug,往往在多次调用后系统会崩溃而不自知。本文就DLL声明参数做一些分析,希望对一些使用者有一些引导作用。原创 2021-11-24 23:36:59 · 4900 阅读 · 4 评论 -
PowerBuilder线程使用中的一个坑
PowerBuilder shared 线程原创 2021-11-23 15:36:48 · 1060 阅读 · 0 评论 -
PB的扩展DLL开发(超级篇)(四)
PB的扩展DLL开发(超级篇)(四)(PB史上第一次开放的开发技术)前面已介绍过OB_THIS和OB_DATA这两个结构。本章介绍如何获取到PB里传给system library DLL 的各种参数和返回值。一、参数第一个函数:function any GetGlobalVar(string strVarname) system library "PbJson.dll" alias for "GetGlobalVar"这个函数它有个字符串参数,这个参数在DLL里是一个指针,所以取原创 2021-07-14 12:25:27 · 1698 阅读 · 0 评论 -
PB的扩展DLL开发(超级篇)(三)
PB的扩展DLL开发(超级篇)(三)(PB史上第一次开放的开发技术)最核心的一个结构,OB_THIS ,这个在上一章已做过介绍。本章介绍OB_DATA 这个结构。这个结构的重要程度仅次于OB_THIS。OB_DATA是PB里各种类型的数据参数在DLL里的存在形式。你在PB里写的代码例如Int I; long n;string ls_text; window w;….. 这些,对照到C内部的映射,它们全部都是一个OB_DATA指针。在这个函数里__declspec(dllexport) D原创 2021-07-07 12:40:44 · 1346 阅读 · 0 评论 -
PB的扩展DLL开发(超级篇)(二)
PB的扩展DLL开发(超级篇)(二)(PB史上第一次开放的开发技术)上一章里,我们说到system library 里的函数声明为下面这样的方式。__declspec(dllexport) DWORD __stdcall FuncName(POB_THIS obThis,int nArgCount){ BOOL isnull; return 1;}其中第一个参数POB_THIS obThis 是每个函数的核心,本篇重点介绍一下核心结构O...原创 2021-06-25 11:20:46 · 1802 阅读 · 3 评论 -
PB的扩展DLL开发(超级篇)
PB的扩展DLL开发(超级篇)PowerBuilder (pb)作为一个基于数据库的CS开发工具,在功能方面不够全面,需要使用 DLL做功能扩展。通常对PB写DLL,有3种方法。方法1:通用DLL。这种方式的DLL,所有能写标准DLL的语言都可以写。但缺点也比较明显,无法直接访问PB对象和属性、事件这些个性内容,不合适直接返回字符串,通过参数返回数据时,需要预分配内存,如果计算错误,会导致程序崩溃。方法2:PBNI法(PowerBuilder Native Interface),即官方开原创 2021-06-24 17:49:21 · 5147 阅读 · 2 评论 -
datawindow 如何根据鼠标位置取得行号和列号信息
datawindow 如何根据鼠标位置取得行号和列号信息datawindow 鼠标响应事件中,根据鼠标位置获取所在的行号和列号的未内置未公开方法:function boolean GetRowColUnderPoint)(ulong handle,long x, long y, ref long row, ref int col) library "pbdwe90.dll" alias for "dwGetRowColUnderPoint"具体其他版本,自己修改"pbdwe90.dll"为相应版本D原创 2020-12-25 10:23:50 · 704 阅读 · 0 评论 -
关于PowerBuilder开发过程中的变量声明的一个坑
关于PowerBuilder开发过程中的变量声明的一个坑PowerBuilder的变量声明随意性比较大,因而就有人一不小心为此挖坑,导致有出现问题而莫名其妙。本文就简单分析一下原因。先举一小段例子:Int iFor i = 1 to 3 Int n = iMessageBox("",n)Next这段代码很典型。大家可以很思考一下,MessageBox会显示3次,分别显示的是什么内容呢?也许你所预料的应该是显示1、2、3,然而事实与你预想大相径庭,实际上3次都会显示0。为什么会这...原创 2020-12-05 09:44:59 · 1504 阅读 · 4 评论 -
关于PowerBuilder中的字符集问题
关于PowerBuilder中的字符集问题搞PB的人,很多对字符集编码这个东西不理解。即使看了网上的文章,还是不懂。比如https://blog.csdn.net/qq_28098067/article/details/53486032这篇文章,就是非常好的一篇介绍字符集的文章。大家可以先耐心看一下这篇文章。本文不研究高深的字符集问题,仅仅就PowerBuilder里字符集使用问题,作一个简介。在PB里的字符串处理,我们熟悉的就是 ...原创 2020-12-03 14:15:07 · 5948 阅读 · 4 评论 -
关于PB里 reference value readonly 3 种参数引用类型
本题目从一小段代码开始://====================================================================// Function: uo_tabpage_xml.of_print_xml_nodes//--------------------------------------------------------------------// 描述://-------------------------------------------.原创 2020-07-15 14:57:12 · 2615 阅读 · 0 评论 -
介绍一个PB直接读 .xlsx 的方法
.xlsx 实际上是ZIP格式文件,完全可以当作 ZIP 文件来处理。然后直接用uo_zip解压它为指定文件,或者直接当作blob读出来,都可以。在各PB群里,找到我的PB_Json_httpclient_crypto_ftp_xxxxxx.rar 包,里面有个 uo_zip 对象。1. 打开它:zip.open("c:\temp\Book1.xlsx",false,"")2.zip 事件 ue_open 里读列表//取出ZIP文件里的列表long index[]strin...原创 2020-06-22 11:58:59 · 2887 阅读 · 1 评论 -
PB直连数据库接口分析和自定义数据接口名称方法
经我研究发现,要给特定版本的PB加数据接口,还是挺方便的。具体如下:g_sql = create uo_sqlplusg_sql.DBMS = "DZZ 大自在数据接口"g_sql.Database = "db"g_sql.LogPass = "pass"g_sql.ServerName = "1.1.1.1"g_sql.LogId = "sa"g_sql.AutoCommit = Falseg_sql.DBParm = ""connect using g_sq.原创 2020-05-18 09:05:49 · 747 阅读 · 0 评论