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.html

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

Reply via email to