Short Update:

I finally solved my problem by
a) reverse engineering the IDL file --> VC++ Express 2005 has midl compiler
and so everything works fine on the COM side. I did not require MFC/ATL that
is not shipped with the express editions.
b) create a simple class using the jsrvr.h/cpp code available at
system\examples\ole\cpp
c) synchronizing using threads on the VC++ client side.

Since I have put this into a rigorous load test, I have to still check if my
multi-threading code works fine and what I can further optimise.

Thanks,
Yuva

p.s: Since the IDL is helpful, it would help to package it with the
installation. Thanks.

On Thu, Nov 6, 2008 at 9:46 PM, Oleg Kobchenko <[EMAIL PROTECTED]> wrote:

> Those are portable entries. The ones you list from COM
> interface are Windows-specific. They are in fact variations
> of GetA/SetA only with different params.
>
> Their definitions can be derived from the COM interface.
> However, working with the struct J is as easy. What are
> your concerns?
>
> As you may have realized working with intput/output streams
> are only necessary if you wish to emulate session, and can
> be done without for regular call-based processing.
>
>
>
> > From: Yuvaraj Athur Raghuvir <[EMAIL PROTECTED]>
> >
> > This is what I have with me (from jlib.h in jfe)
> >
> > J _stdcall JInit();                         /* init instance */
> > void _stdcall JSM(J jt, void*callbacks[]);  /* set callbacks */
> > int _stdcall JDo(J jt,C*);                  /* run sentence */
> > C* _stdcall JGetLocale(J jt);               /* get locale */
> > int _stdcall JFree(J jt);                   /* free instance */
> > A _stdcall JGetA(J jt,I n,C* name);         /* get 3!:1 from name */
> > I _stdcall JSetA(J jt,I n,C* name,I x,C* d);/* name=:3!:2 data */
> >
> > What are the corresponding signatures for SetB, GetB, SetM, GetM and the
> > rest of the APIs that the dll exposes?
> >
> > I refer to GetM since that is used in the dll.ijs code.
> >
> > I am working on windows.
> >
> > ~Yuva
> >
> >
> > On Thu, Nov 6, 2008 at 12:17 PM, Raul Miller wrote:
> >
> > > On Thu, Nov 6, 2008 at 3:00 PM, Yuvaraj Athur Raghuvir
> > > wrote:
> > > > 1) I miss the entire list of calls I can make to the JDLL (including
> > > > signature). Where can I find that? ( I have the COM version in jdll.h
> /
> > > > jexe.h in the ole sample)
> > >
> > > Which calls do you think you are missing?
> > >
> > > Conceptually, you need a pair for startup/shutdown, you need
> > > a pair to set and read variables, you need one to execute
> > > sentences, and you might need a few others for debug
> > > purposes.
> > >
> > > Since startup seems to be handled for me automatically, the
> > > calls I use for these purposes are:
> > > .Quit()
> > > .SetB(,)
> > > .GetB(,)
> > > .Do()
> > > .Log()
> > > .Show()
> > > .ErrorTextB(,)
> > >
> > > But since I am not using C, my going into further details might
> > > be less than helpful.
> > >
> > > > 2) I want to push data into JDLL and retrieve the data back as and
> when I
> > > > want. Here I have a variety of JGet* calls. How do I know when to use
> > > what?
> > > > Further, is it necessary to have the Joutput callback set for such a
> use
> > > > case?
> > >
> > > I get non-zero results from Do, from GetB and from SetB when J is
> > > unhappy with what I have done (like, when it does not recognize
> > > the data I have passed).  With these calls, J is getting the windows
> > > type information associated with the underlying data, and can
> > > interpret types at runtime.  I am not sure how or if I would make
> > > these calls work under Linux, since gcc does not seem to provide
> > > a similar underlying facility.
> > >
> > > I think the alternative Get/Set calls are for people who want to
> > > deal with type information manually.  That's not necessarily a
> > > bad thing, but that's not what I currently use.
> > >
> > > --
> > > Raul
> > > ----------------------------------------------------------------------
> > > For information about J forums see http://www.jsoftware.com/forums.htm
> > >
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
>
>
>
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to