Mike, Thanks for the quick reply.

Mike and List users,

I think the issue was not with HEAT but WIX Compiler/Linker (CANDLE / LIGHT).  
The WIX code generated by HEAT looks fine with PROGID, CLASSID elements.  
However, the MSI generated by WIX compiler/linker is having extra quotes.

For example,

<Class Id="MY CLASS ID" Context="InprocServer32" Description="MY CLASS 
DESCRIPTION" ThreadingModel="both">
      <ProgId Id=" MY.CLASS.PROG.ID" Description=" MY.CLASS.DESCRIPTION" />
</Class>

This is a child element of a COM DLL component.

This code snippet of WIX adds extra quotes to the registry value data for 
InprocServer32 DLL Path (I can observer this thru ORCA and installing both 
ways).

However, the COM Registry Validatation tools report this extra double quote as 
an error though everything (apps) seems to work fine with extra quotes.

Is it a bug in WIXv3 (Build: 3.0.2921.0)?  If so, which build contains the fix? 
 If not, how to make WIX stop appending extra double quotes to the DLL Path?

Thanks,
Laxmi

From: Mike Dimmick [mailto:[EMAIL PROTECTED]
Sent: Tuesday, July 10, 2007 11:39 PM
To: Manikyam Bavandla; wix-users@lists.sourceforge.net
Cc: Abhradeep Thakurta
Subject: RE: [WiX-users] Heat.exe generates InprocServer32 defult value with 
double quotes (") appended

Heat only records what the DLL's DllRegisterServer function writes to the 
registry. Fix the DLL, or stop relying on reverse-engineering the registry 
settings. If you're coding in C++ you know what the registry settings should 
be. Heat is intended for toolchains where you don't have that control (e.g. 
VB6).

COM registry entries for .NET components are more cleanly retrieved by running 
regasm.exe with the /regfile switch.

--
Mike Dimmick

________________________________
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Manikyam Bavandla
Sent: 10 July 2007 12:22
To: wix-users@lists.sourceforge.net
Cc: Abhradeep Thakurta
Subject: [WiX-users] Heat.exe generates InprocServer32 defult value with double 
quotes (") appended

Hi WiX-Users

Recently we have migrated from wixv2 to wixv3 toolset. In our MSI, we have two 
COM dlls for registering these two DLLs, we were using wixv2's smoke.exe 
auto-generated registry entries, in wixv3, we are using wixv3's Heat.exe 
generated registry entries.

Here we are facing a problem because of double quotes added by Heat.exe.
[HKEY_CLASSES_ROOT\CLSID\{3018609E-CDAC-47E8-A255-809D46BAA319}\InprocServer32]
@="\"C:\\Program Files\\OUR Product Name\\v35\\ourproduct.dll\""

If this MSI is opened with ORCA tool, it shows registry value as  
"[#ourproduct.dll]"

Because of the above problem we are getting COMCHK errors.
Please help us in solving this problem?

Thanks
Manikyam
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to