Hi
we have a weird installation problem that only happens on Windows XP 64bit.
we change our driver service name from an old_name to a new_name, we change a few lines in the INF, among them the “AddService” line.
if someone installed the old version of the driver and then install the new version of the driver he would get an error because the old_name service entry still exists in the registry.
so in order to avoid this problem, we add to the INF file a line before the “AddService” line a “DelService” to delete the old_name.
now this solution works ok in all windows (7,Vista, XP32) expect on XP64.
in XP64 if the system was atleast one unknown device (a device without a driver installed) and we reboot the system and then try to install it when the system boot up, we are getting an error that according to setupapi.log is “Service Database is lock” and out driver is not installed.
we found that if we wait until the “New hardware wizard” window popup and then trying to install the driver, the driver is been install ok without any problem.
we also found that if we remove the “DelService” line that issue is also solved.
my questions are:
- what is the “Service Database lock” error? and why only happens in XP64 SP2?
- Can we solve this issue WITHOUT removing the DelService Lines? and without changing the INF? using some SetupAPI functions?
Thanks in advance.