After you connected an external device like a flash disk, printer, or scanner to Windows 7 or 8 or 10 via a USB port, the installed external device didn’t work. When you expanded it in Device Manager, you may see the installed external device in Universal Serial Bus controllers or even Unknown devices.
If you right-click it to open its Properties, you would be greeted by an error message “Windows cannot load the device driver for this hardware because a previous instance of the device driver is still in memory. (Code 38) The driver could not be loaded because a previous version of the driver is still in memory.”
For instance, after installing Windows 10 on your laptop, it worked well, but it stopped to read any connected flash disks due to the 0xC000038E USB driver error.
What does “The driver could not be loaded because a previous version of the driver is still in memory” Mean?
Normally, on Windows systems, so long as an external device is connected via USB, a driver will be automatically installed to connect the external device and Windows system. Meanwhile, the driver will be loaded into memory before being loaded.
Hence, when Windows code 38 “the driver could not be loaded because a previous version of the driver is still in memory” appears, it means that the previous instance of the driver is still in memory. That is why Windows cannot load the device driver for this hardware.
How to Fix “Windows cannot load the device driver for this hardware because a previous instance of the device driver is still in memory”
Since “Windows cannot load the device driver” after you installed an external device through the USB port, the USB driver is the most in the blame. Therefore, you may as well reinstall and then update it to see if works to solve the error code 38 in Device Manager.
Besides, if the hard disk is set to turn off in some condition, odds are that Windows 7 or 8 or 10 could allow the external device to run without reading its driver in memory. You can also run Windows inbuilt troubleshooter to fix this hardware error.
- 1: Uninstall and Update the USB Driver
- 2: Hold the Shift Key While Shutting Down
- 3: Never Turn off Hard Disk
- 4: Run Hardware and Device Troubleshooter
- 5: Clean Boot the Windows System
Solution 1: Uninstall and Update the USB Driver
Now that the Windows system warns you that “The driver could not be loaded because a previous version of the driver is still in memory”, you should check whether the USB driver is outdated or corrupted by reinstalling a new one.
Here you need to uninstall the USB driver in Device Manager and then install an updated driver automatically to update the driver quickly and accurately.
Part 1: Uninstall the USB Driver in Device Manager
1. Open Device Manager.
2. In Device Manager > Universal Serial Bus controllers or Other devices, right-click the USB driver to Uninstall device.
After uninstalling the USB driver, try to install the updated USB driver automatically by Driver Booster, the top driver tool, to help you install the device drivers automatically.
Of course, if you had time and were proficient in computers, you can download the newest version of the USB driver from the Manufacturer’s official website and then install it on your PC manually.
Part 2: Update the UBS Driver Automatically
Some users use Device Manager to update the USB driver, but sometimes Device Manager cannot find the right USB driver, so you can update the USB drivers automatically.
Driver Booster is a professional computer drivers finder and drivers downloader. With this professional tool, you can find all the missing, outdated drivers automatically, and then update these drivers with one time.
1. Download, install and run Driver Booster.
2. Click Scan.
3. Locate USB Serial Bus controllers and find the USB driver to Update it automatically.
Once the USB driver is reinstalled, you can re-connect the external device like a printer to Windows 7, 8, 10 via the USB port to see whether Windows can load the device driver for the hardware this time.
Solution 2: Hold the Shift Key While Shutting Down
This solution seems irrelevant or even absurd, but it did work for many users encountering “the driver could not be loaded because a previous version of the driver is still in memory”. You can just click Shut down and hold the “Shift” key at the same time. This operation will refresh your computer and allow you to start the Windows system from a new state.
Sometimes, the device driver can be loaded to allow the external device to work on Windows 10, 8, 7 after that. Or sometimes, a simple restart may help fix the code 38 error in Device Manager.
Solution 3: Never Turn off Hard Disk
Possibly, the driver is working well on your PC, but the hard disk setting is problematic, thus leading to the “a previous version of the driver is still in memory” error message. In this way, you are supposed to disable the “Turn off Hard Disk” option in case it causes problems.
1. Search power in the search box and hit the result “Power & sleep settings”.
2. Under Power & sleep, on the right pane, find out Additional power settings.
3. Click Change plan settings beside your power plan like Balanced or High Performance.
4. In the middle of the window, select Change advanced power settings.
5. Locate Hard disk > Turn off hard disk after, and then change On battery and Plugged in to Never.
6. Click Apply and OK to save changes.
When a hard disk works well on your device, you can see that “The driver could not be loaded because a previous version of the driver is still in memory” has disappeared when you try to connect an external device via the USB port.
Solution 4: Run Hardware and Devices Troubleshooter
The Hardware and Device Troubleshooter in itself can be used to troubleshoot various hardware issues. In this case, when your external device does not work on Windows 10, 8, 7 due to the Device Manager error code 38, you can activate this inbuilt troubleshooter.
1. Type in troubleshoot in the search box and then press Enter.
2. Under Troubleshooter, on the right side, scroll down to locate Hardware and Devices and then hit Run the troubleshooter.
Wait until this troubleshooter finishes its work. After that, you can allow it to help fix the hardware issue or follow its instructions to fix the “Windows cannot load the device driver for the hardware” yourself.
Solution 5: Clean Boot the Windows System
A clean boot on Windows 10, 8, 7 means that Windows starts with a minimal set of drivers and startup programs so that you can determine whether a background program is interfering with your program.
If a third-party software causes corruption to your system and results in “Windows cannot load the device driver for this hardware because a previous instance of the device driver is still in memory. (Code 38)”, and the above solutions are useless, you can do a clean boot for your system. In simple words, doing a clean boot on Windows is to disable any startup items.
1. Type in msconfig in the search box and then click the result “System Configuration”.
2. In System Configuration, under General, tick the circle of Selective startup, and then uncheck the box of Load startup items.
3. Under Startup, click Open Task Manager.
Of course, you can save the changes in Step 2 and open the task manager using other ways.
4. In Task Manager Startup, right-click the startup item to Disable.
In this way, all the startup items will be disabled. You can reboot the Windows system and then plug in the external device like a scanner through the USB port to see if code 38 persists in Device Manager and Windows still cannot allow the external device to work.