Hi Alex,

..I can only say:


#if defined(__midl)


looks wierd to me...

Please disregard some of my comments related to inline functions. I'm not an
expert. I'm not sure why the compiler thinks something is being declared in
an inline function

here is some notes on inlining...
http://en.wikipedia.org/wiki/Inline_function


Steve


On 7/18/08, Steve D'Sa <[EMAIL PROTECTED]> wrote:
>
> 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




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

Reply via email to