This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallAnywhere
- :
- InstallAnywhere Forum
- :
- iawin32.dll and iawin64_x64.dll
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 05, 2011
03:54 AM
iawin32.dll and iawin64_x64.dll
Hi,
Googling around, I can see it's a recurring issue for a long time, but mb somebody bumped into a feasible solution?
As I can see, when launched on Win64, IA unpacks iawin32.dll or iawin64_x64.dll into installation directory, depending on which kind of JVM (32- or 64-bit) was used to do the installation.
Thus, if for some reasons uninstaller attempts to use another kind of JVM (i.e., 32-bit for install, 64-bit for uninstall or contrariwise), it will fail with a message like "platform not supported".
The trouble is, I can't always grant that the required VM is present at the time of uninstallation... E.g., my user is quite free to do following (assuming no Java was installed before):
1. Install 32-bit Java.
2. Install my software (this would unpack iawin32.dll)
3. Uninstall 32-bit Java, install 64-bit instead.
4. Attempt to uninstall my software.
This would fail as we're missing iawin64_x64.dll...
And I must add, it's not a fantastic scenario; my QA files me bugs about this now and then, so that it's quite possible with customer's setup too 😞
I can see that the problem is ultimately solved if I have both iawin32.dll and iawin64_x64.dll copied [manually] in the install dir; however how do I achieve it programmatically?...
So the actual question runs like this: is there any feasible way to get IA copy both iawin32.dll and iawin64_x64.dll without manually adding them to my IA project? Like some secret setting in IA project, or whatever...
Thanks in advance,
-andy
PS. Oh, and I can also see that IA home additionally has yet another DLL: iawin64.dll. Anyone knows what's this guy for?
PPS. Well, there is an [ugly] workaround: configure the project to "use 64-bit only or die" or "use 32-bit only or die". Alas, that's not a solution for me for certain reasons (OK if I skip details why exactly?) 😞
Googling around, I can see it's a recurring issue for a long time, but mb somebody bumped into a feasible solution?
As I can see, when launched on Win64, IA unpacks iawin32.dll or iawin64_x64.dll into installation directory, depending on which kind of JVM (32- or 64-bit) was used to do the installation.
Thus, if for some reasons uninstaller attempts to use another kind of JVM (i.e., 32-bit for install, 64-bit for uninstall or contrariwise), it will fail with a message like "platform not supported".
The trouble is, I can't always grant that the required VM is present at the time of uninstallation... E.g., my user is quite free to do following (assuming no Java was installed before):
1. Install 32-bit Java.
2. Install my software (this would unpack iawin32.dll)
3. Uninstall 32-bit Java, install 64-bit instead.
4. Attempt to uninstall my software.
This would fail as we're missing iawin64_x64.dll...
And I must add, it's not a fantastic scenario; my QA files me bugs about this now and then, so that it's quite possible with customer's setup too 😞
I can see that the problem is ultimately solved if I have both iawin32.dll and iawin64_x64.dll copied [manually] in the install dir; however how do I achieve it programmatically?...
So the actual question runs like this: is there any feasible way to get IA copy both iawin32.dll and iawin64_x64.dll without manually adding them to my IA project? Like some secret setting in IA project, or whatever...
Thanks in advance,
-andy
PS. Oh, and I can also see that IA home additionally has yet another DLL: iawin64.dll. Anyone knows what's this guy for?
PPS. Well, there is an [ugly] workaround: configure the project to "use 64-bit only or die" or "use 32-bit only or die". Alas, that's not a solution for me for certain reasons (OK if I skip details why exactly?) 😞
(3) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 07, 2011
02:08 AM
Have a look to this post at least: http://community.flexerasoftware.com/showthread.php?t=190924
At build time, get the 64-bit dll you need from: C:\Program Files\.....\InstallAnywhere\resource\nativetools\windows
In Install tab of InstallAnywhere UI, select the "uninstall" folder and put this "iawin64_x64.dll" into subfolder called "resource". Add the correct rules for this action to match your project needs.
--Jerome
At build time, get the 64-bit dll you need from: C:\Program Files\.....\InstallAnywhere
In Install tab of InstallAnywhere UI, select the "uninstall" folder and put this "iawin64_x64.dll" into subfolder called "resource". Add the correct rules for this action to match your project needs.
--Jerome
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 07, 2011
02:32 AM
Yeah, that's exactly the thread I googled up and the solution I've taken.
Just a bit of caveat: to avoid 64-bit DLL being deployed on Win32 it makes sense to mark these files in project as targeted for 64-bit architecture only. And to avoid your installer raising "Overwrite" dialog, set the "Overwrite" flag for these files to "Skip".
Still, looks kludgy like hell..
Just a bit of caveat: to avoid 64-bit DLL being deployed on Win32 it makes sense to mark these files in project as targeted for 64-bit architecture only. And to avoid your installer raising "Overwrite" dialog, set the "Overwrite" flag for these files to "Skip".
Still, looks kludgy like hell..
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Oct 16, 2012
08:38 PM
It is easy to reproduce the error.
Project--> Jave --> do not select the "Bundled Virtual Machine"
Build--> Build Targets --> Windows with VM.
build the project and install it to the windows machine, when uninstall it, will have the same error
Project--> Jave --> do not select the "Bundled Virtual Machine"
Build--> Build Targets --> Windows with VM.
build the project and install it to the windows machine, when uninstall it, will have the same error