-
Bug
-
Resolution: Fixed
-
P2
-
6u5
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2199121 | 7 | Chris Gruszka | P2 | Closed | Fixed | b64 |
There is a bug in MSI, where when it goes to delete each of our JRE files, it scans all processes to see which processes are using any files of the same name.
The bigger problem is specifically with msvcr71.dll MSI goes to remove this in the jre/bin directory, and it also notices other random processes are using the same file (though their own copy). So sometimes our uninstaller will ask users to showdown many apps that Java isn't even using, because these apps also use msvcr71.dll.
I believe the one fix would be to individually add files to the RemoveFile table for the jre/bin directory, and specifically leave out msvcr71.dll. Then we'll need to manually remove it in the UninstallJRE function in RegUtils.dll. Though this isn't really an elegant solution.
Another approach to this problem would be to not use the RemoveFile table anymore, and use our new FilesInUse.cpp native win32 dialog. We'd also have to do all of the removing of the JRE files ourselves. This is probably the better solution.
The bigger problem is specifically with msvcr71.dll MSI goes to remove this in the jre/bin directory, and it also notices other random processes are using the same file (though their own copy). So sometimes our uninstaller will ask users to showdown many apps that Java isn't even using, because these apps also use msvcr71.dll.
I believe the one fix would be to individually add files to the RemoveFile table for the jre/bin directory, and specifically leave out msvcr71.dll. Then we'll need to manually remove it in the UninstallJRE function in RegUtils.dll. Though this isn't really an elegant solution.
Another approach to this problem would be to not use the RemoveFile table anymore, and use our new FilesInUse.cpp native win32 dialog. We'd also have to do all of the removing of the JRE files ourselves. This is probably the better solution.
- backported by
-
JDK-2199121 need to remove msvcr71.dll from the RemoveFile table
-
- Closed
-
- duplicates
-
JDK-6597916 When JQS running, FilesInUse dialog displayed with app using separate copy of MSVCR71.dll
-
- Closed
-
-
JDK-6624173 stop JQS before InstallValidate so it does not cause files in use
-
- Closed
-
- relates to
-
JDK-6651964 PIP install removes bin\msvcr71.dll, "Error loading: C:\Program Files\Java\jre6\bin\client\jvm.dll"
-
- Closed
-