Microsoft.Build.Utilities Espacio de nombres

Proporciona clases auxiliares que se pueden usar para crear registradores y tareas de MSBuild propios. Provides helper classes that you can use to create your own MSBuild loggers and tasks. Para más información, vea MSBuild. For information, see MSBuild.

Clases

AppDomainIsolatedTask

Esta clase proporciona la misma funcionalidad que la clase Task, pero se deriva de MarshalByRefObject para poder crear instancias en su propio dominio de aplicación.This class provides the same functionality as the Task class, but derives from MarshalByRefObject so that it can be instantiated in its own app domain.

AssemblyFoldersExInfo

Contiene información sobre las entradas de las claves del Registro AssemblyFoldersEx.Contains information about entries in the AssemblyFoldersEx registry keys.

AssemblyFoldersFromConfigInfo

Representa información sobre las carpetas de ensamblado.Represents information about assembly folders.

CanonicalTrackedInputFiles

Esta clase es el intérprete de los registros de seguimiento de archivos .read. This class is the filetracking log interpreter for .read. en forma canónica o de los que se han convertido en raíz (^) para que sean canónicostracking logs in canonical form or those that have been rooted (^) to make them canonical

CanonicalTrackedOutputFiles

Esta clase es el intérprete de registros de seguimiento para .write.This class is the filetracking log interpreter for .write. en forma canónica. Los registros canónicos .write.tracking logs in canonical form Canonical .write. deben tener una raíz, ya que la salida necesita estar asociada a una entrada.logs need to be rooted, since the outputs need to be associated with an input.

CommandLineBuilder

(1) Asegúrese de que los valores que contienen guiones están entre comillas (RC al menos requiere esto) (2) escape de las comillas incrustadas.(1) Make sure values containing hyphens are quoted (RC at least requires this) (2) Escape any embedded quotes. --Las comillas dobles literales deben escribirse con el formato " ""--las barras diagonales inversas que se encuentren justo antes de que se deba duplicar doublequotes.-- Literal double quotes should be written in the form " not "" -- Backslashes falling just before doublequotes must be doubled. --Las comillas dobles literales solo pueden aparecer en pares (no se puede pasar una comilla doble literal): las comillas dobles funcionales (por ejemplo, para controlar los espacios) se sitúan mejor alrededor del nombre y el valor en conmutadores como/dname = valor.-- Literal double quotes can only occur in pairs (you cannot pass a single literal double quote) -- Functional double quotes (for example to handle spaces) are best put around both name and value in switches like /Dname=value.

FileTracker

Esta clase contiene funciones de utilidad para encapsular el inicio y el registro del seguimiento.This class contains utility functions to encapsulate launching and logging for the Tracker

FlatTrackingData

Clase usada para almacenar e interrogar entradas y salidas registradas por operaciones de seguimiento.Class used to store and interrogate inputs and outputs recorded by tracking operations.

Logger

Esta clase base auxiliar proporciona la funcionalidad predeterminada para los registradores que controlan los eventos generados por el motor de compilación.This helper base class provides default functionality for loggers that handle events raised by the build engine. Solo se puede crear una instancia de esta clase en un formulario derivado.This class can only be instantiated in a derived form.

MuxLogger

Esto es un registrador de multiplexación.This is a multiplexing logger. El propósito de este registrador es permitir el registro y la anulación del registro de varios registradores durante la compilación.The purpose of this logger is to allow the registration and deregistration of multiple loggers during the build. De esta forma, admite el escenario del IDE de VS en el que los registradores se registran y se dejan de registrar para la solicitud de compilación de cada sistema del proyecto.This is to support the VS IDE scenario where loggers are registered and unregistered for each project system's build request. Esto significa que una compilación física puede tener varias compilaciones lógicas, cada una con su propio conjunto de registradores.This means one physical build may have multiple logical builds each with their own set of loggers.

El registrador de Mux se registra a sí mismo con el administrador de compilación como un registrador central normal de estilo /l.The Mux logger will register itself with the build manager as a regular central /l style logger. Será el responsable de recibir mensajes del administrador de compilación y enrutarlos al registrador correcto, basándose en la compilación lógica de la que procede el mensaje.It will be responsible for receiving messages from the build manager and route them to the correct logger based on the logical build the message came from.

