Re: Accessing EHLLAPI DLL files
- Posted by pete_stoner at btconnect.com Sep 11, 2003
- 603 views
Hi Jonas, Kind of, I'm trying to wrap the emulator functions for the IBM Personnal Communications so I can get and send data from/to a 3270 session, but it will be slow work as I am a novice to DLLs and C functions, so I might be back here for more advice... regards Pete ----- Original Message ----- From: "Jonas Temple" <jtemple at yhti.net> To: "EUforum" <EUforum at topica.com> Subject: RE: Accessing EHLLAPI DLL files > > > Pete, > > I'm assuming that you're working with the emulator interface functions > in Client Access from IBM. If so, if you get a working Euphoria wrapper > for this I would be interested in a copy, if it's okay. > > I've wrapped about 90% of the other CA DLLs and wanted to try EHLLAPI > but never got around to it. > > Thanks, > > Jonas Temple > > P.S. - If you're interested in any of the other CA functions you can > find my wrappers at www.yhti.net/~jktemple > pete_stoner at btconnect.com wrote: > > > > > > Hi All, > > I need some help on this, I have some questions on using functions from > > DLL files.. > > I'm trying to reproduce a sample Visual Basic program (I don't know VB!) > > in Euphoria (EHLLAPI DLL stuff). The program needs to use a specific > > (win32) > > DLL file (which I'm also trying for the first time), with Euphoria I've > > successfully called and executed a function in another DLL file (which > > was a > > major step forward for me!!) where I could see the function I am calling > > in > > the DLL (Using Dependency Walker). However I have a problem (or 2) with > > the > > DLL I really need to use. > > > > An excerpt from the reference manual.. > > >The EHLLAPI entry point (hllapi) is always called with the following > > >four > > parameters: > > >1.EHLLAPI Function Number (input) > > >2. Data Buffer (input/output) > > >3. Buffer Length (input/output) > > >4. Position (input); Return Code (output) > > > The prototype for the EHLLAPI is; (long hllapi(LPINT, LPSTR, LPINT, > > LPINT)" > > > Each parameter is passed by reference not by value...... (etc etc) > > > > My first problem is that I always get an error (-1) from my > > define_c_function . The function I am calling is not listed in the DLL I > > have to call, I am assuming that it must be in another DLLs that the > > first > > one links to (?), also the book says I have to call the function by > > number > > (I still don't fully understand if I am defining it correctly) i.e. > > ehlapi = open_dll("EHLAPI32.DLL") > > ConnectPS = define_c_func(ehlapi, "1", {C_INT, C_POINTER, C_INT}, C_INT) > > > > The ref book goes on to say.. > > >All the parameters in the hllapi call are pointers and the return code > > >of > > the EHLLAPI function is returned in the value of the 4th parameter, not > > as > > the value of the function.. > > Which would suggest that I cannot get the return code with just the > > normal > > ret = c_func(ConnectPS.... > > > > Hopefully I've explained this enough (it's tricky when you don't really > > know what you are talking about!!)...Help!! > > . > > > > > --^---------------------------------------------------------------- > This email was sent to: pete_stoner at btconnect.com > > > TOPICA - Start your own email discussion group. FREE! > >