次の方法で共有


インスタンスを変更または更新する方法

インスタンスを取得したら、ローカル コピーを変更し、サーバーへの変更を更新できます。

インスタンスを変更または更新するには

  1. GetObject を呼び出して、オブジェクトのローカル コピーを 取得します

  2. 必要に応じて、 Properties_ メソッドを呼び出してオブジェクトのプロパティを表示します。

    必須ではありませんが、プロパティを変更する前にプロパティの値を知りたい場合があります。

  3. SWbemProperty.Value メソッドを呼び出して、オブジェクト プロパティに変更を加えます。

    Value メソッドは、ローカル コピーのみを変更します。 変更を WMI に保存するには、完全なコピーを WMI リポジトリに戻す必要があります。

  4. SWbemObject.Put_メソッドまたは SWbemObject.PutAsync_ メソッドを呼び出して、WMI リポジトリにオブジェクト 戻します。

    名前が示すように、 Put_ は同期的に更新され、 PutAsync_ は非同期的に更新されます。 どちらのメソッドも、変更したインスタンスを使用して元のインスタンスにコピーします。 ただし、非同期処理を利用するには、 SWbemSink オブジェクトを作成する必要があります。

    次の例は、インスタンスを更新する方法を示しています。

        Set ObjClass  = Namespace.Get("MsSna_LinkService_IpDlc")     
    ' Create new link service instance  
        Set NewInst   = ObjClass.SpawnInstance_  
        ' Set instance properties  
        NewInst.NetworkName = Left(strComputerName, 8)  
        NewInst.CPName = "IPDLCLS"  
        NewInst.NodeID = "05D.FFFFF"  
        NewInst.AddressType = 2  
        NewInst.LocalAddress = Trim(strLocalAddress)  
        NewInst.LENNode = strLenNode  
        NewInst.PrimaryNNS = strPrimaryNNS  
        if (strBackupNNS <> Empty) then  
            NewInst.BackupNNS = strBackupNNS  
        end if  
        ' Commit the instance  
        NewInst.Put_