I'm developing a .NET BandObject toolbar for Internet Explorer. I'm working off the sample at CodeProject ( http://www.codeproject.com/KB/cs/Issuewithbandobjects.aspx ) and everything was working fine, I was using gacutil and regasm to test the toolbar and that was working. Then I moved to using Wix in order to test real deployment and construct the msi file, which meant, switching to Heat.
Initially, I created the fragments for the various dll's and this was working fine having manually added the <... assembly=".net" ...> attribute to the various wxs files. However, in order to further prepare it for deployment I ended up renaming the project and dll filename, changing the GUID's from the samples 2 dll's and following this, also tried to test upgrading the major version number. Having changed the dll's I also regenerated the wxs files with Heat, manually adding necessary attributes. However, now the toolbar no longer loads in IE, even though the option is there. It fails silently.
On inspecting the Registry entries, using OLEVIEW.exe , I can create an instance of the old project dll and access it's COM interface that was registered with gacutil and regasm. However, the Wix installed file fails to load with an error of:
CoGetClassObject failed.
The system cannot find the file specified.
severity: SEVERITY_ERROR, facility: FACILITY_WIN32 ($80070002)
I suspect that this is because the new COM object has for some reason not been registered corrrectly either by Wix or the msi installation process. This is because on comparing the old and new dll's in OLEVIEW, the new dll has Registry entries of the form:
InprocServer32[CodeBase]=file///C:\Release\MyProject.dll
--1.0.4279.39243[CodeBase]=file///C:\Release\MyProject.dll
The old COM object has non of these lines. This suggests that even though it has been installed to the GAC, it has not been registered properly. What's even more confusing is that old msi installation files that used to work also failed if installed (all previous Wix versions first removed).
I am at a loss. Hopefully someone can shed light on the situation.
Best Regards, Daniel.