lxb320124 / pbidea

This is a set of potentially powerful PowerBuilder function extension library, including JSON, XML, httpclient, encryption / decryption, webapi client / server, websocket client / server, FTP / SFTP, PDF view, compress / decompress, image processing, chart, map and other particularly easy-to-use functions
42 stars 9 forks source link

Issue with CALLs, Application Crashing #5

Open fergussoftware opened 1 year ago

fergussoftware commented 1 year ago

I am not able to use PBIdea.dll from VB6 or any other win32 application that is supporting external win API techniques. For example, the PING function is crashing the application. I tried PBIDea.dll for PB9 and PB10 as well. Also one quick question regarding the declaration of the PING function in the PB environment. function int Ping(readonly string ip,int count,long timeoutMS) system library "PbIdea.dll" alias for "Ping" What is the role of the keyword system in this declaration. thanks Devang (India) devang@teaksi.com devang.modi14@gmail.com

lxb320124 commented 1 year ago

system library ,it means that is pb self method. example: pb's function : integer MessageBox ( title, text {, icon {, button {, default } } } ) you can declare as: function integer MsgBox(string title,string text) system library "PBVM90.dll" alis for "MessageBox" it invoke function MessageBox from PBVM90.dll as MsgBox MsgBox("my title", "my text") equate MessageBox("my title", "my text")

you can visit my blog: PB的扩展DLL开发(超级篇)_pbfunc.dll 分享_lxbin2003的博客-CSDN博客 https://blog.csdn.net/lxbin2003/article/details/118193313 PB的扩展DLL开发(超级篇)(二)_pb gzip.dll_lxbin2003的博客-CSDN博客 https://blog.csdn.net/lxbin2003/article/details/118214878 PB的扩展DLL开发(超级篇)(三)_pb大自在_lxbin2003的博客-CSDN博客 https://blog.csdn.net/lxbin2003/article/details/118544277 ......

fergussoftware @.***> 于2023年2月23日周四 13:25写道:

I am not able to use PBIdea.dll from VB6 or any other win32 application that is supporting external win API techniques. For example, the PING function is crashing the application. I tried PBIDea.dll for PB9 and PB10 as well. Also one quick question regarding the declaration of the PING function in the PB environment. function int Ping(readonly string ip,int count,long timeoutMS) system library "PbIdea.dll" alias for "Ping" What is the role of the keyword system in this declaration. thanks Devang (India)

— Reply to this email directly, view it on GitHub https://github.com/lxb320124/pbidea/issues/5, or unsubscribe https://github.com/notifications/unsubscribe-auth/AVMZNTYTLMHW7LSWCNR7PFDWY3YGNANCNFSM6AAAAAAVFFMZZE . You are receiving this because you are subscribed to this thread.Message ID: @.***>

fergussoftware commented 1 year ago

Thank you for your reply Do I believe that the pbidea dll will work from pb only. Let's assume what if I wish to use it from Openedge Or VB6? Devang

On Sat, 1 Apr, 2023, 8:36 pm 大自在,QQ:781770213, @.***> wrote:

system library ,it means that is pb self method. example: pb's function : integer MessageBox ( title, text {, icon {, button {, default } } } ) you can declare as: function integer MsgBox(string title,string text) system library "PBVM90.dll" alis for "MessageBox" it invoke function MessageBox from PBVM90.dll as MsgBox MsgBox("my title", "my text") equate MessageBox("my title", "my text")

you can visit my blog: PB的扩展DLL开发(超级篇)_pbfunc.dll 分享_lxbin2003的博客-CSDN博客 https://blog.csdn.net/lxbin2003/article/details/118193313 PB的扩展DLL开发(超级篇)(二)_pb gzip.dll_lxbin2003的博客-CSDN博客 https://blog.csdn.net/lxbin2003/article/details/118214878 PB的扩展DLL开发(超级篇)(三)_pb大自在_lxbin2003的博客-CSDN博客 https://blog.csdn.net/lxbin2003/article/details/118544277 ......

fergussoftware @.***> 于2023年2月23日周四 13:25写道:

