64-bit msi uninstallation removes most of the x86 msi registry entries which related to COM dlls

5 messages Options
Embed this post
Permalink
bmanikm

64-bit msi uninstallation removes most of the x86 msi registry entries which related to COM dlls

Reply Threaded More More options
Print post
Permalink
Hello

We use heat.exe to generate self-registration output of 32-bit COM dll for self-registration of our COM dlls. In both x86 and x64 msis we use the same registry output, after changing the dll's path with different component GUIDs in 32-bit and 64-bit msi. We also set Win64=yes in 64-bit msi for this component. 32-bit and 64-bit COM dlls share the same CLSIDs and ProgIDs.

On a 64-bit machine, we install 32-bit msi first then 64-bit msi. Now if we uninstall 64-bit msi some common registry keys related to COM dlls are getting removed, which were installed by 32-bit msi.

How to solve this problem?

How others are solving this Side-by-Side issue of 64-bit and 32-bit COM dlls?

Thanks
Bmanikm
Blair-2

Re: 64-bit msi uninstallation removes most of the x86 msi registry entries which related to COM dlls

Reply Threaded More More options
Print post
Permalink
Do the 32-bit components that are in both MSIs share the exact same
component GUID? Are they identical in every other way as well?

-----Original Message-----
From: bmanikm [mailto:[hidden email]]
Sent: Friday, November 06, 2009 5:06 AM
To: [hidden email]
Subject: [WiX-users] 64-bit msi uninstallation removes most of the x86 msi
registry entries which related to COM dlls


Hello

We use heat.exe to generate self-registration output of 32-bit COM dll for
self-registration of our COM dlls. In both x86 and x64 msis we use the same
registry output, after changing the dll's path with different component
GUIDs in 32-bit and 64-bit msi. We also set Win64=yes in 64-bit msi for this
component. 32-bit and 64-bit COM dlls share the same CLSIDs and ProgIDs.

On a 64-bit machine, we install 32-bit msi first then 64-bit msi. Now if we
uninstall 64-bit msi some common registry keys related to COM dlls are
getting removed, which were installed by 32-bit msi.

How to solve this problem?

How others are solving this Side-by-Side issue of 64-bit and 32-bit COM
dlls?

Thanks
Bmanikm
--
View this message in context:
http://n2.nabble.com/64-bit-msi-uninstallation-removes-most-of-the-x86-msi-r
egistry-entries-which-related-to-COM-dlls-tp3958624p3958624.html
Sent from the wix-users mailing list archive at Nabble.com.

----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus
on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
bmanikm

Re: [WiX-users] 64-bit msi uninstallation removes most of the x86 msi registry entries which related to COM dlls

Reply Threaded More More options
Print post
Permalink
Blair,
 
Two dlls are different, one is of x86 and other is of x64, so we have to register them seperately. 64-bit apps should be able to load our 64-bit com dll.
 
How can we solve this issue with 32-bit component in 64-bit MSI, as 64-bit apps need 64-bit com dll, right?
 
What is the best practice in this scenario? please shed some light on this issue.
 
Thanks in advance
bmanikm

On Fri, Nov 6, 2009 at 8:38 PM, Blair-2 [via Windows Installer XML (WiX) toolset] <[hidden email]> wrote:
Do the 32-bit components that are in both MSIs share the exact same
component GUID? Are they identical in every other way as well?

-----Original Message-----
From: bmanikm [mailto:[hidden email]]
Sent: Friday, November 06, 2009 5:06 AM
To: [hidden email]
Subject: [WiX-users] 64-bit msi uninstallation removes most of the x86 msi
registry entries which related to COM dlls


Hello

We use heat.exe to generate self-registration output of 32-bit COM dll for
self-registration of our COM dlls. In both x86 and x64 msis we use the same
registry output, after changing the dll's path with different component
GUIDs in 32-bit and 64-bit msi. We also set Win64=yes in 64-bit msi for this
component. 32-bit and 64-bit COM dlls share the same CLSIDs and ProgIDs.

On a 64-bit machine, we install 32-bit msi first then 64-bit msi. Now if we
uninstall 64-bit msi some common registry keys related to COM dlls are
getting removed, which were installed by 32-bit msi.

How to solve this problem?

How others are solving this Side-by-Side issue of 64-bit and 32-bit COM
dlls?

Thanks
Bmanikm
--
View this message in context:
http://n2.nabble.com/64-bit-msi-uninstallation-removes-most-of-the-x86-msi-r
egistry-entries-which-related-to-COM-dlls-tp3958624p3958624.html
Sent from the wix-users mailing list archive at Nabble.com.

----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus
on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users



--
~Manik
Hyderabad, India.
Cell: +91-9989104777

Pally Sandher

Re: 64-bit msi uninstallation removes most of the x86 msi registry entries which related to COM dlls

Reply Threaded More More options
Print post
Permalink
Your problem is that you're writing stuff to the HKCR area of the
registry in both installers. This area is common to 32 & 64 bit
installers & applications on a 64-bit machine.

