
我想在 Windows 7(是...舊)中建立一個包含簡短命令列腳本的桌面快捷方式,透過重複執行某個服務來在啟動類型和啟動類型manual
之間切換。disabled
當從 到manual
時disabled
,服務也應該終止,而當從 到disabled
時,不執行任何操作manual
。基本上,該腳本應該充當相關服務的「電源開/關」開關,就像 PC 電源上的開關一樣。
一個可能的 Pythonesque 版本可能如下所示:
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)
注意:我想使用 CMD,因為我還不熟悉 PowerShell,但我願意接受建議。
答案1
這是給您的範例腳本。用於切換 Windows 更新和可信任安裝程式服務的批次腳本。。替換wuauserv
為您選擇的服務,並TrustedInstaller
相應地刪除引用。
備份連結(互聯網檔案館)
答案2
我們每天都從某個地方開始。 ;-} 您需要的一切都在 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();
#>