I am not able to use PBIdea.dll from VB6 or any other win32 application that is supporting external win API techniques. For example, the PING function is crashing the application. I tried PBIDea.dll for PB9 and PB10 as well. Also one quick question regarding the declaration of the PING function in the PB environment. function int Ping(readonly string ip,int count,long timeoutMS) system library "PbIdea.dll" alias for "Ping" What is the role of the keyword system in this declaration. thanks Devang (India)

— Reply to this email directly, view it on GitHub https://github.com/lxb320124/pbidea/issues/5, or unsubscribe < https://github.com/notifications/unsubscribe-auth/AVMZNTYTLMHW7LSWCNR7PFDWY3YGNANCNFSM6AAAAAAVFFMZZE

. You are receiving this because you are subscribed to this thread.Message ID: @.***>

— Reply to this email directly, view it on GitHub https://github.com/lxb320124/pbidea/issues/5#issuecomment-1492999450, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB5MUJXO4S6FFXHS3HCK4PTW7A76XANCNFSM6AAAAAAVFFMZZE . You are receiving this because you authored the thread.Message ID: @.***>

lxb320124 commented 1 year ago

yes,pbidea is only use for pb. What functions or objects do you need to use? There are some standard functions ,it like WINAPI,But I not exposed they。 example: private: function ulong CreateJson() library "PbIdea.dll" alias for "stdjsonCreate" subroutine DestroyJson(ulong jsonHandle) library "PbIdea.dll" alias for "stdjsonDestroy" function boolean Parse(ulong jsonHandle,string json) library "PbIdea.dll" alias for "stdjsonParse" function boolean ParseFile(ulong jsonHandle,string jsonFile) library "PbIdea.dll" alias for "stdParseFile" function boolean WriteFile(ulong jsonHandle,string jsonFile,boolean bFormat) library "PbIdea.dll" alias for "stdjsonWriteFile" function ulong GetStringLen(ulong jsonHandle,boolean bFormat, boolean bCrLn) library "PbIdea.dll" alias for "stdjsonGetStringLen" function ulong GetString(ulong jsonHandle,boolean bFormat, boolean bCrLn,ref string lpBuffer,ulong nBufferLen) library "PbIdea.dll" alias for "stdjsonGetString" function boolean SetUTF8(ulong jsonHandle,ref blob buffer,int bufferLen) library "PbIdea.dll" Alias for "stdjsonSetUTF8" function long GetUTF8(ulong jsonHandle,ref blob buffer,int bufferLen) library "PbIdea.dll" Alias for "stdjsonGetUTF8" Function boolean Clear(ulong jsonHandle) library "PbIdea.dll" Alias for "stdjsonClear" Function boolean GetError (ulong jsonHandle, ref String strError) library "PbIdea.dll" Alias for "stdjsonGetError" Subroutine SetObject (ulong jsonHandle) library "PbIdea.dll" Alias for "stdjsonSetObject" Subroutine SetArray (ulong jsonHandle) library "PbIdea.dll" Alias for "stdjsonSetArray"

//webservice 里要这样声明 //对象 function boolean SetNull (ulong jsonHandle,string key) library "PbIdea.dll" alias for "stdjsonSetNull" function boolean SetString (ulong jsonHandle,string key,string value) library "PbIdea.dll" alias for "stdjsonSetString" function boolean SetInt (ulong jsonHandle,string key,int value) library "PbIdea.dll" alias for "stdjsonSetInt" function boolean SetLong (ulong jsonHandle,string key,long value) library "PbIdea.dll" alias for "stdjsonSetLong" function boolean SetDouble (ulong jsonHandle,string key,double value) library "PbIdea.dll" alias for "stdjsonSetDouble" function boolean SetBoolean(ulong jsonHandle,string key,boolean value) library "PbIdea.dll" alias for "stdjsonSetBoolean" function boolean SetJson (ulong jsonHandle,string key,ulong hSubJson) library "PbIdea.dll" alias for "stdjsonSetJson" function boolean SetBytes (ulong jsonHandle,string key,string fileName) library "PbIdea.dll" alias for "stdjsonSetBytes"

