This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: Deployed assemblies are not deleted after uninstall
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
03:47 AM
Deployed assemblies are not deleted after uninstall
Hello,
I have a Basic MSI project (IS 2009 SP1) that deploys .NET assemblies. Until recently uninstallation handled correctly deleting of deployed assemblies. But now they are left in target directory and I need to delete them manually. There is no error message or indication of that is something went wrong during uninstallation. What can the problem?
I have a Basic MSI project (IS 2009 SP1) that deploys .NET assemblies. Until recently uninstallation handled correctly deleting of deployed assemblies. But now they are left in target directory and I need to delete them manually. There is no error message or indication of that is something went wrong during uninstallation. What can the problem?
(12) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
04:26 AM
The log file that is generated during uninstallation shows:
[HTML]MSI (s) (B4:DC) [11:58:27:599]: Feature: QEF; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles1; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles2; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles3; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles4; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles5; Installed: Local; Request: Absent; Action: Absent
...[/HTML]
Such status is log for every installed component. Does anybody have a clue why it is so?
[HTML]MSI (s) (B4:DC) [11:58:27:599]: Feature: QEF; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles1; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles2; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles3; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles4; Installed: Local; Request: Absent; Action: Absent
MSI (s) (B4:DC) [11:58:27:599]: Component: AllOtherFiles5; Installed: Local; Request: Absent; Action: Absent
...[/HTML]
Such status is log for every installed component. Does anybody have a clue why it is so?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
05:05 AM
I'm having the same problem, although I have duplication of assemblies between features and it is only those dll's that are not deleted. I am installing all assemblies into the same directory and using 'never overwrite' yes. How can I get around this problem?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
05:25 AM
I have a vague assumption that it is due to upgrade and installation of SP. What version of IS do you use?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
06:49 AM
I'm using Installshield 2009 Premier
Version 15
Service Pack 1.
Is that what you are using?
Version 15
Service Pack 1.
Is that what you are using?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
06:52 AM
Yes.
I am trying to figure out what is the problem. I will post back a bit later about the results. Probably you encounter the same problem.
I am trying to figure out what is the problem. I will post back a bit later about the results. Probably you encounter the same problem.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
08:43 AM
OK thank you Kovalenko. I am really very stuck with the problem so any information you find will be very helpful. Here are the results of my investigations:
If I look in the MSI Log I see the following:
MSI (s) (FC:A0) [13:06:43:752]: Executing op: ComponentUnregister(ComponentId={3A0966C5-55E6-A035-AB25-4C005178B2D6},,BinaryType=0,PreviouslyPinned=1)
1: {9AC43159-48AF-4171-BB27-A91F0000CEBF} 2: {3A0966C5-55E6-A035-AB25-4C005178B2D6}
These correspond with all of the dll's that don't get deleted. I am using the Shared = Yes property because I want the registry to keep track of the number of times the same dll is installed from different features. i.e. Feature A and Feature B may both contain the same dll, but the installation copies them all into one main directory. I am also using dynamic file allocation to assign the dlls to each feature.
I can see that all of my Shared Assemblies are being deleted from the registry, yet PreviouslyPinned=1 remains and so do all the duplicated dlls in my installation directory.
I've tried running it on several, clean machines. However, my installer still fails to delete a subset of the files.
If I look in the MSI Log I see the following:
MSI (s) (FC:A0) [13:06:43:752]: Executing op: ComponentUnregister(ComponentId={3A0966C5-55E6-A035-AB25-4C005178B2D6},,BinaryType=0,PreviouslyPinned=1)
1: {9AC43159-48AF-4171-BB27-A91F0000CEBF} 2: {3A0966C5-55E6-A035-AB25-4C005178B2D6}
These correspond with all of the dll's that don't get deleted. I am using the Shared = Yes property because I want the registry to keep track of the number of times the same dll is installed from different features. i.e. Feature A and Feature B may both contain the same dll, but the installation copies them all into one main directory. I am also using dynamic file allocation to assign the dlls to each feature.
I can see that all of my Shared Assemblies are being deleted from the registry, yet PreviouslyPinned=1 remains and so do all the duplicated dlls in my installation directory.
I've tried running it on several, clean machines. However, my installer still fails to delete a subset of the files.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
08:50 AM
PS: I also have the same 'Absent' values that you had in your logfile:
MSI (s) (FC:A0) [13:06:42:127]: Component: AllOtherFiles; Installed: Local; Request: Absent; Action: Absent
MSI (s) (FC:A0) [13:06:42:127]: Component: AllOtherFiles1; Installed: Local; Request: Absent; Action: Absent
MSI (s) (FC:A0) [13:06:42:127]: Component: AllOtherFiles2; Installed: Local; Request: Absent; Action: Absent
MSI (s) (FC:A0) [13:06:42:127]: Component: _FAD7BC9773DE077A3CA18D5BB964FE5D; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _62D6A2DD9465AD5A65BEAABA29A6DA52; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _11ABF4932AD00801C80094D8EFFCFB3D; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _A6BBD9D898514E177DE950025FB62B8F; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _FB798DEEFA3D0E0FBC7CAF9DD4C25396; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _7E6A2199B6E22470D3C4650790D0CB79; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _CB155800C0E9F48874724AB38CD6AFAC; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _0C82B1A4DF158DEC6D33A0AAC52977CC; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: AllOtherFiles; Installed: Local; Request: Absent; Action: Absent
MSI (s) (FC:A0) [13:06:42:127]: Component: AllOtherFiles1; Installed: Local; Request: Absent; Action: Absent
MSI (s) (FC:A0) [13:06:42:127]: Component: AllOtherFiles2; Installed: Local; Request: Absent; Action: Absent
MSI (s) (FC:A0) [13:06:42:127]: Component: _FAD7BC9773DE077A3CA18D5BB964FE5D; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _62D6A2DD9465AD5A65BEAABA29A6DA52; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _11ABF4932AD00801C80094D8EFFCFB3D; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _A6BBD9D898514E177DE950025FB62B8F; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _FB798DEEFA3D0E0FBC7CAF9DD4C25396; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _7E6A2199B6E22470D3C4650790D0CB79; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _CB155800C0E9F48874724AB38CD6AFAC; Installed: Local; Request: Absent; Action: Null
MSI (s) (FC:A0) [13:06:42:127]: Component: _0C82B1A4DF158DEC6D33A0AAC52977CC; Installed: Local; Request: Absent; Action: Null
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
09:10 AM
Lewis,
For now I have now idea of what is happening during uninstall. The only thing that I came to until now is that if I create another directory under [INSTALLDIR] and move all output files from, let's say, [INSTALLDIR]/Bin (this is where these file cannot be deleted from) and use this newly created folder, everything works fine.
Nevertheless no solution till now.
PS Message like
Component: AllOtherFiles; Installed: Local; Request: Absent; Action: Absent
is valid as I understood, because I created a sample installation project that works correctly and it has the same entries.
For now I have now idea of what is happening during uninstall. The only thing that I came to until now is that if I create another directory under [INSTALLDIR] and move all output files from, let's say, [INSTALLDIR]/Bin (this is where these file cannot be deleted from) and use this newly created folder, everything works fine.
Nevertheless no solution till now.
PS Message like
Component: AllOtherFiles; Installed: Local; Request: Absent; Action: Absent
is valid as I understood, because I created a sample installation project that works correctly and it has the same entries.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
09:15 AM
Thanks for the info. I will try using a secondary folder and see what happens. I just created the same project in IS2008 and everything worked fine. The main difference that I can see so far between the two logfiles is that IS2009 is marking the components with the PreviouslyPinned=1 flag.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
09:33 AM
Having said that, it doesn't look like the Shared functionality works at all in IS2008 as no entries are being made in the registry for shared dlls even with Shared=Yes. If someone knows differently or can correct me, please let me know.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 15, 2008
11:46 AM
Finally I was able to solve my problem
The PreviouslyPinned=1 indicates that you likely have a share count in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDLLs for the keyfile of those components.
You might just want to clean out this machine and test from scratch if this is a machine that's been tested or used extensively in the past.
The PreviouslyPinned=1 indicates that you likely have a share count in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDLLs for the keyfile of those components.
You might just want to clean out this machine and test from scratch if this is a machine that's been tested or used extensively in the past.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 16, 2008
04:42 AM
I have tried running the installer on a fresh machine but it still leaves files behind. I've checked the shared area of the registry and there are no entries for my application's dll's.
I am trying to package a .NET application by running a dependency check and creating folders for each feature. Some of the features share dll's. Eg. Feature A and Feature B may include xxx.dll. Therefore when the full feature set is installed (into one application directory) some dll's are being overwritten several times. At this point a count appears in the shared area of the registry. However, when I uninstall everything, the counts are deleted but PreviouslyPinned=1 is still set in the log file.
Am I taking the right approach for this? Also, is this how your installer works? e.g. Multiple features with duplicate dll's going into the same installation directory? If so, how did you overcome the problem?
I am trying to package a .NET application by running a dependency check and creating folders for each feature. Some of the features share dll's. Eg. Feature A and Feature B may include xxx.dll. Therefore when the full feature set is installed (into one application directory) some dll's are being overwritten several times. At this point a count appears in the shared area of the registry. However, when I uninstall everything, the counts are deleted but PreviouslyPinned=1 is still set in the log file.
Am I taking the right approach for this? Also, is this how your installer works? e.g. Multiple features with duplicate dll's going into the same installation directory? If so, how did you overcome the problem?