I basically have about 150 COM, ActiveX VB6 files.  I ran heat to produce the
output and then modified them to produce 2 merge modules.  I used heat to
avoid using the SelfRegCost attribute which as been frowned upon by many
here.  I read Rob's blog about that :)

I ran into 2 warnings which were ICE33 and ICE82.  I scoured the archive and
was able to find that I can safely ignore the ICE33 and ICE82 warnings.  I
ran ORCA as well just to be safe which is why ICE33 showed up since I later
realized that WiX suppresses it by default.

examples are:

light.exe: warning LGHT1076 : ICE82: This action
ProgramMenuFolder.C7AC8538_65ED_4C2B_AE16_6291871D0918 has duplicate
sequence number 2 in the table InstallExecuteSequence

orca.exe: ICE33   WARNING   Reg key reg7EF074BB025A80CBFE2087521879C64E is
used in an unsupported way. ProgId should be registered via the ProgId
table. This entry may overwrite a value created through that table.

After ignoring those 2 warning, I then proceeded to build my MSI and ran
into 2 more errors that were output by candle:

1. RequiredFiles.wxs(81) : error CNDL0010 : The Class/@Context attribute was
not found; it is required
 when attribute {3E28E9C7-A265-41D6-B6EA-132B62605C75} is specified.
2. RequiredFiles.wxs(81) : error CNDL0010 : The Class/@Server attribute was
not found; it is required.

Initially, the entry looked like this:


<Class Id="{479066AE-099A-41CB-80F2-A54BD8E891EF}" Description="Contains a
List a ValueItem objects." Version="1.1">
          <ProgId Id="GridEX20.JSValueList" Description="Contains a List a
ValueItem objects." />
</Class>

To solve 1, I added the attribute Context="InprocServer32" into the Class
element:
To solve 2, I added the attribute Server="NameOfDll.dll" into the Class
element:

<Class Id="{479066AE-099A-41CB-80F2-A54BD8E891EF}" Context="InprocServer32"
Server="GridEX20.ocx" Description="Contains a List a ValueItem objects."
Version="1.1">
          <ProgId Id="GridEX20.JSValueList" Description="Contains a List a
ValueItem objects." />
</Class>

After doing all that, I ran into one more problem that involved ActiveX
DLLs.  The error I got was a couple of times for the various ActiveX DLLs
and was produced by light:

RequiredFiles.wxs(500) : error LGHT0130 : The primary key
regB69CCE91B63112D0023E330FD9CCE948.B05A
204B_CEB8_4A82_B515_ADFB4AE6965C' is duplicated in table 'Registry'.  Please
remove one of the entries or rename a part of the primary key to avoid the
collision.

I didn't quite understand this.   The line it referred to was this:

<Class Id="{D5DE8D20-5BB8-11D1-A1E3-00A0C90F2731}" Context="InprocServer32"
Server="GridEX20.ocx" Description="VBPropertyBag" ThreadingModel="apartment"
/>

I commented the line out and error was gone, but I have to admit I don't
know what I did!!  Can someone please shed some light on this?  I really
don't want to use SelfRegCost and take the easy way out ;)
-- 
View this message in context: 
http://www.nabble.com/WiX-v3%3A-COM-on-Vista.--I-have-some-success%2C-but-worried-about-heat%27s-erroneous-output.-tf4510373.html#a12863906
Sent from the wix-users mailing list archive at Nabble.com.


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to