vendredi 28 octobre 2011

Complete-Transaction

NOM
    Complete-Transaction

RÉSUMÉ
    Valide la transaction active.

SYNTAXE
    Complete-Transaction [-Confirm] [-WhatIf] [<CommonParameters>]


DESCRIPTION
    L'applet de commande Complete-Transaction valide une transaction active. Lorsque vous validez une transaction, les commandes de la transaction sont finalisées et les données concernées par les commandes sont modifiées.

    Lorsque la transaction comporte plusieurs abonnés, vous devez entrer une commande Complete-Transaction pour chaque commande Start-Transaction afin de valider la transaction.

    L'applet de commande Complete-Transaction fait partie d'un jeu d'applets de commande qui prennent en charge la fonctionnalité des transactions dans Windows PowerShell. Pour plus d'informations, consultez about_Transactions.


PARAMÈTRES
    -Confirm [<SwitchParameter>]
        Vous invite à confirmer l'exécution de la commande.

        Obligatoire ?                false
        Position ?                   named
        Valeur par défaut
        Accepter l'entrée de pipeline ?       false
        Accepter les caractères génériques ?  false

    -WhatIf [<SwitchParameter>]
        Décrit le résultat que vous obtiendriez en exécutant la commande, sans réellement l'exécuter.

        Obligatoire ?                false
        Position ?                   named
        Valeur par défaut
        Accepter l'entrée de pipeline ?       false
        Accepter les caractères génériques ?  false

    <CommonParameters>
        Cette applet de commande prend en charge les paramètres courants : Verbose, Debug,
        ErrorAction, ErrorVariable, WarningAction, WarningVariable, OutBuffer et OutVariable. Pour plus d'informations, tapez
        « get-help about_commonparameters ».

ENTRÉES
    Aucun
        Vous ne pouvez pas diriger d'objets vers Complete-Transaction.


SORTIES
    Aucun
        Cette applet de commande ne retourne pas d'objets.


