Войти

Показать полную графическую версию : [решено] Как получить список всех служб не майкрософт


icq99999999
16-12-2019, 14:10
нужен скрипт для получения названий сторонних служб и их отключение от автозагрузки
есть скрипт for /f "tokens=1,*delims= " %%a in ('sc queryex^|find /v " : "^|find /v ", "') do @echo %%b но он выводит все службы а нужно только те у которых изготовитель не майкрософт

DJ Mogarych
16-12-2019, 14:14
А по какому критерию это определить?

Вот наколхозили функцию:
https://stackoverflow.com/questions/54773305/powershell-how-to-find-out-which-running-services-arent-part-of-os-and-non-ms

icq99999999
16-12-2019, 14:17
примерно так как это делает утилита Autoruns (только мне нужно отключение в автоматическом режиме)

DJ Mogarych
16-12-2019, 15:00
Ну так можно авторанс и использовать (powershell):

& D:\temp\SysinternalsSuite\autorunsc.exe -a s -m -c -accepteula -nobanner |convertfrom-csv |? category -eq 'services'

icq99999999
16-12-2019, 15:12
powershell есть не на всех пк. может есть вариант через cmd (или autorunsc) отключить из автозагрузки сторонние службы?

DJ Mogarych
16-12-2019, 15:13
powershell есть не на всех пк »
У вас есть что-то старше Windows XP?

icq99999999
16-12-2019, 15:27
есть и 7 виндовс но ведь на хп powershell нет(на сколько я знаю) а скрипт должен отрабатывать и там

DJ Mogarych
16-12-2019, 15:31
на хп powershell нет »
Есть. Насчёт cmd - может, коллеги помогут.

Iska
16-12-2019, 17:45
но ведь на хп powershell нет… »
…но можно установить версию 2.0.

…и их отключение от автозагрузки »
icq99999999, а Вас не смущает, что после этого тупо «отвалится» часть железок на машине?

P.S. autoruns скрывает не все компоненты Microsoft.

icq99999999
17-12-2019, 09:07
«отвалится» часть железок на машине? »
если это и произойдёт, то всегда можно включить нужную службу

vombat2
17-12-2019, 12:15
Если не получится с автоматикой, могу предложить ручной вариант: Есть программка Serviwin (для управления службами и драйверами). В ней можно отсортировать службы по столбцу "Company" затем выделить все "Microsof.." потом сделать html-отчет. Далее открыть этот отчет в excel, выделить столбец с названиями и скопировать его в текстовый файл.. Далее этот список поставить в игнор вашей "отключалки" каким-нибудь образчиком..
Такой список например у меня на W8.1 Pro
AeLookupSvc
ALG
AppIDSvc
Appinfo
AppMgmt
AppReadiness
AppXSvc
AudioEndpointBuilder
Audiosrv
AxInstSV
BDESVC
BFE
BITS
BrokerInfrastructure
Browser
BthHFSrv
bthserv
CertPropSvc
COMSysApp
CryptSvc
CscService
DcomLaunch
defragsvc
DeviceAssociationService
DeviceInstall
Dhcp
DiagTrack
Dnscache
dot3svc
DPS
DsmSvc
Eaphost
EFS
ehRecvr
ehSched
EventLog
EventSystem
Fax
fdPHost
FDResPub
fhsvc
FontCache
FontCache3.0.0.0
gpsvc
hidserv
hkmsvc
HomeGroupProvider
IEEtwCollectorService
IKEEXT
iphlpsvc
KeyIso
KtmRm
LanmanServer
LanmanWorkstation
lfsvc
lltdsvc
lmhosts
LSM
Mcx2Svc
MMCSS
MpsSvc
MSDTC
MSiSCSI
msiserver
MsKeyboardFilter
napagent
NcaSvc
NcbService
NcdAutoSetup
Netlogon
Netman
netprofm
NetTcpPortSharing
NlaSvc
nsi
ose
osppsvc
p2pimsvc
p2psvc
PcaSvc
PeerDistSvc
PerfHost
pla
PlugPlay
PNRPAutoReg
PNRPsvc
PolicyAgent
Power
PrintNotify
ProfSvc
QWAVE
RasAuto
RasMan
RemoteAccess
RemoteRegistry
RpcEptMapper
RpcLocator
RpcSs
SamSs
SCardSvr
ScDeviceEnum
Schedule
SCPolicySvc
seclogon
SENS
SensrSvc
SessionEnv
SharedAccess
ShellHWDetection
smphost
SNMPTRAP
Spooler
sppsvc
SSDPSRV
SstpSvc
stisvc
StorSvc
svsvc
swprv
SysMain
SystemEventsBroker
TabletInputService
TapiSrv
TermService
Themes
THREADORDER
TimeBroker
TrkWks
TrustedInstaller
UI0Detect
UmRdpService
upnphost
VaultSvc
vds
vmicguestinterface
vmicheartbeat
vmickvpexchange
vmicrdv
vmicshutdown
vmictimesync
vmicvss
VSS
W32Time
wbengine
WbioSrvc
Wcmsvc
wcncsvc
WcsPlugInService
WdiServiceHost
WdiSystemHost
WdNisSvc
WebClient
Wecsvc
WEPHOSTSVC
wercplsupport
WerSvc
WiaRpc
WinDefend
WinHttpAutoProxySvc
Winmgmt
WinRM
WlanSvc
wlidsvc
wmiApSrv
WMPNetworkSvc
workfolderssvc
WPCSvc
WPDBusEnum
wscsvc
WSearch
WSService
wuauserv
wudfsvc
WwanSvc