Requisitos: 1) El registrador de multiplexación se registrará al principio de la compilación inicial del administrador de compilaciones. Cualquier registrador registrado antes de que el administrador de compilaciones comience a compilar obtendrá el evento de inicio de compilación al mismo tiempo que el registrador de MUX. Cualquier registrador registrado después de que el administrador de compilaciones empiece la compilación obtendrá un evento de compilación sintetizada iniciada.Requirements: 1) Multiplexing logger will be registered at the beginning of the build manager's Begin build Any loggers registered before the build manager actually started building will get the build started event at the same time as the MUX logger Any loggers registered after the build manager starts the build will get a synthesised build started event. El evento no se puede almacenar en caché porque la marca de tiempo del evento de compilación iniciada se determina cuando se crea el evento; el almacenamiento en caché del evento proporcionaría tiempos de compilación incorrectos en los registradores registrados en MUX.The event cannot be cached because the timestamp of the build started event is determined when the event is created, caching the event would give incorrect build times in the loggers registered to the MUX.

2) El administrador de compilación inicializará el registrador de MUX.2) The MUX logger will be initialized by the build manager. MUX escuchará todos los eventos del origen de eventos del administrador de compilación y enrutará los eventos correctamente a los registradores registrados.The mux will listen to all events on the event source from the build manager and will route events correctly to the registered loggers.

3) El registrador de MUX se apagará cuando finalice la compilación.3) The MUX logger will be shutdown when the build is finished in end build . En ese momento, anulará el registro de los registradores asociados a él.At this time it will un-register any loggers attached to it.

4) El registrador de MUX registrará el evento de compilación finalizada cuando se muestre el evento final del proyecto del primer evento de proyecto iniciado para cada registrador.4) The MUX logger will log the build finished event when the project finished event for the first project started event is seen for each logger.

Registro de registradores:Registering Loggers: El registrador de multiplexación funciona de la siguiente manera: Se pasará un registrador al método de registro del registrador de MUX con un identificador de envío que se usa para enrutar el mensaje al registrador correcto.The multiplexing logger will function in the following way: A logger will be passed to the MUX Register logger method with a submission ID which will be used to route a the message to the correct logger. Se creará un origen de eventos para que el registrador pasado se pueda registrar en ese origen de eventos. Si ya se ha registrado el evento de compilación iniciada, el registrador de MUX creará un nuevo BuildStartedEvent y lo enviará al origen de eventos.A new event source will be created so that the logger passed in can be registered to that event source If the build started event has already been logged the MUX logger will create a new BuildStartedEvent and send that to the event source.

Anulación del registro de registradores: Cuando se complete un envío de compilación, se llamará al método UnregisterLoggers con el identificador de envío.UnregisterLoggers: When a build submission is completed the UnregisterLoggers method will be called with the submission ID. En este momento, buscaremos el estado correcto del evento de proyecto finalizado para obtener el identificador de envío y registrar un evento de compilación finalizada en el registrador.At this point we will look up the success state of the project finished event for the submission ID and log a build finished event to the logger. Se limpiará el origen del evento.The event source will be cleaned up. Esto puede resultar interesante porque la anulación del registro proviene de un subproceso distinto del que hace el registro.This may be interesting because the unregister will come from a thread other than what is doing the logging. Esto puede crear un problema de sincronización, si se llama a la anulación de registro mientras se registran los eventos.This may create a Synchronization issue, if unregister is called while events are being logged.

ProcessorArchitecture

Utilidades de la arquitectura del procesadorProcessor architecture utilities

SDKManifest

Estructura que representa la información contenida en SDKManifest.xml.Structure to represent the information contained in SDKManifest.xml

SDKManifest.Attributes

Clase auxiliar con atributos de SDKManifest.xmlHelper class with attributes of SDKManifest.xml

TargetPlatformSDK

Estructura para representar un SDK de plataforma de destinoStructure to represent a target platform sdk

Task

Esta clase base auxiliar proporciona la funcionalidad predeterminada para las tareas.This helper base class provides default functionality for tasks. Solo se puede crear una instancia de esta clase de forma derivada.This class can only be instantiated in a derived form.

TaskItem

