B4J Question [Nicely SOLVED] B4J Packager, Java 586/x64 different behaviors

lemonisdead

Well-Known Member
Licensed User
Longtime User
Hello,

@Cableguy done me the honour of allowing me to work on one of his projects, because we had generated the Windows exe using different versions of Java. From the same package, depending on the Java version used, some pictures were not displayed.

What we have noticed :
  • exe produced on Windows 10 32 bits, jdk 32 bits :
    • images shown on Windows 32 bits
    • images hidden on Windows 64 bits
  • exe produced on Windows 10 64 bits, jdk 64 bits :
    • images shown on Windows 64 bits
  • exe produced on Windows 10 64 bits, jdk 32 bits (64 bits jdk and jre uninstalled) :
    • images hidden on Windows 64 bits
Please do you know the reason why we have got those differences ? In any case : the .jar is displaying the images.

Many thanks for any tip
 

Daestrum

Expert
Licensed User
Longtime User
So the jar runs ok, it's only when packaged it fails ?
Sounds like you need two versions , one for 64bit and one for 32bit.
 
Upvote 0

Cableguy

Expert
Licensed User
Longtime User
Both versions are available in the B4X-Launcher thread
 
Upvote 0

Erel

B4X founder
Staff member
Licensed User
Longtime User
I'll put on my Sherlock Holmes hat and explain why it fails.

The first step is to run the jar directly:
SS-2016-03-03_09.31.09.png


The images didn't appear.
It is a bit surprising as I actually ran it with the 64bit java.

I thought that the problem was related to the indexoutofbounds errors.
As Program Files is a restricted folder I decided to run it from a different folder and it did work this time.
The indexoutofbounds errors still appear. However this time the CSS warnings didn't appear.

After taking a closer look at the CSS warnings I realized that the problem is actually from the parentheses in Program Files (x86).

When you install the 32 bit on a 32 bit computer it is installed in Program Files. The same is true when you install the 64 bit on a 64 bit computer.

The bug is in jFX library. It doesn't escape the parentheses in the image URI. I will soon post an updated jFX.
 
Upvote 0

lemonisdead

Well-Known Member
Licensed User
Longtime User
Hello Mr Sherlock Holmes (@Erel)
Please, we would need your help again : I have packaged and lost the image at the top right

Win 10 64 bits, Jdk 1.8.0_74 32 bits only. Many thanks

b4xlauncher.png
 
Upvote 0

lemonisdead

Well-Known Member
Licensed User
Longtime User
All the images are displayed (reason why I ask for your help again). Thanks
 
Upvote 0

lemonisdead

Well-Known Member
Licensed User
Longtime User
Yes, please ... (44 MB - the ZIP archive includes the installer and the original jar).
Of course, I use jFX 4.23
 
Last edited:
Upvote 0

Cableguy

Expert
Licensed User
Longtime User
Does this happen with my version 1.2?
 
Upvote 0

lemonisdead

Well-Known Member
Licensed User
Longtime User
Does this happen with my version 1.2?
Yes. In fact I did discover this with a project of mine I did packaged. After that I have tested with your version (downloaded from the forum's link) and even have tried to compile your project from my version with a 32 bits Java. In all cases, the Jar file is displaying the images, not the packaged one
 
Upvote 0

Cableguy

Expert
Licensed User
Longtime User
Thanks for the info, will continue to follow this thread
 
Upvote 0

Cableguy

Expert
Licensed User
Longtime User
Its loaded directly in thé designer
 
Upvote 0
Top