Problèmes liés à l'enregistrement ou à l'exécution des macros
La liste suivante répertorie des problèmes que vous pouvez rencontrer lorsque vous enregistrez ou exécutez des macros dans Visual Studio.
Problèmes liés à l'enregistrement des macros
Lorsque vous enregistrez une macro, l'environnement garde la trace des éléments que vous modifiez et des touches sur lesquelles vous appuyez, et génère le code macro en fonction de ces entrées. Toutefois, les éléments ou événements d'interface utilisateur ne peuvent pas tous être enregistrés. Lors de l'enregistrement d'une macro, seuls les éléments ou événements suivants sont pris en compte :
Les éditeurs de code/texte, tels que l'éditeur de code de Visual Studio.
Les commandes et éléments de menu Visual Studio. Par défaut, Visual Studio enregistre des appels de commande par nom si les commandes elles-mêmes n'émettent pas le code en fonction d'un modèle Automation particulier vers la fonctionnalité de l'interface utilisateur.
Les fenêtres Outil communes de l'arborescence, telles que l'Explorateur de solutions.
La boîte de dialogue Ajouter un élément.
Les boîtes de dialogue Rechercher et Remplacer.
Les événements de fenêtre généraux, tels que l'activation ou la fermeture d'une fenêtre.
Si, pendant l'enregistrement d'une macro, vous avez manipulé un élément de l'environnement qui ne génère pas de code macro et que vous n'avez pas utilisé une commande d'environnement standard (par exemple, modifier via un contrôle d'édition dans une boîte de dialogue), il manquera du code dans votre macro enregistrée et par conséquent, la macro ne s'exécutera pas comme prévu.
Le cas échéant, vous pouvez modifier manuellement la macro et, dans la plupart des cas, ajouter vous-même le code manquant nécessaire. Pour savoir comment procéder, consultez Comment : modifier et créer des macros par programmation.
Lors de l'enregistrement d'une macro, certaines commandes (telles que la recherche immédiate ISearch), ainsi que le modèle utilisateur du projet d'enregistrement et du module d'enregistrement, sont désactivés.
Si vous enregistrez une macro dans l'éditeur de texte/code, les clics de souris et autres événements de souris ne sont pas enregistrés.
Notes
Actuellement, les macros VS ne prennent pas en charge les Windows Forms.
Problèmes liés à l'exécution des macros
Une macro ne s'exécute pas si son projet parent ne peut pas être généré, par exemple, si celui-ci contient une autre macro comportant des erreurs.
Les variables d'une macro conservent leur valeur entre chaque exécution de la macro, mais pas entre deux sessions de l'environnement de développement intégré (IDE, Integrated Development Environment). Par exemple, si une macro donnée incrémente la valeur d'un compteur chaque fois que la macro est exécutée, cette valeur est conservée entre chaque appel de la macro, mais elle est perdue à la fermeture de l'environnement IDE Visual Studio.
Lorsque vous exécutez une macro à partir de l'Explorateur de macros, l'environnement identifie la dernière fenêtre activée en tant que dernière fenêtre qui a été ouverte immédiatement avant l'ouverture de l'Explorateur de macros ; la macro est exécutée comme si cette fenêtre avait le focus. Ceci empêche que des problèmes se produisent si la fenêtre de l'Explorateur de macros obtient le focus à la suite d'une action incorrecte de votre macro.