Utilisation d’une action personnalisée pour créer des comptes d’utilisateur sur un ordinateur local

Cet exemple montre comment utiliser des actions personnalisées pour créer des comptes d’utilisateur sur un ordinateur local durant l’installation d’un composant. La suppression d’un composant entraîne la suppression des comptes d’utilisateur locaux créés par l’action personnalisée. Plusieurs actions personnalisées sont présentées, notamment les actions personnalisées d’exécution différée et les actions personnalisées de restauration.

L’exemple répond aux spécifications suivantes.

  • L’installation crée des comptes d’utilisateur uniquement si Windows 2000 est exécuté.
  • L’installation crée des comptes d’utilisateur uniquement si le composant est installé pour s’exécuter localement. Cela empêche la création de comptes d’utilisateur pendant la réparation ou la réinstallation du composant.
  • Le programme d’installation supprime les comptes quand le composant est supprimé.
  • Les informations de compte d’utilisateur sont lues à partir d’une table personnalisée dans la base de données d’installation et ne sont pas codées en dur dans le code de l’action personnalisé.
  • Étant donné que la création ou la suppression de comptes d’utilisateur nécessite des privilèges élevés, certaines actions personnalisées doivent être en mesure d’apporter au système des modifications nécessitant des privilèges élevés. Ces actions personnalisées doivent être des actions personnalisées différées qui s’exécutent quand elles sont dans le script d’exécution.
  • Chaque compte dispose d’une action personnalisée de restauration pour garantir la suppression du compte quand l’installation du composant est restaurée. Cela n’inclut pas la restauration d’un compte supprimé au moment de la suppression d’un composant.
  • Les actions personnalisées envoient des messages ActionData pour chaque compte créé ou supprimé. Cela n’inclut pas la fourniture de messages de progression pour ProgressBar.
  • Les actions personnalisées signalent une erreur si un compte ne peut pas être créé.
  • Le mot de passe du compte est obtenu par l’interaction de l’utilisateur avec l’interface utilisateur ou, dans le cas d’une installation avec les niveaux d’interface utilisateur IU de base ou Aucune, comme propriété transférée à la ligne de commande.
  • Les données sensibles n’apparaissent pas dans le fichier journal.

L’exemple inclut un composant hypothétique nommé TestAccount. La discussion faisant l’objet des sections suivantes suppose que vous avez déjà créé les ressources nécessaires pour TestAccount ainsi que les tables Feature, Component, File, Directory et FeatureComponents dans l’exemple de base de données requis pour installer ce composant. Pour plus d’informations, consultez un exemple d’installation.

Les rubriques suivantes contiennent des informations sur la création des actions personnalisées nécessaires et leur ajout à un package d’installation.