%20de%20un%20servicio%20de%20Windows%20en%20CMD%3F.png)
Quiero crear un acceso directo en el escritorio que contenga un breve script de línea de comando en Windows 7 (sí... antiguo) que alterna un determinado servicio desde el tipo de inicio manual
hacia adelante disabled
y hacia atrás, ejecutándolo repetidamente. Al pasar de manual
a disabled
, también se debe finalizar el servicio, mientras que al pasar de disabled
a , no se hace nada manual
. Básicamente, el script debería actuar como un interruptor de "encendido/apagado" para el servicio en cuestión, como el que se encuentra en la fuente de alimentación de su PC.
Una posible versión Pythonesque podría verse así:
if service.startup_type = 'manual':
service.startup_type = 'disabled'
service.stop()
print(f'{service.name} disabled.')
time.sleep(1.0)
else:
service.startup_type = 'manual'
print(f'{service.name} enabled.')
time.sleep(1.0)
Nota: Me gustaría usar CMD porque todavía no estoy familiarizado con PowerShell, pero estoy abierto a sugerencias.
Respuesta1
Aquí tienes un guión de muestra.Script por lotes para alternar los servicios de Windows Update y Trusted Installer.. Reemplácelo wuauserv
con el servicio de su elección y elimine TrustedInstaller
las referencias en consecuencia.
Enlace de respaldo(Archivo de Internet)
Respuesta2
Todos empezamos desde algún lugar, todos los días. ;-} Todo lo que necesitas está en los archivos de ayuda de PowerShell.
Get-Help -Name Get-Service -Full
Get-Help -Name Get-Service -Examples
Get-Help -Name Start-Service -Full
Get-Help -Name Start-Service -Examples
Get-Help -Name Stop-Service -Full
Get-Help -Name Stop-Service -Examples
Get-Service | Select-Object -First 1 | Get-Member
# Results
<#
TypeName: System.ServiceProcess.ServiceController
Name MemberType Definition
---- ---------- ----------
Name AliasProperty Name = ServiceName
RequiredServices AliasProperty RequiredServices = ServicesDependedOn
Disposed Event System.EventHandler Disposed(System.Object, System.EventArgs)
Close Method void Close()
Continue Method void Continue()
CreateObjRef Method System.Runtime.Remoting.ObjRef CreateObjRef(type requestedType)
Dispose Method void Dispose(), void IDisposable.Dispose()
Equals Method bool Equals(System.Object obj)
ExecuteCommand Method void ExecuteCommand(int command)
GetHashCode Method int GetHashCode()
GetLifetimeService Method System.Object GetLifetimeService()
GetType Method type GetType()
InitializeLifetimeService Method System.Object InitializeLifetimeService()
Pause Method void Pause()
Refresh Method void Refresh()
Start Method void Start(), void Start(string[] args)
Stop Method void Stop()
WaitForStatus Method void WaitForStatus(System.ServiceProcess.ServiceControllerStatus desiredStatus), void WaitForStatus(System.ServiceProc...
CanPauseAndContinue Property bool CanPauseAndContinue {get;}
CanShutdown Property bool CanShutdown {get;}
CanStop Property bool CanStop {get;}
Container Property System.ComponentModel.IContainer Container {get;}
DependentServices Property System.ServiceProcess.ServiceController[] DependentServices {get;}
DisplayName Property string DisplayName {get;set;}
MachineName Property string MachineName {get;set;}
ServiceHandle Property System.Runtime.InteropServices.SafeHandle ServiceHandle {get;}
ServiceName Property string ServiceName {get;set;}
ServicesDependedOn Property System.ServiceProcess.ServiceController[] ServicesDependedOn {get;}
ServiceType Property System.ServiceProcess.ServiceType ServiceType {get;}
Site Property System.ComponentModel.ISite Site {get;set;}
StartType Property System.ServiceProcess.ServiceStartMode StartType {get;}
Status Property System.ServiceProcess.ServiceControllerStatus Status {get;}
MSDN ScriptMethod System.Object MSDN();
ToString ScriptMethod System.Object ToString();
#>