Код:
#include <Encoding.au3>
MsgBox(0, Default, _GetServicesStatEx())
Func _GetServicesStatEx()
Local $sStrRep[2], $StdoutRead[2]
Local Const $STDOUT_CHILD = 0x2 ; Constants.au3
$hIPconfig1_1 = Run('sc query wuauserv', '', @SW_HIDE, $STDOUT_CHILD)
$hIPconfig1_2 = Run('sc qc wuauserv', '', @SW_HIDE, $STDOUT_CHILD)
While 1
$StdoutRead[0] &= StdoutRead($hIPconfig1_1)
$StdoutRead[1] &= StdoutRead($hIPconfig1_2)
If @error Then ExitLoop
Sleep(10)
WEnd
$sStrRep[0] = StringRegExpReplace($StdoutRead[0], "(?si).*STATE\D*(\d+).*", '\1')
$sStrRep[1] = StringRegExpReplace($StdoutRead[1], "(?si).*START_TYPE\D*(\d+).*", '\1')
If Not IsNumber($sStrRep[0]) Then $sStrRep[0] = StringRegExpReplace(_Encoding_CyrillicTo1251($StdoutRead[0]), "(?si).*Состояние\D*(\d+).*", '\1')
If Not IsNumber($sStrRep[1]) Then $sStrRep[1] = StringRegExpReplace(_Encoding_CyrillicTo1251($StdoutRead[1]), "(?si).*Тип_запуска\D*(\d+).*", '\1')
Return $sStrRep[0] & '|' & $sStrRep[1]
EndFunc