web-dev-qa-db-ja.com

WMICでサービスを作成するにはどうすればよいですか?

WinAPI関数とc++を使用してサービスプログラムを作成しました。これは、サービスマネージャーのwmic.exeによって次のcommandで作成します。

service create name="test" where path = "C:\Users\msi\Desktop\SampleService.exe"

しかし、それは私にerrorを与えます:

Invalid format.
Hint: <assignlist> = <propertyname>=<propertyvalue> [, <assignlist>].

wmic.exeツールを使用してサービスを作成するにはどうすればよいですか?

1
BattleTested

答えは、wmicは新しいシステムサービスを作成できないということだと思います。

昇格したコマンドプロンプトを実行し、コマンドwmic service create /?:Fullを実行して、次の出力を受け取りました。

enter image description here

プロパティのリストには、システムサービスが必要とする可能性のあるすべての引数が含まれており、すべて「該当なし」を意味する「N/A」とマークされています。

また、グーグルで"wmic service create"を検索したところ、わずか4つの回答が見つかりましたが、いずれもサービスの作成に関連していませんでした。

wmic以外のツールに頼る必要があると思います。

たとえば、PowerShellのドキュメントにはアプレット New-Service が含まれています。

WMI自体には、このようなメソッドが Win32_ServiceクラスのCreateメソッド に含まれていますが、wmic以外のメソッドを介して呼び出す必要があります。

1
harrymc