WMI Fun !! 〜 WMI に興味がある方・システム管理者必見! 〜
 WMI Step|WMI Sample|WMI Reference|WMI Library|My Let'snote|Personal|Link|About

WMI Fun !! > WMI Sample (VB) > サービスを開始する

このエントリーをはてなブックマークに追加
IT 関連情報を気軽に知りたい方へ、キーマンズネットがおすすめです
私も使っていますお勧め SIM フリースマホ ASUS Zenfone
DMM mobile なら常に格安 SIM 業界最安値水準で使えます

サービスを開始する: Win32_Service - WMI Sample (VB)

Topics

特定のサービスを開始するサンプルプログラムです。
Win32_Service クラスを使用します。

VBS (WSH) 版のサンプルコードはこちらで公開しています。



Sample Code

Private Sub Command1_Click()

Dim SerSet As SWbemObjectSet
Dim Ser As SWbemObject
Dim Locator As SWbemLocator
Dim Service As SWbemServices
Dim Ret As Long

Set Locator = New WbemScripting.SWbemLocator
Set Service = Locator.ConnectServer
Set SerSet = Service.ExecQuery("Select * From Win32_Service Where Name='Alerter'")

For Each Ser In SerSet

Ret = Ser.StartService()

Next

If Ret = 0 Then
MsgBox "サービスの開始に成功しました。"
Else
MsgBox "サービスの開始に失敗しました。"
End If

Set SerSet = Nothing
Set Ser = Nothing
Set Service = Nothing
Set Locator = Nothing

End Sub



Comment

今回サービスを開始するサンプルを実行する為に、Alerter サービスをテストとして使用します。もちろんサービスを開始するサンプルですのでこのサービスをすでに使用していて開始していればサンプルの実行が失敗します。
StartService メソッドを使用してサービスを開始します。このメソッドを実行すると結果が帰ってきます。0 であれば成功ですがそれ以外の値が帰ってくれば何かしらの理由で失敗したことになります。それ以外の値が示すエラーステータスは、

0: 要求が受け入れられました。
2: ユーザーに必要なアクセスがありません。
3: そのサービスは、実行中のほかのサービスが依存しているので停止できません。
4: 要求された制御コードは有効でないか、またはサービスを受け入れ可能ではありません。
5: サービスの状態 (Win32_BaseService:State) が 0、1、または 2 と等しいので、要求された制御コードはサービスに送信されませんでした。
6: サービスは開始されていません。
7: サービスは適切な時間内に開始要求に応答しませんでした。
8: サービスの開始時に不明なエラーが発生しました。
9: サービス実行可能ファイルへのディレクトリ パスが見つかりませんでした。
10: サービスは既に実行しています。
11: 新しいサービスを追加するデータベースはロックされています。
12: このサービスが依存する依存関係はシステムから削除されました。
13: サービスは依存関係のあるサービスから必要なサービスを見つけられませんでした。
14: サービスはシステムから無効になっています。
15: サービスにはシステムで実行するための正しい承認がありません。
16: このサービスはシステムから削除されているところです。
17: サービスに実行スレッドがありません。
18: サービスの開始時に循環依存があります。
19: 同じ名前で実行中のサービスがあります。
20: サービスの名前に無効な文字があります。
21: 無効なパラメーターがサービスに渡されました。
22: このサービスが実行するアカウントは、無効か、またはサービスを実行するアクセス許可がロックされています。
23: サービスは、システムから利用できるサービスのデータベースにあります。
24: サービスは現在システムで一時停止されています。

以上になります。
なお WMI の使い方(VB6, VBS, VBA, VB.NET, VC#, PowerShell を対象) に関しては、WMI Step も参考にしてみてください。(WMI 初心者・入門編としてもおすすめです。) 各種言語を使用したWMIを使用するたたき台としてソースコードテンプレートも公開しています。WMI プログラム/スクリプト作成時に役立てば…と思っています。


Recommended book

個人的にお勧めする本の紹介です。


ご意見・ご要望・ご感想をこちらのアンケートからお待ちしています
WMIに関して調べているけど探し物が見つからない…という方はSearch Resultから検索してみましょう!!

MCP(Microsoft Certified Professional)一応MCP(Microsoft Certified Professional)、MCA(Microsoft Certified Associate)所有してたりします…

- WMI Fun !! -
http://www.wmifun.net/
Microsoft社のテクノロジーであるWMI(Windows Management Instrumentation)の使い方を
Visual Basicを使ってのんびり公開しています
WMIはWindows 7やWindows 8、Windows 10で便利に使えますよ! またVB/VBAや.Net(VB,C#)などの開発環境以外でもAPIに依存しないのでWMICやWSH(VBS,JS)・PowerShellなどスクリプト言語から有効に活用が出来ます
Windowsベースの社内ITシステムに関する資産管理、アセットマネジメントや監視業務の効率化、
インベントリ情報収集系システムツール開発にWMIはお勧めです

This website is created by Toh.
Copyright(C) 1997-2013 WMI Fun !!. All rights reserved.
WMI Fun !!へのリンクはご自由に…相互リンクに関するお問い合わせはアンケートページからお願いします

∧ ページの先頭へ…