I can't think of a way to auto-detect VB6 DLLs other than the registry
keys being present. We could always enable it and change the option to
disable it. The only time I think this would be a problem would be if
you were actually harvesting the VB6 runtime.

Neil

-----Original Message-----
From: Rob Mensching [mailto:rob.mensch...@microsoft.com] 
Sent: 09 February 2009 23:44
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Solution for VB6 DLL

Is there a way to autodetect those issues so -svb6 isn't necessary... or
are there side effects to that option?

-----Original Message-----
From: Neil Sleightholm [mailto:n...@x2systems.com] 
Sent: Monday, February 09, 2009 14:17
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Solution for VB6 DLL

I just tried the code you attached to the bug and it works for me with
the "-svb6" option.

Neil

-----Original Message-----
From: Neil Sleightholm 
Sent: 09 February 2009 22:11
To: wix-users@lists.sourceforge.net
Subject: RE: [WiX-users] Solution for VB6 DLL

Can you try the -svb6 option on heat e.g. "heat.exe file foo.dll -out
c:\foo.dll.wxs -svb6" this should remove all the VB6 runtime information
from the harvesting.

Neil

-----Original Message-----
From: Andrew Ziem [mailto:ahz...@gmail.com] 
Sent: 09 February 2009 18:14
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Solution for VB6 DLL

My new MSI was working great in WiX 3.0.4805.0 (and Warsetup 3.12.0.0)
except I needed to register a DLL which looks like it was made in VB 6
(it references MSVBVM60.DLL)

I ran:
heat.exe file foo.dll  -out c:\foo.dll.wxs

Then, I added the GUID, but I got errors:

"c:\wix3\candle.exe" "c:\prj\foo.dll.wxs" "-ext"
"c:\wix3\WixUIExtension.dll" "-out" "c:\prj\foo.dll.wixobj"

Errors
foo.dll.wxs
c:\prj\foo.dll.wxs(6) : error CNDL0010 : The Class/@Server attribute
was not found; it is required.
c:\prj\foo.dll.wxs(27) : error CNDL0047 : The TypeLib element is
non-advertised and therefore requires a parent File element.
c:\prj\foo.dll.wxs(31) : error CNDL0047 : The TypeLib element is
non-advertised and therefore requires a parent File element.

I found what looked like a solution here[1], so I put the six
<EnsureTable ..> entries after <Fragment>.  It didn't help.
[1]
http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg09448.htm
l

Starting over, I used dark.exe to decompile an old version of the
project (which I didn't build), and the only thing I can see
interesting is SelfRegCost="0" .  I added that to the DLL's <File Id>
Element, and it is working!

Is this solution 'bad' like running 'regsvr32 foo.dll'?


Andrew

------------------------------------------------------------------------
------
Create and Deploy Rich Internet Apps outside the browser with
Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and
code to
build responsive, highly engaging applications that combine the power of
local
resources and data with the reach of the web. Download the Adobe AIR SDK
and
Ajax docs to start building applications
today-http://p.sf.net/sfu/adobe-com
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------
------
Create and Deploy Rich Internet Apps outside the browser with
Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and
code to
build responsive, highly engaging applications that combine the power of
local
resources and data with the reach of the web. Download the Adobe AIR SDK
and
Ajax docs to start building applications
today-http://p.sf.net/sfu/adobe-com
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------
------
Create and Deploy Rich Internet Apps outside the browser with
Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and
code to
build responsive, highly engaging applications that combine the power of
local
resources and data with the reach of the web. Download the Adobe AIR SDK
and
Ajax docs to start building applications
today-http://p.sf.net/sfu/adobe-com
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to