Reinstall of a MSI failing if i don't reboot.
Hello all,
I have 2 MSI packages and the only difference between them are some HKCU registries.
For some complicated reasons i could not create a patch with those registries and apply it over the 1st MSI. So i had to take the MSI, add the modifications to it and save it as a 2nd MSI which will be deployed instead of the 1st one. For the machines on which the 1st MSI is already installed i have to uninstall it first and then install the modified MSI. There can't be any reboot/logoff between the uninstall and install.
The problem is that if i don't reboot after the uninstall i get the following error:
Error 1923.Service vfsdrv (vfsdrv) could not be installed. Verify that you have sufficient privileges to install system services.
If i click Ignore then the MSI installs with RC 0 and the service works fine, but this is not an option :(
The Event Viewer says:
The windream VFS Service service is marked as an interactive service. However, the system is configured to not allow interactive services. This service may not function properly.
The Interact with Desktop service argument in the MSI is set to Yes, but if i change it to NO i still get the error.
I did a registry monitoring to see what is changes at reboot, and found the PendingFileRenameOperations reg was deleted and the entry under: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_ VFSDRV.
I manually deleted these and also checked for them under ControlSet001 and 002, but still i get the error.
Now the problem is easily fixed if a do the reboot, but, as i said, i cannot :(
So, what is the OS doing at reboot and how can i reproduce it manually? The OS is Win7 Enterprise.
Thank you in advance
1 Comment
[ + ] Show comment
Answers (3)
Please log in to answer
Posted by:
dj_xest
10 years ago
Try to stop the service vfsdrv that is running before attempting the uninstall. You can also append this property to the uninstall command and see if it's going to work.
MSIRESTARTMANAGERCONTROL="Disable"
MSIRESTARTMANAGERCONTROL="Disable"
Comments:
-
I tried that but vsfdrv does not appear as an installed service. It is weird i know, i think it may be a driver. There is a vsfdrv.sys file associated with it in C:\Windows\Syetem32\drivers.
In the MSI i have 2 services. The other service appears in Services.msc, but vsfdrv does not appear.
MSIRESTARTMANAGERCONTROL="Disable" is included as a property in the msi. - KodiaKro 10 years ago
Posted by:
EdT
10 years ago
Did you actually record what was in the PendingFileRenameOperations registry key? This gives you a vital clue as to what file or folder is locked and therefore needs to be deleted and/or renamed at the next reboot. Once you know that, you can code your major update (rather than writing a patch) to perform the necessary steps to ensure that the locked resource is unlocked before any system changes are made. As stated above, the service is the most likely candidate. Just deleting the PendingFileRenameOperations registry key is not going to remove/rename the resource that would otherwise be deleted and/or renamed at the next reboot. Since PFRO is able to copy a file from temp to another folder at reboot, and the temp folder is not generally included in a capture, you are probably missing this vital step as well.
Comments:
-
The file in question is a .rbf file in C:\Config.msi. I am not sure what those files are, i think they are temp msi, or something. I tried deleting that file and the registry but did not help. - KodiaKro 10 years ago
Posted by:
KodiaKro
10 years ago
I am not sure if you anyone can see the comment i added to the question, because it says:
This content is currently hidden from public view.
Reason: Removed by member request
Reason: Removed by member request
but I am now able to create a msp patch file to this package, so the whole uninstall/reinstall nightmare will be avoided.
Thank you all for trying to help me out.
Those complicated reasons i spoke of earlier are gone, and now i am able to create a msp file :)
Thank you all for trying to solve this. - KodiaKro 10 years ago