Basically if installer A installs something & installer B also installs
the same thing, unless you follow the rules to track the fact both
installers install the same thing (which it sounds like you're not) then
you're going to have this problem as you've experienced. The fact that
your installers are x86 & x64 are pure coincidence but you're in luck
since you're creating them both, this sort of thing is a royal pain when
it's someone else's application breaking yours or vice-versa.

You can probably fix it simply by either creating a wixlib (or merge
module) containing the components shared by both installers & then
consuming that wixlib (or merge module) when you build your installers.
Windows Installer should then be able to track the fact that both
installers are installing the same thing & only remove those components
when both applications are uninstalled rather than just one of them.

Why are you allowing people to install both x86 & x64 installers on the
same machine in the first place?

Palbinder Sandher
Software Deployment & IT Administrator
T: +44 (0) 141 945 8500
F: +44 (0) 141 945 8501

http://www.iesve.com 
**Design, Simulate + Innovate with the <Virtual Environment>**
Integrated Environmental Solutions Limited. Registered in Scotland No.
SC151456
Registered Office - Helix Building, West Of Scotland Science Park,
Glasgow G20 0SP
Email Disclaimer


-----Original Message-----
From: bmanikm [mailto:[hidden email]]
Sent: 06 November 2009 15:25
To: [hidden email]
Subject: Re: [WiX-users] 64-bit msi uninstallation removes most of the
x86 msi registry entries which related to COM dlls


Blair,

Two dlls are different, one is of x86 and other is of x64, so we have to
register them seperately. 64-bit apps should be able to load our 64-bit
com dll.

How can we solve this issue with 32-bit component in 64-bit MSI, as
64-bit apps need 64-bit com dll, right?

What is the best practice in this scenario? please shed some light on
this issue.

Thanks in advance
bmanikm

On Fri, Nov 6, 2009 at 8:38 PM, Blair-2 [via Windows Installer XML (WiX)
toolset]
<[hidden email]<ml-node%2B3959251-156003079@n2.
nabble.com>
> wrote:

> Do the 32-bit components that are in both MSIs share the exact same
> component GUID? Are they identical in every other way as well?
>
> -----Original Message-----
> From: bmanikm [mailto:[hidden
> email]<http://n2.nabble.com/user/SendEmail.jtp?type=node&node=3959251&
> i=0>]
>
> Sent: Friday, November 06, 2009 5:06 AM
> To: [hidden
> email]<http://n2.nabble.com/user/SendEmail.jtp?type=node&node=3959251&
> i=1>
> Subject: [WiX-users] 64-bit msi uninstallation removes most of the x86

> msi registry entries which related to COM dlls
>
>
> Hello
>
> We use heat.exe to generate self-registration output of 32-bit COM dll

> for self-registration of our COM dlls. In both x86 and x64 msis we use

> the same
>
> registry output, after changing the dll's path with different
> component GUIDs in 32-bit and 64-bit msi. We also set Win64=yes in
> 64-bit msi for this component. 32-bit and 64-bit COM dlls share the
> same CLSIDs and ProgIDs.
>
> On a 64-bit machine, we install 32-bit msi first then 64-bit msi. Now
> if we
>
> uninstall 64-bit msi some common registry keys related to COM dlls are

> getting removed, which were installed by 32-bit msi.
>
> How to solve this problem?
>
> How others are solving this Side-by-Side issue of 64-bit and 32-bit
> COM dlls?
>
> Thanks
> Bmanikm
> --
> View this message in context:
>
> http://n2.nabble.com/64-bit-msi-uninstallation-removes-most-of-the-x86
> -msi-r
> egistry-entries-which-related-to-COM-dlls-tp3958624p3958624.html
> Sent from the wix-users mailing list archive at Nabble.com.
>
> ----------------------------------------------------------------------
> ------
>
> --
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008
> 30-Day
>
> trial. Simplify your report design, integration and deployment - and
> focus on what you do best, core application coding. Discover what's
> new with Crystal Reports now.  http://p.sf.net/sfu/bobj-july 
> _______________________________________________
> WiX-users mailing list
> [hidden
> email]<http://n2.nabble.com/user/SendEmail.jtp?type=node&node=3959251&
> i=2> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> ----------------------------------------------------------------------
> --------
>
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008
> 30-Day
>
> trial. Simplify your report design, integration and deployment - and
> focus on what you do best, core application coding. Discover what's
> new with Crystal Reports now.  http://p.sf.net/sfu/bobj-july 
> _______________________________________________
> WiX-users mailing list
> [hidden
> email]<http://n2.nabble.com/user/SendEmail.jtp?type=node&node=3959251&
> i=3> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> ------------------------------
> View message @
> http://n2.nabble.com/64-bit-msi-uninstallation-removes-most-of-the-x86
> -msi-registry-entries-which-related-to-COM-dlls-tp3958624p3959251.html
> To unsubscribe from 64-bit msi uninstallation removes most of the x86
> msi registry entries which related to COM dlls, click here< (link
removed) >.
>
>
>


--
~Manik
Hyderabad, India.
Cell: +91-9989104777

--
View this message in context:
http://n2.nabble.com/64-bit-msi-uninstallation-removes-most-of-the-x86-m
si-registry-entries-which-related-to-COM-dlls-tp3958624p3959361.html
Sent from the wix-users mailing list archive at Nabble.com.
------------------------------------------------------------------------
------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008
30-Day trial. Simplify your report design, integration and deployment -
and focus on what you do best, core application coding. Discover what's
new with Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users



------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Blair-2

Re: 64-bit msi uninstallation removes most of the x86 msi registry entries which related to COM dlls

Reply Threaded More More options
Print post
Permalink
In reply to this post by bmanikm
Put every 32-bit component that both packages use (I assume all of them) in
some shared location (such as a wixlib) and use that instead of implementing
them twice. Normally 64-bit packages that deliver the same application as
32-bit packages and that supply 32-bit code for WoW64 clients require that
the 32-bit components (that is, all components that are NOT marked 64-bit)
are identical in both packages.

That way, when both packages are installed, each of those components is
installed just once with two products referencing them, so they won't be
removed until both packages have been removed.

-----Original Message-----
From: bmanikm [mailto:[hidden email]]
Sent: Friday, November 06, 2009 7:25 AM
To: [hidden email]
Subject: Re: [WiX-users] 64-bit msi uninstallation removes most of the x86
msi registry entries which related to COM dlls


Blair,

Two dlls are different, one is of x86 and other is of x64, so we have to
register them seperately. 64-bit apps should be able to load our 64-bit com
dll.

How can we solve this issue with 32-bit component in 64-bit MSI, as 64-bit
apps need 64-bit com dll, right?

What is the best practice in this scenario? please shed some light on this
issue.

Thanks in advance
bmanikm

On Fri, Nov 6, 2009 at 8:38 PM, Blair-2 [via Windows Installer XML (WiX)
toolset]
<[hidden email]<[hidden email]
le.com>
> wrote:

> Do the 32-bit components that are in both MSIs share the exact same
> component GUID? Are they identical in every other way as well?
>
> -----Original Message-----
> From: bmanikm [mailto:[hidden
email]<http://n2.nabble.com/user/SendEmail.jtp?type=node&node=3959251&i=0>]
>
> Sent: Friday, November 06, 2009 5:06 AM
> To: [hidden
email]<http://n2.nabble.com/user/SendEmail.jtp?type=node&node=3959251&i=1>
> Subject: [WiX-users] 64-bit msi uninstallation removes most of the x86 msi
> registry entries which related to COM dlls
>
>
> Hello
>
> We use heat.exe to generate self-registration output of 32-bit COM dll for
> self-registration of our COM dlls. In both x86 and x64 msis we use the
same
>
> registry output, after changing the dll's path with different component
> GUIDs in 32-bit and 64-bit msi. We also set Win64=yes in 64-bit msi for
> this
> component. 32-bit and 64-bit COM dlls share the same CLSIDs and ProgIDs.
>
> On a 64-bit machine, we install 32-bit msi first then 64-bit msi. Now if
we

>
> uninstall 64-bit msi some common registry keys related to COM dlls are
> getting removed, which were installed by 32-bit msi.
>
> How to solve this problem?
>
> How others are solving this Side-by-Side issue of 64-bit and 32-bit COM
> dlls?
>
> Thanks
> Bmanikm
> --
> View this message in context:
>
>
http://n2.nabble.com/64-bit-msi-uninstallation-removes-most-of-the-x86-msi-r
> egistry-entries-which-related-to-COM-dlls-tp3958624p3958624.html
> Sent from the wix-users mailing list archive at Nabble.com.
>
>
----------------------------------------------------------------------------
>
> --
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008
30-Day
>
> trial. Simplify your report design, integration and deployment - and focus
> on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________
> WiX-users mailing list
> [hidden
email]<http://n2.nabble.com/user/SendEmail.jtp?type=node&node=3959251&i=2>
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
>
----------------------------------------------------------------------------
--
>
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008
30-Day
>
> trial. Simplify your report design, integration and deployment - and focus
> on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________
> WiX-users mailing list
> [hidden
email]<http://n2.nabble.com/user/SendEmail.jtp?type=node&node=3959251&i=3>
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> ------------------------------
> View message @
>
http://n2.nabble.com/64-bit-msi-uninstallation-removes-most-of-the-x86-msi-r
egistry-entries-which-related-to-COM-dlls-tp3958624p3959251.html
> To unsubscribe from 64-bit msi uninstallation removes most of the x86 msi
> registry entries which related to COM dlls, click here< (link removed) >.
>
>
>


--
~Manik
Hyderabad, India.
Cell: +91-9989104777

--
View this message in context:
http://n2.nabble.com/64-bit-msi-uninstallation-removes-most-of-the-x86-msi-r
egistry-entries-which-related-to-COM-dlls-tp3958624p3959361.html
Sent from the wix-users mailing list archive at Nabble.com.
----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus
on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users