Sto tentando di registrare una DLL utilizzando WiX. Ora so e capisco che devo usare heat
per ottenere le informazioni del registro per me, ma il calore sembra non riuscire con il seguente messaggio di errore: heat.exe : warning HEAT5150 : Could not harvest data from a file that was expected to be a SelfReg DLL: C:\Users\seb\Desktop\Development\addin.dll. If this file does not support SelfReg you can ignore this warning. Otherwise, this error detail may be helpful to diagnose the failure: Unable to load file: C:\Users\seb\Desktop\Development\addin.dll, error: 193
Impossibile registrare DLL tramite WiX
Mi sono guardato intorno e ho trovato questo post che spiega un po ' più in dettaglio su registering DLLs ma vorrei evitare il percorso di auto registrazione, se possibile. Vedo anche menzione di registrazione manuale delle DLL più in basso, ma non sono molto esperto con il registro o con gli oggetti COM per sapere dove potrei ottenere il CLSID, ProgId e qualsiasi altra informazione menzionata.
Se qualcuno può indicarmi la giusta direzione o spiegarmi cosa devo fare per eseguire la DLL tramite heat
, sarebbe molto apprezzato.
È una DLL creata utilizzando ATL 6.0. Se chiamo regserv32 su di esso tutto va bene e il sistema lo riconosce, ma fino ad ora è sempre stato caricato come SelfReg. – Seb
Questo tipo di problema è davvero difficile da risolvere. Se puoi condividere la DLL, posso provare ad estrarla per te. È inoltre possibile utilizzare uno strumento di istantanea del Registro di sistema su una macchina pulita per acquisire regsvr32 e quindi manualmente l'autore in wxs. Oppure usa la valutazione InstallShield per estrarre il COM e il WiX scuro per decompilarlo nuovamente in wxs. Un sacco di trucchi ma richiedono esperienza. –
Impossibile condividere la DLL a causa della sua proprietà aziendale, ma ho provato a utilizzare RegSpy ed è stato congelato per circa 8 ore. Sperando che stia solo cercando di estrarre i dati. – Seb