であることに気付きましたManagementObject
が、およびIDisposable
からも返されます。これは、遭遇した各オブジェクトを破棄する必要があるということですか?ManagementClass.GetInstances()
ManagementObjectSearcher.Get()
そのようです:
ManagementObject ret;
foreach(ManagementObject mo in searcher.Get()) {
if( IsWhatIWant(mo) ) ret = mo;
else mo.Dispose();
}
これをさらに混乱させます:ManagementBaseObject
正しく実装されていないバグがありますIDisposable
( Using 節が Dispose の呼び出しに失敗するを参照してください)。そのため、自分で呼び出すか、正しく呼び出すラッパーを使用する必要があります。
ManagementObjectCollections
周りにたくさんいるのでイライラします。