I am creating a WIX installer project. One part of the work in the establishment is to register some COM components. I have (hopefully) succeeded by using heat.exe to generate COM component declaration, although I need to modify some after the wxs files are generated. To clarify this, I am sticking my COM component declaration here:
File ID = "FILE_ID_1" keypath = "yes" source = "MY_COM.dll" /> & lt; file id = "FILD_ID2" keypath / lt; / lt; / class & gt; = "No" source = "MY_COM.tlb" & gt; TypeLib id = "{xxx}" description = "xxx" help directory = "INSTALLDIR" language = "0" Majorverson = "525" smallen = "0" "& Gt; Interface ID =" {xxx} "name =" xxx "ProxyStubClassId32 =" {00020424-0000-0000-C000-000000000046} "/> ... & lt; / TypeLib & Gt; & lt; / File> ID = "record" /> & lt; RegistryValue Root = "HKCR" key = "CLSID \ {xxx} \ implemented categories \ {xxx}" value = "" type = "string "Verb =" write "/> & gt; RegistryValue Root =" HKCR "key =" CLSID \ {xxx} \ inprocServer32 \ 525.0.4573.25681 "name =" class "value =" MYID1 "type =" string "verb = "Write" /> ... & lt; / Component & gt; & Lt; / ComponentGroup & gt; I have changed some IDs with xxx, so they are not a problem. If anything is wrong, please let me know.
Now I have a question: Do I have to specify clearly to uninstall the COM component in the rollback phase? Because I have encountered some problem, after some failure installation, do not go through installations and efforts and some "ActiveX objects can not be created" error pop up I suspect that the COM component failed in the last installation Was not successfully unregistered. but I am not sure. Actually I have limited knowledge in COM interop, so I'm not sure what is necessary to install / uninstall them. Any help would be appreciated. Thanks!
When you use heat to harvest COM components, it will be sufficient if your installation And if it is rolled back, then it should cancel its COM components.
Comments
Post a Comment