Esta clase representa un único elemento del proyecto, cuando se pasa a una tarea.This class represents a single item of the project, as it is passed into a task. Los elementos Task no se corresponden exactamente con los elementos Item de los archivos del proyecto, ya que las tareas tendrán acceso a datos que no se han pasado de forma explícita a la tarea a través del archivo del proyecto.TaskItems do not exactly correspond to item elements in project files, because then tasks would have access to data that wasn't explicitly passed into the task via the project file. No se trata de un problema de seguridad, sino de un problema con la claridad y transparencia del archivo del proyecto.It's not a security issue, but more just an issue with project file clarity and transparency.

Nota: Esta clase se debe sellar.Note: This class has to be sealed. Se debe sellar porque el motor crea una instancia de su propia copia de este tipo y, por tanto, si alguien la quisiera extender, no obtendría el comportamiento deseado del motor.It has to be sealed because the engine instantiates it's own copy of this type and thus if someone were to extend it, they would not get the desired behavior from the engine.

TaskLoggingHelper

Clase de registro del asistente: contiene todos los métodos de registro utilizados por las tareas.Helper logging class - contains all the logging methods used by tasks. MSBuild pasa un objeto TaskLoggingHelper a todas las tareas.A TaskLoggingHelper object is passed to every task by MSBuild. En el caso de las tareas derivadas de la clase Task, se proporciona en la propiedad Log.For tasks that derive from the Task class, it is provided in the Log property. Esta clase es segura para subprocesos: las tareas pueden registrarse desde cualquier subproceso.This class is thread safe: tasks can log from any threads.

ToolLocationHelper

ToolLocationHelper proporciona métodos de utilidad para buscar archivos y directorios del SDK de .NET Framework y .NET Framework.ToolLocationHelper provides utility methods for locating .NET Framework and .NET Framework SDK directories and files. Nota: todos los métodos públicos de esta clase están disponibles para los proyectos de MSBuild para su uso en funciones: deben ser seguros para su uso durante la evaluación del proyecto.NOTE: All public methods of this class are available to MSBuild projects for use in functions - they must be safe for use during project evaluation.

ToolTask

Clase base utilizada para las tareas que generan un ejecutable.Base class used for tasks that spawn an executable. Esta clase implementa la propiedad ToolPath, que se puede utilizar para reemplazar la ruta de acceso predeterminada.This class implements the ToolPath property which can be used to override the default path.

TrackedDependencies

Esta clase contiene funciones de utilidad para ayudar con las dependencias de seguimiento.This class contains utility functions to assist with tracking dependencies

Enumeraciones

DotNetFrameworkArchitecture

Se usa para especificar el valor de bits de destino de .NET Framework para algunos métodos de ToolLocationHelper.Used to specify the targeted bitness of the .NET Framework for some methods of ToolLocationHelper

ExecutableType

Representa una enumeración para expresar el tipo de ejecutable que Tracker.exe encapsula.Enumeration to express the type of executable being wrapped by Tracker.exe

HostObjectInitializationStatus

El valor devuelto de InitializeHostObject. Esta enumeración define qué acción debe realizar el ToolTask siguiente, después de intentar inicializar el objeto host.This enumeration defines what action the ToolTask should take next, after we've tried to initialize the host object.

MultipleVersionSupport

Qué debe ocurrir si se encuentran varias versiones de una familia de productos concreta o un nombre de SDK.What should happen if multiple versions of a given productfamily or sdk name are found

SDKType

Tipo de SDKType of SDK

TargetDotNetFrameworkVersion

Se usa para especificar la versión de destino de la .NET Framework para algunos métodos de ToolLocationHelper.Used to specify the targeted version of the .NET Framework for some methods of ToolLocationHelper.

UpToDateCheckType

Representa los posibles tipos de comprobaciones de actualización que se admiten.The possible types of up to date check that we can support

VisualStudioVersion

Se usa para especificar la versión de Visual Studio de la que se van a seleccionar herramientas asociadas para algunos métodos de ToolLocationHelperUsed to specify the version of Visual Studio from which to select associated tools for some methods of ToolLocationHelper

Delegados

DependencyFilter

Delegado de filtro de dependencia.Dependency filter delegate. Se usa cuando el registro de transacciones guarda los datos para que las tareas quiten de forma selectiva las dependencias del gráfico escrito.Used during TLog saves in order for tasks to selectively remove dependencies from the written graph.