Hi Alex,

Congrats on getting as far as you did.

I think the declaration of a new data structure REFGUID in an inline
function is not being recognized because the complier options do not allow
it to. I am not an expert on compiler options, but do you know what they
are? Let see if something is missing.

Steve


On 7/17/08, Alex Rufon <[EMAIL PROTECTED]> wrote:
>
> Hi.
>
>
>
> A few years back, I was able to integrated J5 with the Torque Game
> Engine <http://www.garagegames.com>. After 3 hard disk failures, I
> couldn't find the code anymore.
>
>
>
> Since I have J602, I went to the system\examples\ole\cpp\p_jcl directory
> and compiled the project there using Visual Studio .NET 2005. First off,
> the project would not compile because it was referencing jexe_i.c and
> jdll_i.c which does not exist. I deleted those two files and copied the
> contents of system\examples\ole\cpp\p_jcli and appending it to
> system\examples\ole\cpp\p_jcl\jsrv.h. The project would now compile
> properly and you can run the project.
>
>
>
> Looking at how the sample application behaves and the way it was coded,
> I believe that this example project was for J4 or lower. I say this
> because I know for a fact that the way it was coded, it would never be
> able to display the current J session in the screen starting with J5.
>
>
>
> So I took the following files from the CPP example project and added
> them to the latest version of Torque Game Engine:
>
> 1.       Jexe.h
>
> 2.       Jdll.h
>
> 3.       Jsvr.h
>
> 4.       Jsvr.cpp
>
>
>
> Now, my problem is that the compiler is throwing the following error:
>
> 1>c:\program files\microsoft visual studio
> 8\vc\platformsdk\include\guiddef.h(150) : error C2065: 'REFGUID' :
> undeclared identifier
>
> 1>c:\program files\microsoft visual studio
> 8\vc\platformsdk\include\guiddef.h(150) : error C2146: syntax error :
> missing ')' before identifier 'rguid1'
>
> 1>c:\program files\microsoft visual studio
> 8\vc\platformsdk\include\guiddef.h(150) : error C2433:
> 'InlineIsEqualGUID' : 'inline' not permitted on data declarations
>
> 1>c:\program files\microsoft visual studio
> 8\vc\platformsdk\include\guiddef.h(150) : error C2059: syntax error :
> ')'
>
>
>
> Line 150 in the standard library is:
>
> __inline int InlineIsEqualGUID(REFGUID rguid1, REFGUID rguid2)
>
> {
>
>   return (
>
>      ((unsigned long *) &rguid1)[0] == ((unsigned long *) &rguid2)[0]
> &&
>
>      ((unsigned long *) &rguid1)[1] == ((unsigned long *) &rguid2)[1]
> &&
>
>      ((unsigned long *) &rguid1)[2] == ((unsigned long *) &rguid2)[2]
> &&
>
>      ((unsigned long *) &rguid1)[3] == ((unsigned long *) &rguid2)[3]);
>
> }
>
>
>
> But around line 108 in the same file, we have the definition for REFGUID
> as:
>
> #ifndef _REFGUID_DEFINED
>
> #define _REFGUID_DEFINED
>
> #ifdef __cplusplus
>
> #define REFGUID const GUID &
>
> #else
>
> #define REFGUID const GUID * __MIDL_CONST
>
> #endif
>
> #endif
>
>
>
> And around line 27, the GUID constant is defined as:
>
> #ifndef GUID_DEFINED
>
> #define GUID_DEFINED
>
> #if defined(__midl)
>
> typedef struct {
>
>    unsigned long  Data1;
>
>    unsigned short Data2;
>
>    unsigned short Data3;
>
>    byte           Data4[ 8 ];
>
> } GUID;
>
> #else
>
> typedef struct _GUID {
>
>    unsigned long  Data1;
>
>    unsigned short Data2;
>
>    unsigned short Data3;
>
>    unsigned char  Data4[ 8 ];
>
> } GUID;
>
> #endif
>
> #endif
>
>
>
> So now I am stomped. I would appreciate any help/insight/suggestion
> regarding the matter. Thanks.
>
>
>
> r/alex
>
>
>
> P.S.
>
> If you're wondering why I'm trying to get this to work ... I'm replacing
> the math libraries of the game engine and make it use J as it
> calculator.
>
>
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>



-- 
Steve D'Sa
phone: 416 628 7171
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to