EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  <20032004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  <20032004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: RE: Help to do an Epics Channel client DLL
From: "Jeff Hill" <[email protected]>
To: "'Renata Krempaska'" <[email protected]>, <[email protected]>
Cc: "Chris Timossi" <[email protected]>
Date: Tue, 6 May 2003 07:46:57 -0600
On windows, C functions callable from visual basic must be
declared with the __stdcall keyword. In EPICS base many library
entry points are declared with the epicsShareAPI keyword which
expands to __stdcall in the C preprocessor on windows. For
example, almost all of the ca.dll and Com.dll entry points are
declared this way and therefore all of them should be directly
callable from visual basic. 

I notice that my copy of ezca has many functions that are
declared with epicsShareAPI, but I don't know if they have ever
been successfully called from visual basic.

> CaRepeater.EXE (what is the meaning of this exe ?)

>From the R3.14 CA reference manual:
When several client processes run on the same host it is not
possible for all of them to directly receive a copy of the server
beacon messages when the beacon messages are sent to unicast
addresses, or when legacy IP kernels are still in use. To avoid
confusion over these restrictions a special UDP server, the CA
Repeater, is automatically spawned by the CA client library when
it is not found to be running. This program listens for server
beacons sent to the UDP port specified in the
EPICS_CA_REPEATER_PORT parameter and fans any beacons received
out to any CA client program running on the same host that have
registered themselves with the CA Repeater. If the CA Repeater is
not already running on a workstation, then the "caRepeater"
program must be in your path before using the CA client library
for the first time. If a host based IOC is run on the same
workstation with standalone CA client processes, then it is
probably best to start the caRepeater process when the
workstation is booted. Otherwise it is possible for the
standalone CA client processes to become dependent on a CA
repeater started within the confines of the host based IOC. As
long as the host based IOC continues to run there is nothing
wrong with this situation, but problems could arise if this host
based IOC process exits before the standalone client processes
which are relying on its CA repeater for services exit.

Jeff

> -----Original Message-----
> From: Renata Krempaska [mailto:[email protected]]
> Sent: Tuesday, May 06, 2003 6:55 AM
> To: [email protected]
> Subject: Help to do an Epics Channel client DLL
> 
> Hi,
> 
> We need some help on windows here. We are trying to create a
> DLL or
> re-use some already existing one, in order to get/set channels
> from a
> visual basic application.
> 
> We tried EZCA.DLL (the one provided for EZCAIDL) but was
> unsuccessfull.
> We tried then to create our own DLL (using CA.DLL and COM.DLL
> CaRepeater.EXE (what is the meaning of this exe ?)) but even if
> we
> manage to create a console application, when we try to create
> and then
> call the DLL from a VB application, VB crash.
> 
> We did not found any developers docs, neither sources about
> EZCA on windows.
> 
> Can someone help us ?
> 
> Thanks.
> --
> 
> 
>                                     [email protected]
>       _/_/_/  _/   _/_/_/          Computing & Controls
>      _/      _/   _/              Paul Scherrer Institute
>       _/_/  _/     _/_/          CH-5232 Villigen-PSI
>          _/_/         _/        Tel: ++41 56 310 5124
>   _/_/_/_/_/_/_/__/_/_/
> http://people.web.psi.ch/krempaska/



References:
Help to do an Epics Channel client DLL Renata Krempaska

Navigate by Date:
Prev: Re: Help to do an Epics Channel client DLL Ralph Lange
Next: RE: Help to do an Epics Channel client DLL Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  <20032004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: Help to do an Epics Channel client DLL Ralph Lange
Next: RE: Help to do an Epics Channel client DLL Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  <20032004  2005  2006  2007  2008  2009  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 10 Aug 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·