%20%E3%82%92%E8%BF%94%E3%81%99%E6%96%B9%E6%B3%95%E3%81%AF%3F.png)
Windows 7 (はい、古いです) で、特定のサービスのスタートアップ タイプを に切り替えたり、 に戻したりする短いコマンド ライン スクリプトを含むデスクトップ ショートカットを作成したいと考えていますmanual
。disabled
から に切り替えるとmanual
、サービスも終了する必要がありますが、からdisabled
に切り替えると何も行われません。基本的に、スクリプトは、PC の電源にあるような、問題のサービスに対する「電源オン/オフ」スイッチとして機能する必要があります。disabled
manual
Python 風のバージョンは次のようになります。
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)
注: PowerShell にまだ慣れていないので、CMD を使用したいと思いますが、提案があれば歓迎します。
答え1
ここにサンプルスクリプトがあります。Windows Update および Trusted Installer サービスを切り替えるバッチ スクリプト。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();
#>