If it works, it works. This would be slightly more efficient, code-wise...

Code:

If GetFileVersion("%windir%\system32\wuaueng.dll") < "5.8.0.2469"
Shell "net stop wuauserv"
Copy "\\troy\c$\%Windir%\system32\wu*.*" "c:\winnt\system32"
Shell "net start wuauserv"
EndIf



But you may want to use SC or XNET to query wether the service is actually stopped before trying to copy the new file. I would probably use SC and WshPipe() to get the results of the command.