[izpack-devel] Native Libraries for Win 64-bit ?

Vladimir Ralev vralev at redhat.com
Sun Jun 24 13:41:21 CEST 2007

BTW, I just managed to port ShellLink to run in 64 bit JVM. One 
potential problem is that it's only compatible with amd64 and em64, but 
not itanium. In order to make the solution more generic I modified the 
Librarian class:

1. The Librarian attempts to load libname.dll
2. If the fails it tries libname_x64.dll

So for every 32 bit dll you can have a 64 bit version. Of course an 
alternative would be to use os.arch suffix, but it's harder to test it 
reliably. OK with everyone?

Vladimir Ralev написа:
> I wonder if we can get around this by using some command line utility to 
> create shortcuts and execute it in it's own process. In this case the 
> WOW should pick it up correctly as a 32bit app. I found a few CLI apps 
> that could do the job, but they are closed source and might have 
> licensing issues:
> http://www.nirsoft.net/utils/nircmd.html
> http://www.ss64.com/nt/shortcut.html
> Of course we can port the existing code as a CLI app to work around it.
> Markus Schlegel написа:
>> HI Klaus, thanks for you reply.
>> When I tried to compile JDIC for 64-bit, I realized 5 minutes ago, 
>> that the compiler may be the source of the problem.
>> So I don't have too look for the reason any longer, thanks.
>> So it seems, that I have no chance to compile it myself, because I 
>> don't know MS-VC++ enough.
>> What should be done?
>> 1. Make the native parts of IzPack compilable with VC++2005 (32-bit)
>> 2. Compile for 64bit
>> Until then, we will ship with the Win32-JRE on all windows and then 
>> copy a win64-VM into the installation, overwrite the win32 files.
>> Markus
>> 2007/4/20, Bartz, Klaus < Klaus.Bartz at coi.de 
>> <mailto:Klaus.Bartz at coi.de>>:
>>     Hi Markus,
>>     the problem is not a different platform SDK else the compiler self.
>>     Both dlls are made with MS Visual C++ 6.0 Enterprise Edition
>>     without a platform SDK., but including
>>     the header files from a JDK; at buildtime from 1.4.2_6, but
>>     1.5.0_11 should also work.
>>     In the moment it compiles and links without any error or warning
>>     for all four configurations.
>>     The version of the used MS Visual Studio you can see in the
>>     configuration file COIOSHelper.dsw
>>     The first line is
>>     Microsoft Developer Studio Workspace File, Format Version 6.00
>>     If you have used it with Version 8 (or 2005, as you like) VS has
>>     called for converting it.
>>     I assume, that it is not possible to create the 64 bit dll with VS
>>     6.0.
>>     The problem with the new one is, that MS makes a macroitis and has
>>     changed something deep in the
>>     header chain. Some days ago I have seen the same error messages.
>>     It will be not enough to insert
>>     casts because the have differ between unicode and non-unicode. I
>>     have not tested to create 64 bit
>>     dlls. I assume there will be more problems. The project file do
>>     not contain explicit sections for 64 bit.
>>     If I can, I will spend some time for this point, if not some one
>>     else has done it. But in the moment
>>     there are other things on the top of my stack.
>>     Cheers
>>     Klaus
>>         -----Original Message-----
>>         *From:* izpack-devel-bounces at lists.berlios.de
>>         <mailto:izpack-devel-bounces at lists.berlios.de>
>>         [mailto:izpack-devel-bounces at lists.berlios.de
>>         <mailto:izpack-devel-bounces at lists.berlios.de>] *On Behalf Of
>>         *Markus Schlegel
>>         *Sent:* Friday, April 20, 2007 2:31 PM
>>         *To:* izpack-devel
>>         *Subject:* Re: [izpack-devel] Native Libraries for Win 64-bit ?
>>         I have now installed "MSVisualC++ 2005" and the "Windows®
>>         Server 2003 R2 Platform SDK".
>>         I can open the projects for the native libraries, but compile
>>         fails.
>>         When I try to compile (Win 32) ShellLink.dll and
>>         COIOSHeper.dll, errors of the following kind are generated:
>>         c:\deron\3rdparty\izpack_3.10\src\native\shelllink\shelllink.cpp(409)
>>         : error C2440: 'Initialisierung': 'const jchar *' kann nicht
>>         in 'const TCHAR *' konvertiert werden
>>         Die Typen, auf die verwiesen wird, sind nicht verknüpft; die
>>         Konvertierung erfordert einen reinterpret_cast-Operator oder
>>         eine Typumwandlung im C- oder Funktionsformat.
>>         It seems so, that the Platform SDK I use is not compatible
>>         with the one the original developer has used. But I can't find
>>         any documentation on which SDK to use.
>>         When I try to compile COIOSHelper.dll, many other errors will
>>         also be generated.
>>         Anyone with exerience in compiling the native parts?
>>         Thanks for any hint
>>         Markus
>>         2007/4/18, Markus Schlegel <schlm3 at gmail.com
>>         <mailto:schlm3 at gmail.com>>:
>>             Hi Julien, Klaus, Developers
>>             Rigth now, I am working on the 64-bit release of our Java
>>             Application.
>>             Most of the things are working well, except all dll's that
>>             are used must be compiled for 64-bit windows.
>>             Since IzPack (and my installer) uses COIOShelper.dll and
>>             ShellLink.dll, I have to provide a 64-bit compilation of
>>             those two dll's for my 64-bit installer.
>>             Could you please give me advice on what tools I have to
>>             install in order that I could compile the libraries for
>>             64-bit OS?
>>             Or is it even possible, that you can compile it for 64-bit
>>             too (I do not know if this is possible from a 32-bit windows)?
>>             Notice, that I don't have much experiance in compiling
>>             native applications on the commandline and I don't have
>>             and MS Visual Studio installed....
>>             Thanks for your help
>>             Markus
>>     _______________________________________________
>>     izpack-devel mailing list
>>     izpack-devel at lists.berlios.de <mailto:izpack-devel at lists.berlios.de>
>>     https://lists.berlios.de/mailman/listinfo/izpack-devel
>>     <https://lists.berlios.de/mailman/listinfo/izpack-devel>
>> ------------------------------------------------------------------------
>> _______________________________________________
>> izpack-devel mailing list
>> izpack-devel at lists.berlios.de
>> https://lists.berlios.de/mailman/listinfo/izpack-devel
> _______________________________________________
> izpack-devel mailing list
> izpack-devel at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/izpack-devel

More information about the izpack-devel mailing list