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
ツールを使用してサービスを作成するにはどうすればよいですか?
答えは、wmic
は新しいシステムサービスを作成できないということだと思います。
昇格したコマンドプロンプトを実行し、コマンドwmic service create /?:Full
を実行して、次の出力を受け取りました。
プロパティのリストには、システムサービスが必要とする可能性のあるすべての引数が含まれており、すべて「該当なし」を意味する「N/A」とマークされています。
また、グーグルで"wmic service create"
を検索したところ、わずか4つの回答が見つかりましたが、いずれもサービスの作成に関連していませんでした。
wmic
以外のツールに頼る必要があると思います。
たとえば、PowerShellのドキュメントにはアプレット New-Service が含まれています。
WMI自体には、このようなメソッドが Win32_ServiceクラスのCreateメソッド に含まれていますが、wmic
以外のメソッドを介して呼び出す必要があります。