Auswählen des geeigneten Automatisierungsansatzes
Aktualisiert: November 2007
Visual Studio provides several options for creating automation applications. The exact method to choose, however, depends largely on the impending task. To help guide you to the best method, consider the following factors.
Do you want to distribute the code or a compiled application?
Distribute code — Use a macro. You can deploy macros by copying a macro's project files to the new location. There is no setup or registration, but users of your macro must click the Tools menu, point to Macros, and then click Load Macro Project to start using them. You can also send a macro as text for use by others. For more information, see Gewusst wie: Aufzeichnen von Makros.
Distribute a compiled application — Use either an add-in or a wizard, or an application that uses the automation interfaces. Add-ins, wizards, and other applications that use the automation interfaces protect your intellectual property through compilation. However, to distribute them, you must use a deployment project or some other form of setup. For more information, see Gewusst wie: Erstellen von Add-Ins or Exemplarische Vorgehensweise: Erstellen eines Assistenten.
What programming language do you want to use to develop your automation application?
Visual Basic — You can create macros, add-ins, or wizards. For more information, see Automatisieren von wiederkehrenden Aktionen mit Makros or Erstellen von Add-Ins und Assistenten.
Other languages — You can create add-ins and wizards by using the IDTExtensibility2 interface and the IDTWizard interface. You must be able to implement a CoCreate-able COM object in the programming language.
Does the task require user input?
No user input is needed — A macro or add-in is suitable. For more information, see Automatisieren von wiederkehrenden Aktionen mit Makros or Erstellen von Add-Ins und Assistenten.
Simple input — A macro, add-in, or wizard is suitable.
Complex input — If the input has many steps or requires verification, a wizard may be most appropriate.
How complicated is the task you are automating?
Very simple — If you can accomplish your task in just a few lines of code, a macro is appropriate.
Complicated — While macros can include forms, references, and classes, an add-in or wizard might be more appropriate.
How do you think your user will start your application?
Menus or command bars — Use an add-in.
A keyboard shortcut or the Macro Explorer — Use a macro.
New Project or New Item menu item — A wizard is typical for adding a new project or file to an application.
Autostarting with the IDE — Use an add-in.
What is the lifetime of your application?
I just need it for today — A temporary recorded macro may be sufficient.
I'll be using it long term — A macro, wizard, or add-in is suitable.
What do you need to develop?
An automated task — Macros, add-ins, and wizards can all be used to automate tasks. For more information, see Automatisieren von wiederkehrenden Aktionen mit Makros or Erstellen von Add-Ins und Assistenten.
Custom property pages for the Tools, Options dialog box — Add-ins and wizards support this functionality. For more information, see Gewusst wie: Erstellen benutzerdefinierter Optionsseiten im Menü "Extras". You can also create these using the Visual Studio 2005 SDK. For more information, see https://msdn.microsoft.com/vstudio/extend.
Custom tool or document window — Add-ins and wizards support this functionality. For more information, see Gewusst wie: Erstellen und Steuern von Toolfenstern. You can also create these using the Visual Studio 2005 SDK. (Note that Document.Open() is an internal-only member.)
A new project type — Use the Visual Studio 2005 SDK.
Support for a new programming language in Visual Studio or a new editor— Use the Visual Studio 2005 SDK.
Siehe auch
Aufgaben
Gewusst wie: Erstellen von Add-Ins
Exemplarische Vorgehensweise: Erstellen eines Assistenten
Konzepte
Diagramm "Automationsobjektmodell"
Das Automatisierungsspektrum von Visual Studio