DllCall to WHLLAPI.DLL
Keywords: WHLLAPI.DLL
Question:
I am running WinBatch 97D (32 bit) on Windows 95I am trying to use the WHLLAPI.DLL to connect to a mainframe instance which uses NetSoft NS/Elite Plus 2.2.
The below code gives me a window that is named "INTERNAL DYNALLOC ERROR," and then within this window says "Tag Overwrite 2."
Any suggestions on what my problem is?
; Load the DLL to NetSoft Mainframe Connection dllhandle = DllLoad("c:\Program Files\NetSoft\Elite\UI\whllapi.dll") ; Just to let me know I got it message("Hello",dllhandle) ; Windows HLLAPI version number wVersion = 1.1 ; String containing vendor of the HLLAPI DLL sdescript = '' result = DllCall(dllhandle,word:"WinHLLAPIStartup",word:wVersion,lpstr:sdescript)Answer:
Documentation for the function might help, but it probably is that sdescript is a output parameter. Thay have to be handled differently. In addition it is *very* unusual for word parameters to be used in Win32 - but I think you would have also received a stack error if that was the case. See below for my best guess given no function documentation.; Load the DLL to NetSoft Mainframe Connection dllhandle = DllLoad("c:\Program Files\NetSoft\Elite\UI\whllapi.dll") ; Just to let me know I got it message("Hello",dllhandle) ; Windows HLLAPI version number wVersion = 1.1 ; String containing vendor of the HLLAPI DLL sdescript = '' bb=BinaryAlloc(10000) BinaryEODSet(bb,10000) BinaryPokeStr(bb,0,sdescript) result=DllCall(dllhandle,word:"WinHLLAPIStartup",word:wVersion,lpbinary:bb) sdescript=BinaryPeekStr(bb,0) BinaryFree(bb) Message("sdescript is",sdescript)
Article ID: W12717Filename: DllCall to WHLLAPI.DLL.txt