Hi Curt...

 



 
This e-mail message, and any attachments, is intended only for the use of the 
individual or entity identified in the alias address of this message and may 
contain information that is confidential, privileged and subject to legal 
restrictions and penalties regarding its unauthorized disclosure and use. Any 
unauthorized review, copying, disclosure, use or distribution is strictly 
prohibited. If you have received this e-mail message in error, please notify 
the sender immediately by reply e-mail and delete this message, and any 
attachments, from your system. Thank you. 

________________________________


>The missing include files are likely the output of javah and are
therefore derived from the corresponding Java files and are not included
in the distribution.  

 

>If you look at src/ntdll/build.xml, the build sequence should be fairly
obvious.  The Win32 NTEventLogAppender.dll is built using MinGW to allow
the release to be built without requiring developers to have a license
of some particular version of Microsoft Visual Studio.  However, I do
not know of a free compiler for Win64.

 

            Thanks for the response.  After I posted, I'd done some more
googling around and got led to the same conclusion.  I started putting
together a Visual Studio project for it but then ran across an
interesting problem.

 

            The event log appender code is treating HANDLE as jint which
works okay on a 32 bit environment (aside from a sign issue) since the
jdk in includes\win32\jni_md.h defines jint as long.  The problem is
that the jni_md.h that comes with the windows 64-bit jvm *still* defines
jint as long, so HANDLE (a pointer) won't fit in a jint on the 64 bit
system.

 

            Seems like the easiest way to make NtEventLogAppender 64-bit
compatible is to change the log4j jni code to use jlong to hold/deal
with HANDLEs.   It wastes a few bits on the 32-bit platform but lets you
move back and forth.

 

Thanks

Mark

Reply via email to