[Wine] Problems installing Watchguard Firebox System software in wine (installshield)

Holly Bostick motub at planet.nl
Tue Oct 11 09:58:34 CDT 2005


Kevin Hanser schreef:
> Hello,
> 
> I am trying to use WINE (20050725-r1 on Gentoo Linux) to install/run
>  Watchguard's Firebox Management Software (WFS).  The WFS installer 
> uses an installshield installer of course..  I've been looking thru 
> the FAQ, wiki, etc and have found info about DCOM98 needing to be 
> installed. I've tried a bunch of things so far, and here's where I 
> stand:
> 
> First, I tried getting DCOM98 and installing it using that.  However,
>  the WFS software doesn't support Windows 98 (only NT, 2k, or XP) so 
> that didn't help too much (although it's the furthest the installer 
> ever got... only to tell me that it wouldn't continue :).
> 
> Since then, I've been trying to get the proper DCOM dll's from a 
> Windows 2000 (server) computer that I have.  I've copied ole32.dll, 
> oleaut32.dll, rpcrt4.dll and comctrl32.dll from my Windoze 2k Server 
> to over to Wine, and used the regsrv32 program to register them. (by 
> the way, am I supposed to put them in system or system32?  Currently 
> I have them in system32, with symlinks pointing to the system 
> dir....)
> 
> Then I try to run the setup program w/the following command: 
> WINEDLLOVERRIDES="ole32,oleaut32,rpcrt4=n" wine 
> /download/watchguard/WFS73s.exe /setup
> 
> But that just gives me the error:
> 
> The InstallShield Engine (iKernel.exe) could not be launched. 
> (0x800768e4)
> 
> I've found similar errors in the Wiki, but not w/that error code that
>  I'm getting.  Does anyone know what 0x800768e4 would mean..?
> 
> I also tried this command (which I found in the wiki): 
> WINEDLLOVERRIDES="ole32=n,b;oleaut32=n,b;rpcrt4=n,b" wine 
> /download/watchguard/WFS73s.exe /setup
> 
> but it does the same thing, dies with the same error message... :(
> 
> 
> I'm kinda stumped as to what to try next...
> 
> thx!
> 
> k
> 

Several things you could try:

1) cd to the directory containing the installer first, then try running
it again. InstallShield installers are particularly notorious (in my
experience) for refusing to run from a 'long path' command rather than
from the current directory (from which they run successfully).

2) Assuming that your setup is correct (which may not be true, but let's
start from the easiest steps to the hardest), the problem may be that
the previous install attempts left 'borked' setup files that are
continually being read. I've seen this happen a lot. To fix this:

a) make sure all instances of Wine are stopped; in a terminal, run the
following commands -- in fact, you should do this before performing any
of the suggested commands:

killall -9 wine
killall -9 wineserver
killall -9 wine-preloader

b) go to /tmp/  (which is the default location where Windows will
extract pre-installation files), and look for a folder name that doesn't
look like it's from Linux but from Windows, and seems to be dedicatedly
temporary (sorry that's not more precise, but obviously I can't know
what the temporary extraction folder is going to be called, and that's
how I find them when this happens to me), something like this:

ls -UF /tmp