//数组 function boolean SetStringArray (ulong jsonHandle,string value) library "PbIdea.dll" alias for "stdjsonSetStringArray" function boolean SetIntArray (ulong jsonHandle,int value) library "PbIdea.dll" alias for "stdjsonSetIntArray" function boolean SetLongArray (ulong jsonHandle,long value) library "PbIdea.dll" alias for "stdjsonSetLongArray" function boolean SetDoubleArray (ulong jsonHandle,double value) library "PbIdea.dll" alias for "stdjsonSetDoubleArray" function boolean SetBooleanArray(ulong jsonHandle,boolean value) library "PbIdea.dll" alias for "stdjsonSetBooleanArray" function boolean SetJsonArray (ulong jsonHandle,ulong hSubJson) library "PbIdea.dll" alias for "stdjsonSetJsonArray"

// function long GetStringValue(ulong jsonHandle, string key,ref string buffer,int bufferLen) library "PbIdea.dll" Alias for "stdjsonGetStringValue" function long GetLongValue(ulong jsonHandle, string key) library "PbIdea.dll" Alias for "stdjsonGetLongValue" function longlong GetLongLongValue(ulong jsonHandle, string key) library "PbIdea.dll" Alias for "stdjsonGetLongLongValue" function double GetDoubleValue(ulong jsonHandle, string key) library "PbIdea.dll" Alias for "stdjsonGetDoubleValue" function boolean GetBooleanValue(ulong jsonHandle, string key) library "PbIdea.dll" Alias for "stdjsonGetBooleanValue" function ulong GetJsonValue(ulong jsonHandle, string key) library "PbIdea.dll" Alias for "stdjsonGetJsonValue"

fergussoftware @.***> 于2023年4月2日周日 09:43写道:

Thank you for your reply Do I believe that the pbidea dll will work from pb only. Let's assume what if I wish to use it from Openedge Or VB6? Devang

On Sat, 1 Apr, 2023, 8:36 pm 大自在,QQ:781770213, @.***> wrote:

system library ,it means that is pb self method. example: pb's function : integer MessageBox ( title, text {, icon {, button {, default } } } ) you can declare as: function integer MsgBox(string title,string text) system library "PBVM90.dll" alis for "MessageBox" it invoke function MessageBox from PBVM90.dll as MsgBox MsgBox("my title", "my text") equate MessageBox("my title", "my text")

you can visit my blog: PB的扩展DLL开发(超级篇)_pbfunc.dll 分享_lxbin2003的博客-CSDN博客 https://blog.csdn.net/lxbin2003/article/details/118193313 PB的扩展DLL开发(超级篇)(二)_pb gzip.dll_lxbin2003的博客-CSDN博客 https://blog.csdn.net/lxbin2003/article/details/118214878 PB的扩展DLL开发(超级篇)(三)_pb大自在_lxbin2003的博客-CSDN博客 https://blog.csdn.net/lxbin2003/article/details/118544277 ......

fergussoftware @.***> 于2023年2月23日周四 13:25写道:

I am not able to use PBIdea.dll from VB6 or any other win32 application that is supporting external win API techniques. For example, the PING function is crashing the application. I tried PBIDea.dll for PB9 and PB10 as well. Also one quick question regarding the declaration of the PING function in the PB environment. function int Ping(readonly string ip,int count,long timeoutMS) system library "PbIdea.dll" alias for "Ping" What is the role of the keyword system in this declaration. thanks Devang (India)

— Reply to this email directly, view it on GitHub https://github.com/lxb320124/pbidea/issues/5, or unsubscribe <

https://github.com/notifications/unsubscribe-auth/AVMZNTYTLMHW7LSWCNR7PFDWY3YGNANCNFSM6AAAAAAVFFMZZE

. You are receiving this because you are subscribed to this thread.Message ID: @.***>

— Reply to this email directly, view it on GitHub https://github.com/lxb320124/pbidea/issues/5#issuecomment-1492999450, or unsubscribe < https://github.com/notifications/unsubscribe-auth/AB5MUJXO4S6FFXHS3HCK4PTW7A76XANCNFSM6AAAAAAVFFMZZE

. You are receiving this because you authored the thread.Message ID: @.***>

— Reply to this email directly, view it on GitHub https://github.com/lxb320124/pbidea/issues/5#issuecomment-1493194977, or unsubscribe https://github.com/notifications/unsubscribe-auth/AVMZNT5YN35ZZ7TPRUIKPGTW7DKUVANCNFSM6AAAAAAVFFMZZE . You are receiving this because you commented.Message ID: @.***>