Share via


Az operációs rendszer központi telepítésének migrálásának nyomon követése az Configuration Manager-ben

A SMS_StateMigration osztály vizsgálatával nyomon követheti Configuration Manager operációs rendszer áttelepítését.

A StoreCreationDate, StoreDeletionDateés StoreReleaseDate tulajdonságok a migrálás aktuális állapotának azonosítására használhatók.

Az állapotmigrálások nyomon követése

  1. Állítson be egy kapcsolatot az SMS-szolgáltatóval. További információ: Az SMS-szolgáltató alapjai.

  2. Szerezze be a SMS_StateMigration egy példányát.

  3. Számítsa ki az aktuális migrálási állapotot a StoreCreationDate, StoreDeletionDateés StoreReleaseDate tulajdonságok használatával.

Példa

Az alábbi példametódus számbavételt ad az összes migráláson, és megállapítja, hogy folyamatban vannak-e.

A mintakód meghívásával kapcsolatos információkért lásd: Configuration Manager Kódrészletek hívása.

Sub MigrationState(connection)  

    Dim migrations  
    Dim migration  
    Dim inProgress  
    Dim zeroTime  

    zeroTime = "00000000000000.000000+***"  

    Set migrations = connection.ExecQuery( "Select * From SMS_StateMigration")  

    For Each migration in Migrations  
        inProgress=False  

        If migration.StoreCreationDate<>zeroTime Then  
            If migration.StoreReleaseDate = zeroTime Then  
                inProgress=True  
            Else If migration.StoreDeletionDate = zeroTime Then  
                inProgress = True  
            Else  
                inProgress = false  
            End If  
        End If     
        Else  
            inProgress=False  
        End If  

        WScript.StdOut.Write "Migration " + migration.MigrationID  
        If inProgress = True Then  
            Wscript.Echo " is in progress"  
        Else  
            WScript.Echo " is not in progress"  
        End If     
    Next  

End Sub     
public void MigrationState(WqlConnectionManager connection)  
{  
    try  
    {  
        IResultObject migrations =  
            connection.QueryProcessor.ExecuteQuery("Select * from SMS_StateMigration");  

        string zeroTime = "00000000000000.000000+***";  

        foreach (IResultObject migration in migrations)  
        {  
            Boolean inProgress = false;  

            if (migration["StoreCreationDate"].DateTimeValue.Equals(zeroTime) == false)  
            {  
                if (migration["StoreReleaseDate"].DateTimeValue.Equals(zeroTime) == true)  
                {  
                    inProgress = true;  
                }  
                else if (migration["StoreDeletionDate"].DateTimeValue.Equals(zeroTime) == true)  
                {  
                    inProgress = true;  
                }  
                else  
                {  
                    inProgress = false;  
                }  
            }  
            else  
            {  
                inProgress = false;  
            }  

            Console.Write("Migration " + migration["MigrationID"].StringValue);  
            if (inProgress)  
            {  
                Console.WriteLine(" is in progress");  
            }  
            else  
            {  
                Console.WriteLine(" is not in progress");  
            }  
        }  
    }  
    catch (SmsException e)  
    {  
        Console.WriteLine("Failed while displaying migration state: " + e.Message);  
        throw;  
    }  
}  

A példametódus a következő paraméterekkel rendelkezik:

Paraméter Típus Leírás
connection -Kezelt: WqlConnectionManager
- VBScript: SWbemServices
Érvényes kapcsolat az SMS-szolgáltatóval.

A kód fordítása

A C# példa a következő fordítási követelményekkel rendelkezik:

Névterek

Rendszer

System.Collections.Generic

Microsoft. ConfigurationManagement.ManagementProvider

Microsoft. ConfigurationManagement.ManagementProvider.WqlQueryEngine

Összeszerelés

microsoft.configurationmanagement.managementprovider

adminui.wqlqueryengine

Robusztus programozás

A hibakezeléssel kapcsolatos további információkért lásd: A Configuration Manager hibák ismertetése.

.NET-keretrendszer Security

A Configuration Manager alkalmazások biztonságossá tételével kapcsolatos további információkért lásd: Configuration Manager szerepköralapú felügyelet.

Lásd még

Objektumok áttekintése– Csatlakozás SMS-szolgáltatóhoz Configuration Manager felügyelt kód használatával
Csatlakozás SMS-szolgáltatóhoz Configuration Manager WMI használatával
Az operációs rendszer központi telepítésének számítógép-kezelésével kapcsolatos tudnivalók