NOTES


        Vous ne pouvez pas restaurer une transaction qui a été validée, ni valider une transaction qui a été restaurée.

        Vous ne pouvez pas restaurer une autre transaction que la transaction active. Pour restaurer une autre transaction, vous devez commencer par valider ou restaurer la transaction active.

        En cas d'impossibilité de restaurer une partie d'une transaction (lorsqu'une commande dans la transaction génère une erreur, par exemple), la transaction est par défaut entièrement restaurée.


    -------------------------- EXEMPLE 1 --------------------------

    C:\PS>cd hkcu:\software

    PS HKCU:\software> start-transaction

    PS HKCU:\software> new-item MyCompany -UseTransaction
    PS HKCU:\software> dir m*

       Hive: HKEY_CURRENT_USER\software

    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}

    PS HKCU:\software> complete-transaction
    PS HKCU:\software> dir m*

       Hive: HKEY_CURRENT_USER\Software

    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}
      0   0 MyCompany                      {}


    Description
    -----------
    Cet exemple illustre l'utilisation de l'applet de commande Complete-Transaction pour valider une transaction.

    La commande Start-Transaction démarre la transaction. La commande New-Item utilise le paramètre UseTransaction pour inclure la commande dans la transaction.

    La première commande « dir » (Get-ChildItem) indique que le nouvel élément n'a pas encore été ajouté au Registre.

    La commande Complete-Transaction valide la transaction et la modification du Registre devient effective. La deuxième commande « dir » indique alors que le Registre a été modifié.





    -------------------------- EXEMPLE 2 --------------------------

    C:\PS>cd hkcu:\software

    PS HKCU:\software> start-transaction
    PS HKCU:\software> new-item MyCompany -UseTransaction

       Hive: HKEY_CURRENT_USER\Software

    SKC  VC Name                           Property
    ---  -- ----                           --------
      0   0 MyCompany                      {}

    PS HKCU:\software> start-transaction
    PS HKCU:\Software> Get-Transaction

    RollbackPreference   SubscriberCount  Status
    ------------------   ---------------  ------
    Error                2                Active

    PS HKCU:\software> new-itemproperty -path MyCompany -name MyKey -value -UseTransaction

    MyKey
    -----
    123

    PS HKCU:\software> complete-transaction
    PS HKCU:\software> get-transaction

    RollbackPreference   SubscriberCount  Status
    ------------------   ---------------  ------
    Error                1                Active

    PS HKCU:\software> dir m*

       Hive: HKEY_CURRENT_USER\Software

    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}

    PS HKCU:\software> complete-transaction
    PS HKCU:\software> dir m*

       Hive: HKEY_CURRENT_USER\Software

    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}
      0   1 MyCompany                      {MyKey}


    Description
    -----------
    Cet exemple montre comment utiliser Complete-Transaction pour valider une transaction qui comporte plusieurs abonné
    s.

    Pour valider une transaction qui comporte plusieurs abonnés, vous devez entrer une commande Complete-Transaction pour chaque commande Start-Transaction. Les données ne sont modifiées que lorsque la dernière commande Complete-Trans action est envoyée.

    À des fins de démonstration, cet exemple montre une série de commandes entrées au niveau de la ligne de commande. Dans la pratique, il est possible que les transactions soient exécutées dans des scripts, la transaction secondaire étant exécutée par un script de fonction ou d'application auxiliaire appelé par le script principal.

    Dans cet exemple, une commande Start-Transaction démarre la transaction. Une commande New-Item avec le paramètre UseTransaction ajoute la clé MyCompany à la clé Software. Même si la commande New-Item retourne un objet clé, les données ne sont pas encore modifiées dans le Registre.

    Une deuxième commande Start-Transaction ajoute un deuxième abonné à la transaction existante. La commande Get-Transaction confirme que le nombre d'abonnés est 2. Une commande New-ItemProperty avec le paramètre UseTransaction ajoute une entrée de Registre à la nouvelle clé MyCompany. Là encore, la commande retourne une valeur, mais le Registre n'est pas modifié.

    La première commande Complete-Transaction réduit le nombre d'abonnés de 1. Cette opération est confirmée par une commande Get-Transaction. Aucune donnée n'est toutefois modifiée, comme l'atteste une commande « dir m* » (Get-ChildItem).

    La seconde commande Complete-Transaction valide la transaction entière et modifie les données dans le Registre. Cette opération est confirmée par une seconde commande « dir m* » qui affiche les modifications.





    -------------------------- EXEMPLE 3 --------------------------

    C:\PS>cd hkcu:\software

    PS HKCU:\software> start-transaction

    PS HKCU:\software> new-item MyCompany -UseTransaction

    PS HKCU:\software> dir m*

       Hive: HKEY_CURRENT_USER\Software

    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}


    PS HKCU:\software> dir m* -UseTransaction

       Hive: HKEY_CURRENT_USER\Software

    SKC  VC Name                           Property
    ---  -- ----                           --------
     82   1 Microsoft                      {(default)}
      0   0 MyCompany                      {}

    PS HKCU:\software> complete-transaction


    Description
    -----------
    Cet exemple montre l'utilisation de commandes Get-*, ainsi que d'autres commandes qui ne modifient pas les données, dans une transaction. Lorsqu'une commande Get-* est utilisée dans une transaction, elle obtient les objets qui font partie de cette transaction. Cela vous permet d'afficher un aperçu des modifications apportées à la transaction avant de les valider.

    Dans cet exemple, une transaction est démarrée. Une commande New-Item avec le paramètre UseTransaction ajoute une nouvelle clé au Registre dans le cadre de la transaction.

    Comme la nouvelle clé de Registre n'est pas ajoutée au Registre tant que la commande Complete-Transaction n'a pas été exécutée, une simple commande « dir » (Get-ChildItem) affiche le Registre sans la nouvelle clé.

    Lorsque vous ajoutez le paramètre UseTransaction à la commande « dir », la commande fait toutefois partie intégrante de la transaction et elle obtient les éléments de cette transaction même si ceux-ci n'ont pas encore été ajoutés aux données.






LIENS CONNEXES
    Online version: http://go.microsoft.com/fwlink/?LinkID=135200
    about_Transactions
    Start-Transaction
    Get-Transaction
    Undo-Transaction
    Use-Transaction

Aucun commentaire:

Enregistrer un commentaire