Thank you so very much. I'm very happy to hear that since I've never copied and executed a batch file before. It's wonderful how you're helping everyone with this. Sincerely, Libra
I put Pendrive in System32 and copied and pasted the batch file in CMD. Had no luck. Said to put in a elevated command prompt. I guess some help would be nice Thanks
"Elevated" = "Run as administrator" as in, find the command prompt, right click, choose "run as administrator" and then attempt what you are trying to do.
When I try to do that I copy the entire file but it won't show up in CMD. Just the echo part. EDIT: I cheated. Did it the delete the controller way. Oh well I'm up to speed now.
I made a version improvement to the batch file. This one checks that the OS is actually Win 7 and SP1 And it also performs the date check on the 3 files (usbehci.sys usbport.sys winusb.sys) allowing you to exit the program if they are already up to date. Just put the two pendmove files in the same folder as you run this batch file from pendmove32.exe pendmove64.exe Code: @echo off echo WIN7 POST SP1 USB BUG FIX: echo. echo Checking compatibility for Win7 SP1: echo. Set K_="HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" Set P_=Windows 7 Reg query %K_% /v ProductName|Find "%P_%">Nul 2>&1&&( echo %P_% is installed, continuing ... )||( echo %P_% is not installed!, quitting ... goto end ) Set K_="HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" Set P_=Service Pack 1 Reg query %K_% /v CSDversion|Find "%P_%">Nul 2>&1&&( echo %P_% is installed, continuing ... )||( echo %P_% is not installed!, quitting ... goto end ) echo. echo Make sure you ran this from an elevated command prompt! echo Right click - "Run as administrator" pause echo cd %systemroot%\system32\drivers dir usbehci.sys usbport.sys winusb.sys REM back to this DIR CD /D "%~dp0" echo. echo --- TEST RESULTS: --- echo. echo If any of the files are dated July 2009 instead of November 2010, echo then you are affected. echo. echo To fix press any key. echo To quit press the "x" button on this window. pause if ["%PROCESSOR_ARCHITECTURE%"] == ["x86"] ( SET PENDMOVE="%CD%\pendmove32.exe" goto x86-32 ) if ["%PROCESSOR_ARCHITECTURE%"] == ["AMD64"] ( SET PENDMOVE="%CD%\pendmove64.exe" goto x86-64 ) echo Invalid PROCESSOR_ARCHITECTURE! goto end :x86-32 echo 32 bit system set SourceRoot=%SystemRoot%\winsxs\x86_usbport.inf_31bf3856ad364e35_6.1.7601.17514_none_bfc9c95e61cfba61 set SourceRoot2=%SystemRoot%\winsxs\x86_winusb.inf_31bf3856ad364e35_6.1.7601.17514_none_f9fc4e7173e3735c goto start :x86-64 echo 64 bit system set SourceRoot=%SystemRoot%\winsxs\amd64_usbport.inf_31bf3856ad364e35_6.1.7601.17514_none_1be864e21a2d2b97 set SourceRoot2=%SystemRoot%\winsxs\amd64_winusb.inf_31bf3856ad364e35_6.1.7601.17514_none_561ae9f52c40e492 goto start :start pushd %SystemRoot%\System32\drivers copy %SourceRoot%\usbehci.sys usbehci.sys.new %PENDMOVE% usbehci.sys.new usbehci.sys copy %SourceRoot%\usbport.sys usbport.sys.new %PENDMOVE% usbport.sys.new usbport.sys if exist winusb.sys ( copy %SourceRoot2%\winusb.sys winusb.sys.new %PENDMOVE% winusb.sys.new winusb.sys ) popd echo Now you need to reboot.(if you have signature issues, reboot twice) :end pause Enigma256, sorry I was not able to send as a private message, I just registered and it would not let me. if you want to put this in your 1st post, please do. Mike Challis
I just tested the 7601usbfix.exe on a 64bit Dell system after installing SP1 and it works. I did have to reboot twice before all 3 files were recognized as fully replaced.
i think i know why the drivers are reported wrong by devmgr the .sys files have a corresponding .mui file (usbport.sys.mui) which is still SP0 (not updated by SP1). these .mui files are loaded along with the actual driver file, and prevents active swapping, and are not updated with SP1 (the file in the actual SP1 repo folder is still based on SP0). Since the .mui file overrides the .sys files internal resources, the old version is displayed instead. USBEhci.sys does not have an mui file. Edit Verified this is the case. bthport is also reporting a SP1 version in file properties and SP0 version in devmgr, the mui has not been updated for SP1 and still reads 16385. lol, i wonder if downloading and installing the english language pack would do it.....
Just thougt i'd add, I used the sp1 installer and it updated all my usb drivers. (I just checked after reading your post) I suggest people check before they do this.
Thank you and Kliu for the 760l usbfix. I just used it and my two old usb files are now current. This is very much appreciated. Sincerely,Libra
As noted in the first post, it seems that some hardware configurations are immune to the problem (but since people like you who do have this immunity never say anything useful, like, for example, what chipset their motherboard uses, there's no way to tell what sorts of hardware configurations are immune). And as noted on the 7601usbfix tool's webpage, the tool will check your USB file versions, and it will not do anything if it finds that your driver files are already up-to-date. So there's no harm in running it. Of course, you can still manually check yourself if you want, but the worst that can happen is that you spend an extra 30 seconds downloading and running a 6.5KB file and have it tell you that no changes are needed.
I would also like to add, if you just recently updated to SP1 and it's still the old version post some basic specs as Enigma suggested.
Just come across this and thanks for the useful information. I have some questions though. I just checked one of my systems running the Simplified Chinese version of Windows 7 x64. SP1 was installed via the file installer downloaded from Microsoft. I did a directory listing of the usb*.sys files in the drivers folder and I saw that apart from the affected files (I did not see a winusb.sys file) there were several more files which are dated July 2009 instead of November 2010. So I would like to ask: 1) Do you or any other people know the list of USB related files that were updated by SP1? 2) For those files not updated and not mentioned in this thread, is it normal for them not to be updated by SP1? 3) I am using non-English versions of Windows 7. Can the tool mentioned here find and fix the problem? If not, and if I want to fix it, do I have to use the "Easy but messy" solution?
I assume what you are really trying to ask is, "are there other files affected by this?" And the answer to that is "no". I have done a comparison of an integrated SP1 vs. an exe-updated SP1, and these are the only files affected. There are a lot of USB-related files that are not supposed to be updated (so yes, it's normal for files not mentioned in this thread to have a 2009 date). The tool works for all languages, all editions (even 2008 R2) of 6.1.7601. (Well, except for Itanium, but do Itanium machines even have USB? ) I have no idea. Someone wanna try it? That makes a lot of sense, since the whole point of the MUI is the replace the PE's resources, and that's exactly where the version info is stored. I haven't checked, but I'd expect the language packs to follow the same model as the main system files themselves: they are updated only if there was a change, so I would expect the vast majority of them to remain as 7600.
Thank you for your answer. One thing I felt I should mention : if you use HAL7600 to activate Windows 7, the build number will revert to 6.1.7600 (even though it still says Service Pack 1) and the tool won't work.