Кстати, там и командная строка поддерживается..
serviwin.exe /stab services "c:\temp\serv.txt" /sort "Company" \\comp1

Sham
18-12-2019, 10:59
Имя компании достаётся непосредственно из свойств exe-файла службы. Больше неоткуда.
Есть у меня рабочий вариант и для XP (на jscript). Проверял.
Нужное раскомментить.
var shellapp = new ActiveXObject("Shell.Application");
var fso = new ActiveXObject("Scripting.FileSystemObject");
var wmi = GetObject("winmgmts:{impersonationLevel=impersonate}!\\\\.\\root\\CIMv2");
var serv = wmi.ExecQuery("SELECT Name, DisplayName, PathName, StartMode, State FROM Win32_Service");

for (var e = new Enumerator(serv), s, sp, f;
!e.atEnd() && (s = e.item());
e.moveNext()
) {
var exe = s.PathName.replace(/^\s+|\s+$/g, "").replace(/\s+/g, " ");
var RealExePath = exe.charAt(0) === '"'
? exe.substring(1, exe.indexOf('"', 1))
: (/\.exe$/i.test(exe) || (sp = exe.indexOf(" ", 1)) === -1
? exe
: exe.substring(0, sp)
);

//do we need svchosts?
if (/svchost(?:\.exe)?$/i.test(RealExePath)) continue;

WSH.Echo(s.Name + " (" + s.DisplayName + ")");
WSH.Echo("Stat:", s.StartMode, s.State);
WSH.Echo("PathName: " + s.PathName);
WSH.Echo("Exe: " + RealExePath);

try {
f = fso.GetFile(RealExePath);
} catch (ex) {
try {
f = fso.GetFile(RealExePath + ".exe");
} catch (ex) {
WSH.Echo(ex.message + ": " + RealExePath + "\n");
continue;
}
}

var comp = shellapp.Namespace(f.ParentFolder + "")
.ParseName(f.Name + "")
.ExtendedProperty("Company") || "Empty";
WSH.Echo("Company: " + comp);

if (!/Microsoft|Майкрософт/i.test(comp)) { //ANSI cyrillic encoding!
WSH.Echo("Non-microsoft service found");
//Disabled, Automatic, Manual
//WSH.Echo("ChangeStartMode returned " + s.ChangeStartMode("Manual"));
//WSH.Echo("StopService returned " + s.StopService());
}

WSH.Echo();
}

Iska
18-12-2019, 17:56
Именно — локализованные названия (a-la «Майкрософт») autoruns не учитывает.

DJ Mogarych
18-12-2019, 22:57
Ну так можно дополнительно фильтрануть вывод авторанса.

& & D:\temp\SysinternalsSuite\autorunsc.exe -a s -m -c -accepteula -nobanner |convertfrom-csv |? {$_.category -eq 'services' -and $_.company -notmatch "Майкрософт|Микрософт|Макрософт|Мегахард"}




© OSzone.net 2001-2012