seahorse-QoZJzs/
~f1d055.tmp
seahorse-Ro2sfk/
keyring-JAdx5e/
xses-motub.1Vkinp
icon.tmp.0x2800042.png
seahorse-TcEtFT/
irsetup.exe*
keyring-JSPIWV/
seahorse-VTaKoI/
keyring-Id6fFb/
kde-heb/
OSL_PIPE_1000_SingleOfficeIPC_bf4ea6e4f446e95cd9ca454d4ca85=
seahorse-XS16k1/
seahorse-YIN9Az/
17963/
xses-motub.7DoSgG
gtkrc.preview-XXsGOs2M
xses-motub.8XVEvg
seahorse-ZhWbU5/
thunderbird-register.8MrSjV/
MSI11846.LOG
compare.dat
qpkg-23037/
qpkg-23046/
kde-motub/
orbit-motub/
kuroo/
xauth.XXXXx4OewV
keyring-PulbRX/
GLC59ce.tmp
libgksu1.2-NoKYRX/
seahorse-bLZE4i/
OSL_PIPE_1000_SingleOfficeIPC_f499e76bb3bdd4e6cf95cd595fc6c0=
libgksu1.2-RUrGo3/
seahorse-bgwkqH/
gert0.bat
mapping-root=
seahorse-fEtdcU/
crchkEZ5Tus
ksocket-motub/
cgn327nd/
GnomeBaker/
mc-root/
motub-printer-ppd-HP840c-7Bivb7
gtkrc.preview-XX6QnJKY
tmpyL1BH6|
==> Config.Msi/ (pretty obviously a Windows-created dir, but not really
relevant)
_isdelet.ini
Chinacat.ttf
seahorse-lFD0gp/
gconfd-heb/
5195-mozilla-firefox-1.0.6-r7.log.gz
xses-motub.JBJw6t
ssh-wcnis13859/
seahorse-hzy7Em/
seahorse-ka4gvw/
hs_err_pid14932.log
mcop-motub/
seahorse-mq8zKB/
native.jpeg
ksocket-root/
cgwDpopd/
a82bX6KIRd
hurl.exe
seahorse-t3o3cx/
hsperfdata_portage/
==> Ultra$ISO/ (I know this is a program installed under Wine, also not
relevant)
alsa-dmix-26195-1125163353-658187=
gconfd-root/
xses-motub.R3w9zT
~e5.0001
seahorse-tDiSYo/
perl-cleaner.log.20050612162010.XXXXX2tY4q
seahorse-sVlhzZ/
VTmp20327/
seahorse-rxbT9C/
keyring-iXeKrY/
seahorse-vOieaL/
AZU56305.tmp
kde-root/
seahorse-z2Ii1T/
alsa-dmix-2705-1121611644-380292=
scrollkeeper-motub/
seahorse-urJMzC/
perl-cleaner.log.20050630142401.XXXX9N7jEb
emwrap/
seahorse-vhWhAw/
hs_err_pid525.log
thunderbird-register.UFz32l/
seahorse-zCkbqc/
cvs.jpeg
sandbox-app-office_-_taskjuggler-2.1-20833.log
setupdb-bin.Us8fu0
CmdLineExt03.dll
mapping-motub=
xses-motub.VY8rnr
hsperfdata_root/
seahorse-0AtAFO/
seahorse-zVFC5W/
MSId268.tmp
gconfd-motub/
xses-motub.YLVCmx
AZU18415.tmp
seahorse-1Pze3h/
keyring-rBvbaL/
seahorse-2Ncy46/
hsperfdata_motub/
hs_err_pid11934.log
seahorse-2aVHC2/
icon.tmp.0x1a001ee.png
libgksu1.2-oWL45y/
keyring-uBcEP9/
seahorse-1xJkVr/
5195-mozilla-1.7.11-r3.log.gz
scrollkeeper-root/
adesklets_uid0_newsfeed.py_0.lock
selfgz3081/
selfgz3589/
selfgz4314/
selfgz4343/
seahorse-6SfO8O/
seahorse-8DM9Kr/
keyring-vV37Cl/
seahorse-6Vzzfk/
keyring-vTu988/
motub-printer-ppd-HP840c-T2X0yw
svgdn.tmp/
1183e.msi
seahorse-9VT7K0/
OSL_PIPE_1000_SingleOfficeIPC_3743c3d84a4793dc158ad543e91a7d2f=
hs_err_pid10727.log
~DF19ef.tmp
changed.jpeg
alsa-dmix-2417-1121567857-355638=
alsa-dmix-11926-1127778168-390413=
root-printer-ppd-HP840c-3kURNb
alsa-dmix-22121-1120351692-492230=
keyring-41eOeA/
xses-motub.dgicnK
GLK59cf.tmp
mcop-heb/
ktlfLAYzUW
sve7d.tmp/
keyring-4XtFCQ/
gravemanizJIJZ/
xses-motub.gvvWwM
crstkJfa8Jb
AZU19859.tmp
OSL_PIPE_1000_SingleOfficeIPC_36ff85f5d74e3a7714dc3cec80b1e1d9=
gravemanlndK6b/
keyring-4yfNPO/
seahorse-DUCjsJ/
root-printer-ppd-HP840c-A09IY2
GLM59d0.tmp
yjlLNw7LlC
52SLjppsLl
tmp.XXXXnR1wMr
seahorse-CmMFe3/
sandbox-mail-client_-_mozilla-thunderbird-1.0.2-r1-8391.log
~ef6131/
seahorse-FY6fZ9/
keyring-8mQAoC/
GLF59d2.tmp
icon.tmp.0x3000088.png
seahorse-DtxDCh/
seahorse-J8RcLx/
mplay1ggIPF
mc-motub/
libgksu1.2-6qH3wR/
seahorse-IUZ2Su/
seahorse-IVyqrB/
seahorse-N4Gvte/
ispbbce.tmp/
seahorse-Jw10Vn/
msievent.log
==> IXP000.TMP/ (this looks a lot like a Windows temporary install
directory)
mapping-heb=
crxmlktxmZU
Rbt9rNeE7i/
seahorse-R2BJ7e/
mcop-root/
svped.tmp/
seahorse-S8b80p/
plugtmp-1/
plugtmp-2/
plugtmp-3/
plugtmp-4/
plugtmp-5/
plugtmp-6/
OSL_PIPE_1000_SingleOfficeIPC_778cf78f6ba9adeadc595198d5c66f5d=
seahorse-RM7vDD/
seahorse-RLLE2n/
OSL_PIPE_0_SingleOfficeIPC_5b4f3373551ce822db41c6658fb53bd=
keyring-CuNClP/

I hope you see what I mean; single files, or things with my username, or
named as programs that I know to be Linux apps (seahorse, keyring, kde),
can be ignored, but IXP000.TMP/ is pretty evident as a Windows-created
directory (if only because it looks nothing like the other Linux
directories), and looking inside it proves the point:

ls /tmp/IXP000.TMP/
ACCESSIB.CNT  cdccln.inf    eula.txt      mp2wrap.exe   msdxddex.inf
oleaut32.dll  rmvv1.inf     vh263ax.inf
ACCESSIB.HLP  CFGMGR32.DLL  fhgax.inf     mpeg4ax.inf   msdxmLC.DLL
oleaut.inf    RUNDLL32.EXE  vidx16.dll
ACELPDEC.AX   choose.inf    hlink.dll     mpg2splt.ax   msdxm.ocx
ole.inf       schannel.dll  VoxMSDec.ax
acelp.inf     control.ini   hlinkprx.dll  mpg4ds32.ax   MSMS001.vwp
olepro32.dll  SETUPAPI.DLL  voxmsdec.inf
actmovie.exe  ddexinst.exe  inloader.dll  mplayer2.cnt  msvcrt.dll
qdvd.dll      setup.inf     VoxMVDec.ax
ADVPACK.DLL   ddrawex.dll   l3codecx.ax   mplayer2.exe  msvcrt.inf
qnspro.dll    stdole2.tlb   voxmvdec.inf
amov4ie.inf   devenum.dll   laprxy.dll    mplayer2.hlp  MVoiced.vwp
quartz.dll    strmdll.dll   vvAudFlt.ax
amovfix.inf   drmclien.dll  logagent.exe  mplayer2.inf  nafiles.txt
quartz.vxd    unam4ie.exe   vvVidFlt.ax
amstream.dll  drmstor.dll   mciqtz32.dll  MPSUPP.HLP    NPDSPlay.dll
quiet.inf     unregmp2.exe  W95INF16.DLL
asfsipc.dll   dxmasf.dll    mciqtz.drv    msadds32.ax   NPDS.zip
reboot.inf    urlmon.dll    W95INF32.DLL
axdist.inf    dxmini.exe    mp2tiger.inf  msaudio.inf   npwmsdrm.dll
Regsvr32.exe  vg723ax.inf   wininet.dll

This directory was created by some Windows installer, which probably
failed to run (because if the installer had completed, these temporary
files should have been cleaned up/deleted). However, any re-run of the
installer will attempt to extract these files again, possibly to the
same directory, and apparenty does not delete/overwrite
previously-existing files.

I don't know squat about InstallShield or any other installer, but I can
tell you that deleting previously extracted temporary installer files
from a failed installer extraction often helps to rectify issues when
you've changed your Wine configuration in order to enable the installer
to run.

I hope that makes sense in some way; but it may be clearer if you try it.

c) go to step 3, and then run the installer again.

2) upgrade Wine (current version 20050930, ~x86 in Gentoo) contains a
number of fixes to the support for InstallShield installers; it may
solve your issue without having to do anything else. I would suggest
removing or renaming your ~/.wine directory before running it (the many
changes in Wine over the past few months don't seem to play all that
well with previous installs).

3) If you don't want to or can't upgrade Wine at this time, perhaps the
problem is that Wine doesn't know what DCOM you want to use (because you
have installed DCOM98, but also copied Win2K dlls). If you are convinced
that installing native DCOM dlls is necessary, blow away your ~/.wine
folder (again/anyway), and run 'wine' to recreate it clean (basically
without the self-installed native DCOM98, which a) may not be necessary,
and b) may be a problem, since the application doesn't even work/install
under 98 anyway, so it seems unlikely that it would be happy to find
native 98 dlls).

Then copy your Win2K dlls to the Wine system directory and perform one
of the two following branches:

I: To run just this installer using these dlls as native, use the
WINEDLLOVERRIDE setting (the corrected command assumes that you cd-ed to
the directory containing WFS73s.exe):

WINEDLLOVERRIDES="ole32,oleaut32,rpcrt4=n" wine "WFS73s.exe /setup"

II: To set a permanent DLLOVERRIDE for this *.exe (which in this case is
'safe' to do, because the installer has a unique name, unlike
'Setup.exe' which is what's usually found, and creating a per-app
default for 'Setup.exe' would then apply to all installers which you
normally might not want to do):

- run 'winecfg'

- in the first tab (Applications), click the 'Add Application' button
and browse to and select WFS73s, then select it in the main window so
that it is highlighted (and the Titlebar reads 'Wine Configuration for
WFS73s.exe')

- go to the second tab (Libraries), and type 'ole32' (without '.dll') in
the 'New override for dll: field, then click 'Add'. Repeat for oleaut32
and rpcrt4.

-  each of these dlls will appear in the 'Existing overrides' box as
'(native,builtin); if you want to set them only to 'native', select each
dll and click the 'Edit' button, where you can select something
different (like "native (Windows)" only).

Click the 'Apply' or "OK'  buttons to save the settings, or to save the
settings and exit winecfg, then try your install again.

Hope this helps,
Holly




More information about the wine-users mailing list