1
私のアプリケーションはWMI
に依存していますが、Windowsではデフォルトでこの機能がオフになっているユーザーもいます。プログラマチックに起動することをお勧めしますか?もしそうなら、どうすればいいのですか?Windows Management Instrumentationサービスをプログラムによって起動できますか?
私のアプリケーションはWMI
に依存していますが、Windowsではデフォルトでこの機能がオフになっているユーザーもいます。プログラマチックに起動することをお勧めしますか?もしそうなら、どうすればいいのですか?Windows Management Instrumentationサービスをプログラムによって起動できますか?
MSDNによると、WMIサービスが実行されていない場合は、は、最初の管理アプリケーションまたはスクリプトがWMI名前空間への接続を要求すると自動的に開始されます。。
したがって、手動で起動する必要はありません。しかし、あなたがする必要があるならば、ServiceController classは一方通行のようになります。
using(ServiceController sc = new ServiceController("winmgmt"))
{
sc.Start();
}
これはSystem.ServiceProcess
名前空間を参照し、インポートする必要があります。
サービスが開始されただけでなく、無効になっていたため、動作しなかったと思います。私はそれを有効にして手動で起動する必要がありました – Jack
@Jack:WinAPIを使用してサービスを有効にする方法については、[この回答](http://stackoverflow.com/a/24947650/3740093)を参照してください。 –
これは私が探している、ありがとう!私はserviceName paramaeterとしてどの名前を使用すべきか不明です。私はこのWQLクエリを使用しています: 'Select * FROM Win32_NetworkAdapterConfiguration'サービス名は' NetworkAdapterConfiguration'ですか? – Jack