powerbuilder防反编译: pbkiller无法解析的部分公布[1]

powerbuilder防反编译: pbkiller无法解析的部分公布[1],第1张

powerbuilder防止反编译 pbkiller无法解析longlong类型而且错得一塌糊涂

pbkiller 无法解析longlong类型 一旦你申明longlong类枣含贺型无法反编译出类型 值也不对 因为longlong采用类似指针的方式存放值

只要在代码中如此写

int aaa =

long bbb =

longlong ccc =

boolean ddd = false

datawindow dwx

aaa =

bbb =

 凳派 ccc = ((((((aaa + ccc *aaa + ccc))))))

return

反编译出来是

integer aaa =

long bbb =

ccc =

boolean ddd = false

datawindow dwx

aaa =

bbb =

ccc mit using aaa

aaa pbm_bmgetstate mit using pbm_bmgetstate

return

return

return

补充

老如同样的 只要出现longlong类型的字面量 都会出现解析不到的问题

source:

return

return

return

return

return

return

return

return

return

return

return

return

return

return

return

return

return

return

return

return

反编译后

do

do

do

do

do

return

return

return

return

return

return

return

return

return

return

return

return

destroy(?????)

return

return

return

return

return primary

return

return

loop while

loop while       

loop while

loop while

loop while

return

/*================*/

:今天在写一个demo时 发现pbkiller在解析参引对象列表时存在问题

type strc_ from structure

blob  aaa

blob  aaax[ ]

blob  aaay[ ]

blob  aaa

blob  aaa

boolean  bbb

char  ccc

date  eee

datetime  fff

decimal  ggg

decimal  ggg

decimal  ggg

decimal  ggg

decimal  ggg

lishixinzhi/Article/program/PB/201311/24579

只要在代码中如此改并瞎写:

int aaa =100

long bbb = 1000

longlong ccc = 20000

boolean ddd =

false

datawindow dwx

aaa = 2 - 3

bbb = 1 -2

ccc = ((((((aaa + ccc *aaa + ccc))))))

return 1

反蔽塌编核空译出来是:

integer aaa = 100

long bbb = 1000

ccc = 8

boolean ddd =

false

datawindow dwx

PB编译有三种主要结果

1是只祥羡灶有exe

2是exe和pbd

3是exe和dll

这都是编译时可以勾选的

你把这些代码都导出来,导入pbl中,然后在编译的时候派山选择exe和dll方式就可以了,具体 *** 作参考你那个版本的PB书

多说一句,反谨扮编译不是个很简单的事,出什么错误都是正常的


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12395347.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存